CUCWD / xblock-keyterms

XBlock for Key Terms
GNU Affero General Public License v3.0
0 stars 0 forks source link

Bug: When inputting in terms for this block the list of `Available Key Terms` to use takes forever to load. #14

Open ztraboo opened 9 months ago

ztraboo commented 9 months ago

Issue 1

When inserting terms into this course component, I noticed that the list of Available Key Terms is blank and when it loads it takes a minute or more to load.

image

Terms were previously entered in on the Studio: Key Term Dashboard page as shown below.

image

Temporary Work Around

After further review, it appears that when you have a textbook added to the course using CMS > Course > Content > Textbooks that this causes the issue of the Available Key Terms list not showing terms in the course component. Remove the textbook helps with the key term list loading faster. Please make sure to remove all textbook(s) while adding key terms to the course, then add the textbook(s) back into the course and perform a Content > Outline > Reindex afterwards or re-publish one page content with the key term component used to issue a re-index for the key terms against the textbook(s).

Example of Textbook added to the course. image

Development

Use this course https://cms.educateworkforce.com/course/course-v1:CUCWD+FAA-ACS-AM-IIG-ECS+DEVELOPMENT in your tutor dev environment and the key terms Excel document below to test.

Environmental Control Systems Key Terms.xlsx

Steps to Reproduce Issue

Make sure that you have key terms api, xblock, and edx-platform changes necessary to run key terms locally before proceeding further.

  1. Add a textbook to the course at CMS > Course > Content > Textbooks. For this course you can add the following.
    - Textbook Name: Aircraft System Maintenance
    - Chapter Name: Cabin Environmental Systems
    - Chapter Asset: /static/Avotek_Chapter_2_Environmental_Control_Systems_EW.pdf
  2. Import all the key terms using the Excel file above at CMS > Course > Content > Key Terms Dashboard.
  3. Make sure that the CMS > Course > Settings > Advanced Settings > Advanced Module List has value [ "keyterms"] to be able to use the Key Terms course component.
  4. Add a new Key Terms course component to any vertical (unit) page and try selecting terms. Check to see how long it takes to be able to select any terms in the Available Key Terms list. Removing the textbook allows the list to show up faster.

Potential Solution Verify that the loading of XBlock or the Key Terms course component Advanced Module List doesn't trigger a reindex of key terms against the textbook. We typically only want to do this on vertical (page) Publish or CMS > Course > Outline > Reindex calls.


Issue 2

Another related issue is when you come back to edit the Vertical (Unit) page with an existing course component for Key Terms by adding another component (e.g. HTML) and click Publish the CMS > Course > Key Terms Dashboard goes blank.

Temporary Work Around

Enter a new temporary key term in the CMS > Course > Key Terms Dashboard and wait to refresh the page. Delete the temporary key term.

Development

See if fixing the above Issue 1 will help resolve this additional issue. I noticed the keyterms and cms logs were re-indexing the key terms whenever I loaded the Vertical (Unit) page where the Key Terms course component already had terms. If we remove this index and perform this reindexing on Publish this may resolve the issue.