If a user has a certificate in a deleted course, an issue with how the
course is loaded from the cache can cause an exception that breaks our
code. This adds a wrapper to fail gracefully and log the exception for
future tracking / investigation.
* fixed problem with creating some CourseItem with some parent:
we must get the updated parent item before using that parent item
* replaced parent_location with parent argument in ItemFactory due to
error children/parent relation for split modulestore. In all tests with
split modulestore parent argument used
It is possible to have an entitlement with no available course runs. In
this case, the entitlement is filtered out by the view logic but the
residual, bad pesudo-session mapping can cause breaks if we don't handle
for this case.
Goal mail jobs can easily take 4 hours to run and sometimes
fail. Restricting the allowable mail window to three morning hours
only means many goal mails will be missed.
Extend the window to the whole day so that mails are actually sent. It
will still prefer to send mail in the morning because that is the
first time it could encounter the goal and it will mark it as sent
afterwards.
We run atomic-requests in almost all environments (for the lms and cms
anyway) EXCEPT devstack_with_worker. Using a different setting means
that even if you think you are testing with a worker like real deploys
use, you are not actually testing with the data a worker would
actually see.
The removed code also claims that if you run with atomic transactions
and a worker you will deadlock the system. If so edx.org would be
deadlocked at all times and yet is not. The old code was vintage 2015
and its assumptions probably haven't been examined since then.
https://github.com/openedx/edx-platform/pull/31261 fixed celery
cache behavior when not running a worker and made sure production
would keep the old cache behavior, but missed these secret alternate
settings files, bring them up to date.
Also fixes the cms file to have the actual broker URL.
* refactor: make _credit_status function public
This allows for reuse in the new learner home
* feat: add credit to learner home serializers
* feat: get credit statuses for learner home
For edx.org, this will be set to <https://www.edx.org/policy/security>.
The only theme that I'm aware of as supporting this is `edx.org-next` but
other deployments might use this `get_footer` call as well.
This test stopped throwing the `TransactionManagementError` once we added the
`site_configuration.get_value()` call to the language preferences middleware.