| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
Thanks for the pull request, @bradenmacdonald! This repository is currently maintained by @openedx/wg-maintenance-openedx-platform. Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
To help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
If one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. DetailsWhere can I find more information? If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources:
Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
Sorry, something went wrong.
|
Thanks for the pull request, @bradenmacdonald! This repository is currently maintained by @openedx/wg-maintenance-openedx-platform. Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
To help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
If one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. DetailsWhere can I find more information? If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources:
Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
Sorry, something went wrong.
There was a problem hiding this comment.
Good catch @bradenmacdonald!
LGTM 👍
Sorry, something went wrong.
|
Definitely needs a backport, though I imagine that can wait until you're done with your perf fixes on master. Thanks @bradenmacdonald! |
Sorry, something went wrong.
* fix: ValidationError when trying to add components to a collection (#38579) * fix: don't sleep for a half second every time we update meilisearch (#38576) * fix: various issues with modulestore migrator and content library events (#38508) * fix: update modulestore migrator to not publish in draft context * fix: use correct date/user info for modulestore migrator * fix: allow our event handling tasks to call subtasks * fix: better handling of deletion/un-deletion using openedx-core fixes * fix: exception raised when mass-deleting all items in a content library (ContentLibraryBlockNotFound was being raised and not caught, propagating up to celery task error) * fix: don't update the 'collections' field of deleted entities when modifying a collection * fix: keep collection "# of entities" count updated when entities deleted * refactor: use LIBRARY_COLLECTION_UPDATED event to update collections on entity (un)delete * fix: unable to delete "ghost" component in library if it exists but has no draft * fix: error when deleting lib component used in a container (#38607) * fix: bump openedx-core to v1.0.2 --------- Co-authored-by: Claude <noreply@anthropic.com>
| Back | FazBrowse Home | New Git URL |
Description
Various actions in the platform like changing a course's schedule or importing a course from modulestore into a library seem much slower than they should be at the moment, due to the fact that devstack runs all tasks synchronously (not in separate celery workers) and the tasks that update Meilisearch specifically are slow.
When investigating various slowness, I discovered that every update to Meilisearch was taking ~0.5s almost exactly, and then I found the culprit:
openedx-platform/openedx/core/djangoapps/content/search/api.py
Lines 156 to 159 in 6efb92c
It turns out that the Meilisearch task is never immediately complete, so this always results in a wait of 500ms every time we call Meilisearch 🤦🏻♂️. But, Meilisearch updates are actually pretty fast and usually done in 10-20ms, so we simply need to reduce the sleep delay and we see a huge boost in performance.
Note: it would obviously be better to use asyncio.sleep() here, but we aren't set up for that in openedx-platform.
Supporting information
Found in the context of openedx/openedx-core#584
Testing instructions
The easiest way to test this is:
Repeat with and without the fix.
Why this test: updating a course's start date results in 19 XBLOCK_UPDATED events for the meta blocks in each course: type@course+block@course, type@about+block@subtitle, type@about+block@duration, type@about+block@description, type@about+block@short_description,type@about+block@overview, type@about+block@entrance_exam_enabled, type@about+block@entrance_exam_id, type@about+block@entrance_exam_minimum_score_pct, type@about+block@about_sidebar_html. For some reason, all of these but the course block actually have two XBLOCK_UPDATED events for each block, hence the total of 19. Note: some of these shouldn't even be XBlocks, and I'm not sure why we're getting two XBLOCK_UPDATED events for each one, but I want to keep this PR focused on the main source of delay.
Deadline
ASAP, need to backport this to Verawood.
Other information
Private ref BB-10823