[Koha-devel] Cache::Memory must be removed (21955)
Jonathan Druart
jonathan.druart at bugs.koha-community.org
Fri Dec 7 16:36:53 CET 2018
I talked with Ere on IRC, but prefer to let a note here as well.
Enabling Cache::Memory if Plack is not running will not help as we
have the L1 (in memory) cache, which is used in any cases (and flushed
under Plack before a request is made).
I do not know how is our caching system understood by the team. I can
try and write something on the wiki if it can help. Hint: there is no
black magic :)
Cheers,
Jonathan
Le ven. 7 déc. 2018 à 04:55, Ere Maijala <ere.maijala at helsinki.fi> a écrit :
>
> 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
>
> _______________________________________________
> 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/
More information about the Koha-devel
mailing list