-- I personally think they should not. Also, they should be removed after their purpose has been served. I have created a JIRA ticket for the same.(PLAT-819)
Anyways, here is a simple way to get rid of it-
1. In file edx-platform/lms/djangoapps/courseware/models.py
a) Remove import
from openedx.core.djangoapps.call_stack_manager import CallStackManager, CallStackMixin
b) In StudentModule, replace
objects = ChunkingCallStackManager()
with
objects = ChunkingManager()
c) Also, Remove CallStackMixin.
In short, change
class StudentModule(CallStackMixin, models.Model):
to
class StudentModule(models.Model):
d) In StudentModuleHistory change
class StudentModuleHistory(CallStackMixin, models.Model):
to
class StudentModuleHistory(models.Model):
Also, remove
objects = CallStackManager()
2. In file edx-platform/lms/djangoapps/courseware/model_data.py
a) Remove following import
from openedx.core.djangoapps.call_stack_manager import donottrack
b) Remove use of @donotrack (currently at Line no 996)
@donottrack(StudentModule)
I hope that will solve the problem.