1. 24 Feb, 2022 1 commit
    • sam marshall's avatar
      MDL-72837 core_cache: Add versioned cache support · 8a0f7060
      sam marshall authored
      Adds new set_versioned and get_versioned APIs to cache, which means you can
      request a specific version from cache and it will not return an outdated
      This is important when using multi-layer-caches where a local cache might have
      an outdated version of the cache, but the shared cache has a current version.
      With this feature, the content of the cache does not have to be rebuilt, as
      it will automatically retrieve it from the shared cache if necessary.
  2. 20 Oct, 2021 1 commit
    • sam marshall's avatar
      MDL-72596 core_cache: Track cache I/O size in perfdebug · 9c29979b
      sam marshall authored
      For cache types which mean this information can be obtained without a
      significant performance cost (i.e. just by calling strlen and not
      having to serialize something that wasn't serialized already),
      this change calculates the size of data read from or written to cache
      in each request and includes it in the perfdebug table at bottom of
      output (when that is turned on).
      This supports the following cache types:
      * File store
      * Redis (only if caching is enabled)
  3. 11 Oct, 2021 1 commit
  4. 28 Sep, 2020 1 commit
  5. 22 Aug, 2020 1 commit
    • Eloy Lafuente's avatar
      MDL-69479 upgrade: Change all 4.0 occurrences to 3.10 · 9a79c34e
      Eloy Lafuente authored
      Under parallel development, when something is worth being commented
      in upgrade.txt notes, it will be applied to all the development branches
      using the "earliest" one to be released. So, if something changes
      in 3.10 (and also is applied to master), the upgrade.txt notes will
      show 3.10 in both branches.
      Of course, if something only goes to one dev branch (say master), then the
      master version will be used in the notes (4.0 in this case).
  6. 06 Jul, 2020 3 commits
  7. 28 Apr, 2020 1 commit
  8. 08 Oct, 2019 1 commit
  9. 15 Mar, 2019 1 commit
  10. 12 Sep, 2018 1 commit
  11. 27 Aug, 2018 1 commit
  12. 02 Mar, 2017 1 commit
    • Russell Smith's avatar
      MDL-45584 cache: Make identifiers part of the cache creation. · f3789f2f
      Russell Smith authored and Mark Nelson's avatar Mark Nelson committed
      It is now safe to cache a reference to a cache and expect consistent results.
      Changing identifiers altered cache results where a reference was
      held to the cache. Identifiers have been set to be cached with
      identifiers included so the caches are separate.
      As a consequence of this it was identified that invalidation events
      and identifiers don't easily work together as an event can't determine
      which identifiers should be used for cache invalidation.  So invalidation
      events have been made incompatible with identifiers being set.  No core
      code used this combination as it's not possible to understand any expected
      Event invalidation for application and session caches was centralised to the same
      location.  The only difference was the name of the lastinvalidation variable. This
      improves support and consistency of invalidation code.
  13. 30 Oct, 2016 1 commit
    • Russell Smith's avatar
      MDL-56273 cache: Use cache initialise always. · a169739d
      Russell Smith authored
      purge_all() and purge_by_definition() look in the configuration
      for which caches are available and then creates them to purge them.
      The configuration stores the values used by initialise(), not
      initialise_unit_test_instance() and would therefore fail to purge
      all caches if they were not purged by another means.
      In the case of filestore, it's purged by unit tests, in the case
      of memcache(d), it purges the whole store when a single definition
      is requested.
      Therefore all configuration was moved into the configuration file
      during unit tests and does not have any special override codes in
      the unit test infrastructure.
  14. 26 Jul, 2016 1 commit
  15. 18 Apr, 2016 2 commits
  16. 28 Feb, 2016 1 commit
    • Russell Smith's avatar
      MDL-53208 caching: Enable dereferencing as a feature. · b2159f2d
      Russell Smith authored
      If the cache does all the dereferencing when it stores and loads
      the objects, then the cache loaders don't need to do that work.
      This is true of all caches that use something other than PHP's memory
      to store their results.
  17. 04 Feb, 2015 1 commit
    • Sam Hemelryk's avatar
      MDL-39459 cache: mode included in stats output · 7fa57e03
      Sam Hemelryk authored
      The cache store mode is now included in the performance stats
      printed at the bottom of the page.
      It is represented as either [a] [s] or [r] and a title is used
      to actually state the mode.
  18. 12 Dec, 2014 1 commit
    • Sam Hemelryk's avatar
      MDL-48568 cache: stores now determine testing · 63b159d0
      Sam Hemelryk authored
      Cache stores are now responsible for deciding if they are suitable
      for use as the primary cache store during unit and acceptance tests
      Changes are as follows:
      * New method: cache_store::ready_to_be_used_for_testing
      * Core cache store have been updated to override this method as
      * MongoDB usesafe default changed to true to match actual default
  19. 09 Dec, 2014 1 commit
  20. 20 Nov, 2014 1 commit
    • Sam Hemelryk's avatar
      MDL-47832 cache: removed data source aggregate functionality · 83bee881
      Sam Hemelryk authored
      Cache data source aggregate functionality was found to be broken
      and unused, because of this the decision was made to remove it
      rather than fix it.
      As it was broken we did not follow typical deprecation methods and
      instead the code was removed outright with only structure
      remaining and left deprecated.
  21. 07 Jan, 2014 1 commit
  22. 06 Jan, 2014 1 commit
  23. 02 Jan, 2014 1 commit
  24. 25 Sep, 2013 2 commits
  25. 28 Jan, 2013 1 commit