Commit Graph

37 Commits

Author SHA1 Message Date
Eloy Lafuente (stronk7)
4d505af519 Merge branch 'MDL-55267-master-deprecation' of https://github.com/marcusgreen/moodle 2017-03-21 10:18:56 +01:00
Marcus Green
f2894f322d MDL-55267 cache: Remove deprecated field datasourceaggregate 2017-03-13 16:31:45 +00:00
Russell Smith
f3789f2fb3 MDL-45584 cache: Make identifiers part of the cache creation.
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
behaviour.

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.
2017-03-02 11:06:17 +08:00
Russell Smith
7ff43e1acf MDL-55604 cache: Fix identifier and cacheable_object
When a cachable object is store in the static cache from
the backing store, it was incorrect serialised rather than
using the wake function.  This has been resolved and tests added.

During the investigation into cacheable_object, it was discovered
that set_identifiers never removes identifiers when you call it,
so set_identifiers(array('a')) and set_identifiers(array('b')) really
resulted in array('a','b') as the identifiers rather than 'b'.

The fix for this issue depends on the set_identifiers fix and
they have been coupled together as a result.
2016-08-24 11:26:20 +10:00
Mark Nelson
e1f53120dd MDL-54984 core_cache: corrected exception message 2016-07-27 11:42:47 +08:00
Jun Pataleta
d6806d8eaf MDL-54984 cache: Added todo tags to items for 3.3 deprecations 2016-07-26 00:46:46 +08:00
Jun Pataleta
329642b9c5 MDL-54984 cache: 3.2 final deprecations 2016-07-26 00:46:37 +08:00
Andrew Nicols
ae3c6ee42d MDL-52346 caching: Coding style fixes 2016-02-29 14:14:01 +08:00
Andrew Nicols
8bd28ed696 Merge branch 'MDL-52346' of git://github.com/mr-russ/moodle 2016-02-29 14:12:03 +08:00
Russell Smith
98d580888b MDL-53208 caching: parse_key not required for static cache.
static cache operates on a single cache instance, it can't share
with others and can use the supplied key immediately.
2016-02-28 17:01:50 +11:00
Russell Smith
4350192a8d MDL-52346 caching: Allow localstorage as a cache option.
We display a notification on screen during configuration telling
the administrator if it's safe to map this store to a local storage
cache or not.
2016-02-26 10:58:20 +11:00
Sam Hemelryk
83bee88119 MDL-47832 cache: removed data source aggregate functionality
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.
2014-11-20 11:02:56 +13:00
Tim Hunt
5bcfd504df MDL-45618 Fix @since PHPdoc tags. 2014-05-19 17:03:04 +01:00
Russell Smith
0dd7c711c5 MDL-41292 cache: only update identifiers if they change 2013-12-07 11:34:40 +11:00
Sam Hemelryk
e28a953996 MDL-43033 cache: fixed display of definition stores in admin interface 2013-12-02 09:30:03 +13:00
Sam Hemelryk
1582ee126f MDL-41997 cache: dummy store now uses static acceleration for session + request 2013-09-30 09:41:03 +13:00
Sam Hemelryk
d074fb091d MDL-40903 cache: renamed persistcache to staticacceleration 2013-09-25 09:05:18 +12:00
Sam Hemelryk
8bc1d659b8 MDL-40903 cache: coding style tidyup pre-integration 2013-09-25 09:04:35 +12:00
Sam Hemelryk
083fa87759 MDL-40903 cache: converted persistent into persistentdata
At the same time all cache instances were made persistent
2013-09-25 09:04:35 +12:00
Ankit Agarwal
f5c263836d MDL-41558 cache: Identifiers should never be passed as null to cache::make() 2013-09-03 13:37:50 +08:00
Sam Hemelryk
045fe95c63 MDL-39525 cache: fixed purging definitions requiring identifiers 2013-05-07 15:11:33 +12:00
Sam Hemelryk
5f5776c1e6 MDL-37500 cache: integration review touchups.
Issues:
1. Fix setType calls
2. Changing from default to all and editing again, default is still selected.
3. Uncheck all options causes error.
4. Doesn't seem to be restricting based upon option.
5. Picked all and got coding error with the database thing.
6. Bad title: https://github.com/samhemelryk/moodle/commit/wip-MDL-37500-m25#L1R157
7. Amend comments - should only be removed once 2.5 is the minimum version for an upgrade.
8. Document the defaultsharing option.

Outcomes:
1. Fixed - copy paste error.
2. Fixed - mforms was applying the default value despite a value being provided. A quirk of elements with array names.
3. Fixed - validation now requires at least one option to be selected.
4. Fixed - issue rose from definitions not being re-parsed. cache/admin.php now reparses the first time a user visits the page.
5. Fixed - better purging of definitions when working with them anonymously. Unit test added.
6. Fixed - new string added and used.
7. Fixed - comments amended.

New issue to address parsing of definitions during upgrade.
New issue to add debugging notice if definition sets only one possible sharing option and that option is user input.
2013-05-07 12:49:12 +12:00
Sam Hemelryk
46e17f04c7 MDL-37500 cache: implemented sharing options and gui 2013-05-07 11:57:37 +12:00
Sam Hemelryk
5cba0c4ba3 MDL-38565 cache: tidy up pre-integration 2013-04-19 10:13:36 +12:00
Sam Hemelryk
dbd2ea4e1f MDL-38565 cache: session caches now function as expected
This change is a large change to the way sessions are handled
within MUC after it was discovered that session did not function
as expected when any store other than the default session store
was being used.
As part of this change the session loader has been largely
customised in order to consolidate session data for the loader.
The unit tests have also being greatly increased to provide
better coverage for sessions.
2013-04-19 10:11:48 +12:00
Sam Hemelryk
7634410b6e MDL-37683 cache: improved indentifier collection and storage 2013-02-18 10:20:02 +13:00
Sam Hemelryk
e0d9b7c0d4 MDL-37683 cache: siteidentifier is now included in the keys 2013-02-18 08:32:03 +13:00
Petr Škoda
1a4596e434 MDL-29442 add missing utf-8 to entity html encoding and decoding 2012-12-09 18:21:38 +01:00
Dan Poltawski
aeb8e78785 Merge branch 'wip-MDL-36407-m24' of git://github.com/samhemelryk/moodle 2012-11-16 15:04:17 +08:00
Sam Hemelryk
758dbdf894 MDL-36111 cache: Fixed up typo's and trivial issues 2012-11-12 10:36:53 +13:00
Sam Hemelryk
2566210c63 MDL-36407 cache: Implemented options for ad_hoc caches 2012-11-12 10:05:05 +13:00
Sam Hemelryk
702651c7a6 MDL-36120 cache: Tidied up post peer-review 2012-11-07 10:03:32 +13:00
Sam Hemelryk
47834bcd41 MDL-36120 cache: now uses sha1 and has an option for simple keys 2012-11-07 10:03:32 +13:00
Sam Hemelryk
2e1e266c9a MDL-36362 cache: added simpledata definition option 2012-11-05 10:28:07 +13:00
Sam Hemelryk
e0a568e281 MDL-36094 cache: Fixed up inclusion path for overrideclassfile and datasourcefile 2012-10-19 08:11:40 +08:00
Sam Hemelryk
170f821b9d MDL-25290 cache: Fixed things up per coding style 2012-10-08 09:53:52 +13:00
Sam Hemelryk
8139ad13a5 MDL-25290 cache: Implemented Cache API aka MUC 2012-10-08 09:53:50 +13:00