-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
fix: delay update_outline_from_modulestore_task after course publish. #33878
base: master
Are you sure you want to change the base?
fix: delay update_outline_from_modulestore_task after course publish. #33878
Conversation
Thanks for the pull request, @Jacatove! What's next?Please work through the following steps to get your changes 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.
🔘 Provide contextTo 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:
🔘 Get a green buildIf one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. 🔘 Let us know that your PR is ready for review:Who will review my changes?This repository is currently maintained by Where 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:
When can I expect my changes to be merged?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. |
@mphilbrick211 @Jacatove I can help review this PR as CC. |
Thank you, @navinkarkera - though it looks like we're still missing a CLA form for @Jacatove. @Jacatove could you please confirm if you previously submitted a CLA form? |
@mphilbrick211 Yes, I have completed that form. |
Hi @Jacatove! I don't think we have it on file any longer. Do you remember when you first submitted it? It might help to re-submit if you're able. |
@mphilbrick211 I resubmitted the form some days ago. |
I'll leave this here in case it helps in some way:
Specifically, this part where Dave says:
|
Hi @Jacatove! I checked on this for you. Our legal staff was out of the office, but she returns tomorrow, and your CLA should be processed by the end of the week. Thank you for your patience! |
Hi @Jacatove! I see that your CLA form has gone through, and the CLA check should now turn green. Do you plan to pursue this PR? |
@Jacatove The code changes look good based on other similar implemenations as I could not really test it due CCX tables being missing in my local setup. @mariajgrimaldi What do you think? Do we need to involve someone like Dave before merging this? |
Friendly ping on this, @mariajgrimaldi! |
Thanks for the patience! @navinkarkera: As Dave mentioned in my previous PR, we need to ensure we're not introducing race conditions with this change. Here's the comment where Dave suggested taking a different approach: #34020 (comment). I think we should first try this other approach before committing to this change: If we can make sure the change is committed and visible before the celery queuing task executes, that would be ideal I'll tag @ormsbee for visibility. |
@mariajgrimaldi Thanks! From what I understand, we need to do the same with the views that are triggering the publish signal i.e. set @Jacatove Can you kindly try this out and post your findings here? |
Hi @navinkarkera I'm part of the team @Jacatove belonged to, I will take care of this PR now. I will try this
And I'll let you know the details. Thanks!! |
Hi @alexjmpb just checking to see if this is still in progress? |
Description
Once a course is created in studio the
course_published
signal is emitted, therefore some receivers trigger some async tasks which end up failing because the modulestore can not find the latest data, which resulted in errors related to not being able to find the course, Check this discussion for more information and how to replicate those errors. However, there is another issue when working with CCXs, this same error raises from time to time when one creates a CCX, therefore the CCX's outline is not generated and the course content is not showed. Currently it requires that someone manually regenerates the outline athttp://localhost:18000/admin/contentstore/courseoutlineregenerate/
Changes
Supporting information
The change proposed in this PR is based on: #31307
How to replicate the issue?
update_outline_from_modulestore_task
should have failed when course was published.update_outline_from_modulestore_task
will fail, I understand that this is not an issue as the course is empty and adding content would just recreate the outline as well as other tasks.Testing instructions