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

CacheRefresher no longer working for any cases (though it could work for MRC)

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: CLOSED
    • Priority: Blocker
    • Resolution: Won't Fix
    • Affects Version/s: 2.9.x, 10.0
    • Fix Version/s: None
    • Component/s: Kernel
    • Labels:
    • 10 status:
      Resolved
    • CLE Team Issue:
      Yes
    • Previous Issue Keys:
      KNL-1226

      Description

      See KNL-1162 for a definition of CacheRefresher
      The only place where the CacheRefresher is called when an entry is missing on get() is in the CacheEntry class. This is used by the MultiRefCache (MRC) in GenericMultiRefCacheImpl but NOT by the MemCache impl.

      Hilariously, the MRCs cannot even be created with a CacheRefresher specified (as shown by the API).
      MultiRefCache newMultiRefCache(String cacheName);
      GenericMultiRefCache newGenericMultiRefCache(String cacheName);

      Therefore, this functionality does not work in any circumstance which is possible through the Kernel API (and nothing appears to use it directly in kernel except for tests).

      This is implemented in at least these:
      BaseAssignmentService.java
      BaseCalendarService.java
      BaseContentService.java
      BaseNotificationService.java
      BaseMessageService.java

      And referenced (but not implemented) in these (mostly LB):
      NotificationCache.java
      Assignment2Export.java
      MnemeEntity.java
      AssignmentExport.java
      ForumsExport.java
      JForumExport.java
      SamigoExport.java
      AssignmentEntity.java
      BltiEntity.java
      ForumEntity.java
      SamigoEntity.java
      LessonsGradeInfoProvider.java
      providers/jldap/src/test/edu/amc/sakai/user/TestMemoryService.java
      sitestats/test/mocks/FakeMemoryService.java

      I'm not sure how long this has been the case but it definitely affects 2.9 and trunk.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  k1team KERNEL TEAM (Inactive)
                  Reporter:
                  aaronz Aaron Zeckoski (Inactive)
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Source Code