Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Content clone needs profiling #12

Open
2 tasks
taylortom opened this issue Dec 9, 2020 · 2 comments
Open
2 tasks

Content clone needs profiling #12

taylortom opened this issue Dec 9, 2020 · 2 comments
Assignees
Labels
enhancement New or additional functionality good first issue Good for newcomers high priority Should be prioritised over all other issues

Comments

@taylortom
Copy link
Contributor

taylortom commented Dec 9, 2020

This concerns ContentModule#clone

We need to look into speeding up the cloning process (the function needs profiling to identify any issues). Currently the process works as follows:

  • Clones the root content object
  • Identifies any children of the root, and recursively runs clone on those

Need to look into:

  • Number of DB calls
  • How the recursion works

In any case, the process will require individual insert calls for each cloned content item (to be able to map from the old _id to the new _id)


@taylortom taylortom added the enhancement New or additional functionality label Dec 9, 2020
@taylortom taylortom self-assigned this Feb 15, 2023
@taylortom taylortom transferred this issue from adapt-security/adapt-authoring Mar 14, 2023
@taylortom taylortom added the good first issue Good for newcomers label Mar 23, 2023
@taylortom taylortom changed the title Content clone needs some serious streamlining Content clone needs profiling Mar 23, 2023
@taylortom taylortom moved this from Assigned to Backlog in adapt-authoring: The TODO Board Mar 23, 2023
@taylortom taylortom removed their assignment Mar 23, 2023
@taylortom
Copy link
Contributor Author

taylortom commented Oct 14, 2024

Related to the work you've been doing @chris-steele. Please update this ticket with any relevant comments (and links to other tickets).

We can close this one once we're happy we've got the suitable issues out of the investigation.

@taylortom taylortom added the high priority Should be prioritised over all other issues label Oct 14, 2024
@chris-steele
Copy link
Contributor

chris-steele commented Oct 15, 2024

Some CPU profiling reveals a lot of time spent in the ajv package (schema compilation) during clone ops. #36 would be of benefit here as well as #39

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New or additional functionality good first issue Good for newcomers high priority Should be prioritised over all other issues
Projects
Development

No branches or pull requests

2 participants