Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-23533

Update HBM files to use Batch tag for Sets

    XMLWordPrintable

    Details

      Description

      Both https://jira.sakaiproject.org/browse/SAM-2102 and https://jira.sakaiproject.org/browse/SAK-23531 have shown that adding a simple "batch" attribute to set's in a hibernate xml file greatly improves performance without modifying code/logic

      Results from SAM-2102:
      9886 queries to 1539

      Results from SAK-23531:
      836->170 queries
      16,000 ms to 1,500 ms (higher times are attributed to YourKit, but the important part is speedup)

      Here is a list of all hbm.xml files that have a <set> tag:

      find . -name *.hbm.xml | xargs grep -l "<set" | grep -v "\/target\/" | sort | uniq -u

      ./assignment/assignment-api/api/src/java/org/sakaiproject/assignment/api/model/AssignmentSupplementItem.hbm.xml
      ./chat/chat-api/api/src/java/org/sakaiproject/chat2/model/impl/ChatImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/CanonicalCourseCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/CourseOfferingCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/CourseSetCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/CrossListingCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/EnrollmentSetCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/MembershipContainerCmImpl.hbm.xml
      ./edu-services/cm-service/cm-impl/hibernate-impl/hibernate/src/hibernate/org/sakaiproject/coursemanagement/impl/SectionCmImpl.hbm.xml
      ./edu-services/gradebook-service/hibernate/src/hibernate/org/sakaiproject/tool/gradebook/Gradebook.hbm.xml
      ./help/help-component-shared/src/java/org/sakaiproject/component/app/help/model/CategoryBean.hbm.xml
      ./motd2/api/src/java/org/sakaiproject/motd2/dao/hbm/Motd2Message.hbm.xml
      ./msgcntr/messageforums-hbm/src/java/org/sakaiproject/component/app/messageforums/dao/hibernate/Area.hbm.xml
      ./msgcntr/messageforums-hbm/src/java/org/sakaiproject/component/app/messageforums/dao/hibernate/MessageImpl.hbm.xml
      ./msgcntr/messageforums-hbm/src/java/org/sakaiproject/component/app/messageforums/dao/hibernate/OpenForum.hbm.xml
      ./msgcntr/messageforums-hbm/src/java/org/sakaiproject/component/app/messageforums/dao/hibernate/PrivateForum.hbm.xml
      ./msgcntr/messageforums-hbm/src/java/org/sakaiproject/component/app/messageforums/dao/hibernate/Topic.hbm.xml
      ./osp/matrix/api/src/java/org/theospi/portfolio/matrix/model/impl/MatrixImpl.hbm.xml
      ./osp/matrix/api/src/java/org/theospi/portfolio/workflow/model/Workflow.hbm.xml
      ./osp/presentation/api/src/java/org/theospi/portfolio/presentation/model/impl/PresentationImpl.hbm.xml
      ./postem/postem-hbm/src/java/org/sakaiproject/component/app/postem/data/GradebookImpl.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/AssessmentBase.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/FavoriteColChoices.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/ItemData.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/PublishedAssessment.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/PublishedItemData.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/grading/GradingData.hbm.xml
      ./samigo/samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/questionpool/QuestionPoolData.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/assessment/AssessmentBase.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/assessment/ItemData.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/assessment/PublishedAssessment.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/assessment/PublishedItemData.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/grading/GradingData.hbm.xml
      ./samigo/tests/src/hibernate/org/sakaiproject/tool/assessment/data/dao/questionpool/QuestionPoolData.hbm.xml
      ./syllabus/syllabus-hbm/src/java/org/sakaiproject/component/app/syllabus/SyllabusDataImpl.hbm.xml
      ./syllabus/syllabus-hbm/src/java/org/sakaiproject/component/app/syllabus/SyllabusItemImpl.hbm.xml

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  baholladay Bryan Holladay
                  Reporter:
                  baholladay Bryan Holladay
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Source Code