[Koha-devel] Cache::Memory must be removed (21955)

Ere Maijala ere.maijala at helsinki.fi
Mon Dec 10 08:17:49 CET 2018


For the record, I mixed the internal memory cache with Cache::Memory,
so... +1 for removal of Cache::Memory.

--Ere

Ere Maijala kirjoitti 7.12.2018 klo 9.55:
> I'm a bit hesitant on this. I understand running without a cache makes
> things like tests easier, but Cache::Memory is actually a pretty useful
> fallback. There's a lot of code in Koha that does redundant fetches of
> e.g. framework data, and without caching I'm afraid it will slow down
> significantly. Cache::Memory is very handy when developing stuff to
> speed up execution of e.g. batch utilities when you don't want to mess
> with constantly flushing Memcached.
> 
> I would like to propose another approach for considerarion: disable
> Cache::Memory only if running under Plack.
> 
> --Ere
> 
> David Cook kirjoitti 7.12.2018 klo 1.52:
>> I’ve noticed some caching issues but haven’t had time to investigate too
>> deeply. I wonder if this relates to what I’ve encountered.
>>
>>  
>>
>> In any case, +1!
>>
>>  
>>
>> David Cook
>>
>> Systems Librarian
>>
>> Prosentient Systems
>>
>> 72/330 Wattle St
>>
>> Ultimo, NSW 2007
>>
>> Australia
>>
>>  
>>
>> Office: 02 9212 0899
>>
>> Direct: 02 8005 0595
>>
>>  
>>
>> *From:*koha-devel-bounces at lists.koha-community.org
>> [mailto:koha-devel-bounces at lists.koha-community.org] *On Behalf Of
>> *Tomas Cohen Arazi
>> *Sent:* Friday, 7 December 2018 2:44 AM
>> *To:* Jonathan Druart <jonathan.druart at bugs.koha-community.org>
>> *Cc:* koha-devel <koha-devel at lists.koha-community.org>
>> *Subject:* Re: [Koha-devel] Cache::Memory must be removed (21955)
>>
>>  
>>
>> Get rid of it!
>>
>>  
>>
>> +1
>>
>>  
>>
>> El mié., 5 dic. 2018 a las 16:20, Jonathan Druart
>> (<jonathan.druart at bugs.koha-community.org
>> <mailto:jonathan.druart at bugs.koha-community.org>>) escribió:
>>
>>     Hi devs,
>>
>>     I am still recovering from my holidays and I think I caught a quite
>>     big fish.
>>
>>     After an interesting track game I will explain why I am suggesting to
>>     remove Cache::Memory that is currently used as fallback for the L2
>>     cache.
>>
>>     What I tried to fix:
>>     Jenkins is complaining about selenium tests (regressions.t) failing on
>>     18.05, it is a succession of events and bugs that were not linked at
>>     first glance.
>>
>>     Here are the different steps I went though:
>>     - On bug 21426 we noticed that USE_MEMCACHED was not taken into
>>     account. If set to "no" the default memcached config was defined in
>>     the koha-config.xml file anyway
>>     - A new regression selenium test was added on bug 21777 to catch the
>>     presence of an audio alert on the circulation page
>>     - Investigating the failing tests I noticed that koha-testing-docker
>>     was not setting the memcached config on the 18.05 branches (I guess
>>     the image has not been rebuilt yet)
>>     search_utf8.t output "Warning: script running in daemon mode, without
>>     recommended caching system (memcached)."
>>     - I also find that [% Koha.Preference('AudioAlerts') %] did not return
>>     the value set by the tests, but the value that the DB has before the
>>     tests were launched
>>     => It is a cache issue!
>>     - ...but only when memcached is not set...
>>     - Reading Koha::Cache->new we can notice that Cache::Memory is used
>>     for the L2 cache when memcached is not defined in the config
>>
>>     And so we have the problem: If a value is set in the cache by a Plack
>>     worker, it will not be available from another one, as the L2 cache is
>>     not shared (!)
>>
>>     To recreate easily the problem you can:
>>     - remove the memcached config
>>     - edit intranet-bottom.inc and add
>>     ===[% Koha.Preference('AudioAlerts') %]===
>>     - restart plack
>>     - Modify the value of AudioAlerts (using the UI)
>>     - Reload the page (reload several times if the value is still correct,
>>     it will depend on which worker will serve the request)
>>
>>     Solution:
>>     I am considering removing Cache::Memory unless somebody else has a
>>     better idea
>>     Bug 21955 - Cache::Memory should not be used as L2 cache
>>
>>     Note that it should not affect a lot of people as everybody is
>>     supposed to have memcached configured and working correctly!
>>
>>     Cheers,
>>     Jonathan
>>     _______________________________________________
>>     Koha-devel mailing list
>>     Koha-devel at lists.koha-community.org
>>     <mailto:Koha-devel at lists.koha-community.org>
>>     http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
>>     website : http://www.koha-community.org/
>>     git : http://git.koha-community.org/
>>     bugs : http://bugs.koha-community.org/
>>
>>
>>  
>>
>> -- 
>>
>> Tomás Cohen Arazi
>>
>> Theke Solutions (http://theke.io <http://theke.io/>)
>> ✆+54 9351 3513384
>> GPG: B2F3C15F
>>
>>
>> _______________________________________________
>> Koha-devel mailing list
>> Koha-devel at lists.koha-community.org
>> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
>> website : http://www.koha-community.org/
>> git : http://git.koha-community.org/
>> bugs : http://bugs.koha-community.org/
>>
> 

-- 
Ere Maijala
Kansalliskirjasto / The National Library of Finland



More information about the Koha-devel mailing list