Commit f1da4efb by Tim Babych

Merge pull request #5152 from edx/tim/less-has-changes

Calculate has_changes only Section/Subsection only on Outline page
parents 27c29d0d 8b37dd7f
...@@ -595,9 +595,6 @@ def _get_module_info(xblock, rewrite_static_links=True): ...@@ -595,9 +595,6 @@ def _get_module_info(xblock, rewrite_static_links=True):
course_id=xblock.location.course_key course_id=xblock.location.course_key
) )
# Pre-cache has changes for the entire course because we'll need it for the ancestor info
modulestore().has_changes(modulestore().get_course(xblock.location.course_key, depth=None))
# Note that children aren't being returned until we have a use case. # Note that children aren't being returned until we have a use case.
return create_xblock_info(xblock, data=data, metadata=own_metadata(xblock), include_ancestor_info=True) return create_xblock_info(xblock, data=data, metadata=own_metadata(xblock), include_ancestor_info=True)
...@@ -638,7 +635,8 @@ def create_xblock_info(xblock, data=None, metadata=None, include_ancestor_info=F ...@@ -638,7 +635,8 @@ def create_xblock_info(xblock, data=None, metadata=None, include_ancestor_info=F
return None return None
is_xblock_unit = is_unit(xblock, parent_xblock) is_xblock_unit = is_unit(xblock, parent_xblock)
has_changes = modulestore().has_changes(xblock) # this should not be calculated for Sections and Subsections on Unit page
has_changes = modulestore().has_changes(xblock) if (is_xblock_unit or course_outline) else None
if graders is None: if graders is None:
graders = CourseGradingModel.fetch(xblock.location.course_key).graders graders = CourseGradingModel.fetch(xblock.location.course_key).graders
......
...@@ -100,9 +100,9 @@ class GetItemTest(ItemTest): ...@@ -100,9 +100,9 @@ class GetItemTest(ItemTest):
return html, resources return html, resources
@ddt.data( @ddt.data(
(1, 21, 23, 35, 37), (1, 14, 16, 30, 30),
(2, 22, 24, 38, 39), (2, 15, 17, 39, 32),
(3, 23, 25, 41, 41), (3, 16, 18, 52, 34),
) )
@ddt.unpack @ddt.unpack
def test_get_query_count(self, branching_factor, chapter_queries, section_queries, unit_queries, problem_queries): def test_get_query_count(self, branching_factor, chapter_queries, section_queries, unit_queries, problem_queries):
......
...@@ -597,7 +597,6 @@ class DraftModuleStore(MongoModuleStore): ...@@ -597,7 +597,6 @@ class DraftModuleStore(MongoModuleStore):
bulk_record.dirty = True bulk_record.dirty = True
self.collection.remove({'_id': {'$in': to_be_deleted}}, safe=self.collection.safe) self.collection.remove({'_id': {'$in': to_be_deleted}}, safe=self.collection.safe)
@MongoModuleStore.memoize_request_cache
def has_changes(self, xblock): def has_changes(self, xblock):
""" """
Check if the subtree rooted at xblock has any drafts and thus may possibly have changes Check if the subtree rooted at xblock has any drafts and thus may possibly have changes
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment