diff --git a/cms/djangoapps/contentstore/views/item.py b/cms/djangoapps/contentstore/views/item.py index d87fc224e4..e7aa4d55cc 100644 --- a/cms/djangoapps/contentstore/views/item.py +++ b/cms/djangoapps/contentstore/views/item.py @@ -595,9 +595,6 @@ def _get_module_info(xblock, rewrite_static_links=True): 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. 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 return None 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: graders = CourseGradingModel.fetch(xblock.location.course_key).graders diff --git a/cms/djangoapps/contentstore/views/tests/test_item.py b/cms/djangoapps/contentstore/views/tests/test_item.py index a7fac49877..53bb73fe90 100644 --- a/cms/djangoapps/contentstore/views/tests/test_item.py +++ b/cms/djangoapps/contentstore/views/tests/test_item.py @@ -100,9 +100,9 @@ class GetItemTest(ItemTest): return html, resources @ddt.data( - (1, 21, 23, 35, 37), - (2, 22, 24, 38, 39), - (3, 23, 25, 41, 41), + (1, 14, 16, 30, 30), + (2, 15, 17, 39, 32), + (3, 16, 18, 52, 34), ) @ddt.unpack def test_get_query_count(self, branching_factor, chapter_queries, section_queries, unit_queries, problem_queries): diff --git a/common/lib/xmodule/xmodule/modulestore/mongo/draft.py b/common/lib/xmodule/xmodule/modulestore/mongo/draft.py index f72e36625e..6b0ae7cebf 100644 --- a/common/lib/xmodule/xmodule/modulestore/mongo/draft.py +++ b/common/lib/xmodule/xmodule/modulestore/mongo/draft.py @@ -597,7 +597,6 @@ class DraftModuleStore(MongoModuleStore): bulk_record.dirty = True self.collection.remove({'_id': {'$in': to_be_deleted}}, safe=self.collection.safe) - @MongoModuleStore.memoize_request_cache def has_changes(self, xblock): """ Check if the subtree rooted at xblock has any drafts and thus may possibly have changes