perf: update edx-when to 2.5.1 for performance fix

This addresses an issue where get_schedule_for_user was making an
excessive number of calls to the database.
This commit is contained in:
David Ormsbee
2025-01-21 11:13:11 -05:00
parent 14ec4b9ef6
commit c762c1f695
7 changed files with 15 additions and 15 deletions

View File

@@ -341,7 +341,7 @@ class IndexQueryTestCase(ModuleStoreTestCase):
self.client.login(username=self.user.username, password=self.user_password)
CourseEnrollment.enroll(self.user, course.id)
with self.assertNumQueries(177, table_ignorelist=QUERY_COUNT_TABLE_IGNORELIST):
with self.assertNumQueries(154, table_ignorelist=QUERY_COUNT_TABLE_IGNORELIST):
with check_mongo_calls(3):
url = reverse(
'courseware_section',

View File

@@ -68,35 +68,35 @@ class TestCourseGradeFactory(GradeTestBase):
self.sequence2.display_name
]
with self.assertNumQueries(5), mock_get_score(1, 2):
with self.assertNumQueries(3), mock_get_score(1, 2):
_assert_read(expected_pass=False, expected_percent=0) # start off with grade of 0
num_queries = 43
num_queries = 42
with self.assertNumQueries(num_queries), mock_get_score(1, 2):
grade_factory.update(self.request.user, self.course, force_update_subsections=True)
with self.assertNumQueries(4):
with self.assertNumQueries(3):
_assert_read(expected_pass=True, expected_percent=0.5) # updated to grade of .5
num_queries = 7
num_queries = 6
with self.assertNumQueries(num_queries), mock_get_score(1, 4):
grade_factory.update(self.request.user, self.course, force_update_subsections=False)
with self.assertNumQueries(4):
with self.assertNumQueries(3):
_assert_read(expected_pass=True, expected_percent=0.5) # NOT updated to grade of .25
num_queries = 19
num_queries = 18
with self.assertNumQueries(num_queries), mock_get_score(2, 2):
grade_factory.update(self.request.user, self.course, force_update_subsections=True)
with self.assertNumQueries(4):
with self.assertNumQueries(3):
_assert_read(expected_pass=True, expected_percent=1.0) # updated to grade of 1.0
num_queries = 29
num_queries = 28
with self.assertNumQueries(num_queries), mock_get_score(0, 0): # the subsection now is worth zero
grade_factory.update(self.request.user, self.course, force_update_subsections=True)
with self.assertNumQueries(4):
with self.assertNumQueries(3):
_assert_read(expected_pass=False, expected_percent=0.0) # updated to grade of 0.0
@ddt.data((True, False))

View File

@@ -274,7 +274,7 @@ class TestCourseNextSectionUpdateResolver(SchedulesResolverTestMixin, ModuleStor
def test_schedule_context(self):
resolver = self.create_resolver()
# using this to make sure the select_related stays intact
with self.assertNumQueries(30):
with self.assertNumQueries(26):
sc = resolver.get_schedules()
schedules = list(sc)
apple_logo_url = 'http://email-media.s3.amazonaws.com/edX/2021/store_apple_229x78.jpg'

View File

@@ -540,7 +540,7 @@ edx-toggles==5.2.0
# ora2
edx-token-utils==0.2.1
# via -r requirements/edx/kernel.in
edx-when==2.5.0
edx-when==2.5.1
# via
# -r requirements/edx/kernel.in
# edx-proctoring

View File

@@ -849,7 +849,7 @@ edx-token-utils==0.2.1
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
edx-when==2.5.0
edx-when==2.5.1
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt

View File

@@ -631,7 +631,7 @@ edx-toggles==5.2.0
# ora2
edx-token-utils==0.2.1
# via -r requirements/edx/base.txt
edx-when==2.5.0
edx-when==2.5.1
# via
# -r requirements/edx/base.txt
# edx-proctoring

View File

@@ -654,7 +654,7 @@ edx-toggles==5.2.0
# ora2
edx-token-utils==0.2.1
# via -r requirements/edx/base.txt
edx-when==2.5.0
edx-when==2.5.1
# via
# -r requirements/edx/base.txt
# edx-proctoring