Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Problem Statement

In current state changes stored in lms service are not reactive to any changes in the course content. This structure creates the issue when some of the contents changes and Sunbird uses locally stored copy of the content. For example, Once the user has completed the full course, if any unit is added or removed from the course, the changes are not dynamically reflected. There are use cases to enable this.

SB-12089 - Getting issue details... STATUS

Solution Approach

A complete solution can be divided into below points

  1. remove the course data stored into db (ex. leafNodeCounts, courseName, tocUrl etc.)
  2. Restructure the DB tables and corresponding ES
  3. migrate the old data according to new structure
  4. Code changes in accordance with the restructured data model


Current DB structure related to course batch progress

course_batch  (ES → cbatch)

columntypedescriptionusedindexedcan be removed
idtextbatchid
PK
countdecrementdatetext



countdecrementstatusboolean



countincrementdatetext



countincrementstatusboolean



coursecreatortext

Y
courseidtext

Y
createdbytext



createddatetext



createdforlist<text>



descriptiontext



enddatetext



enrollmenttypetext

Y
hashtagidtext



mentorslist<text>



nametext



participantmap<text, boolean>



startdatetext



statusint

Y
updateddatetext




content_consumption

columntypedescriptionusedindexedcan be removed
idtexthash of userid, batchid and courseid and contentid
PK
batchidtext



completedcountinthow many time the content was completed


contentidtext

Y
contentversiontext



courseidtext

Y
datetimetimestamp



gradetext
N
Y

lastaccesstime

text



lastcompletedtimetext



lastupdatedtimetext



progressintprogress pushed


resulttext
N
Y
scoretext
N
Y
statusint1 for progress 2 for completed
Y
useridtext

Y
viewcountinthow many times user viewed the content


  • No labels