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

Josef Moravec josef.moravec at gmail.com
Fri Dec 7 15:40:15 CET 2018


As the plack is recomended way of running Koha, I am for removing
Cache::Memory too

Josef

On Fri, Dec 7, 2018 at 2:24 PM Kyle Hall <kyle.m.hall at gmail.com> wrote:

> +1
> ---
> http://www.kylehall.info
> ByWater Solutions ( http://bywatersolutions.com )
> Meadville Public Library ( http://www.meadvillelibrary.org )
> Crawford County Federated Library System ( http://www.ccfls.org )
>
>
> On Wed, Dec 5, 2018 at 2:20 PM Jonathan Druart <
> jonathan.druart at bugs.koha-community.org> wrote:
>
>> 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
>> 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/
>>
> _______________________________________________
> 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/



-- 
Josef Moravec
josef.moravec at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20181207/b7056c2e/attachment.html>


More information about the Koha-devel mailing list