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

Jonathan Druart jonathan.druart at bugs.koha-community.org
Fri Dec 21 17:22:34 CET 2018


"There is a patch for that" :)

See bug 14476

Le ven. 21 déc. 2018 à 13:01, Paul Poulain <paul.poulain at biblibre.com> a écrit :
>
> Great, thanks !
>
> An idea: couldn't we also cache the xslt display of biblios, as it
> requires quite a long time to be done, and it's a data that change rarely ?
>
> Le 21/12/2018 à 16:51, Jonathan Druart a écrit :
> > I have stolen this existing page and wrote some info about our cache mechanism:
> > https://wiki.koha-community.org/wiki/Cache_handling_in_Koha
> >
> > Feel free to ask if you need more info or if something is still not
> > clear enough.
> >
> > Cheers,
> > Jonathan
> >
> > Le mer. 19 déc. 2018 à 05:33, Paul Poulain <paul.poulain at biblibre.com> a écrit :
> >> Hi Jonathan,
> >>
> >> I'd be very happy if you could wrote something on the wiki, I'm a little
> >> bit confused by all those cache...
> >>
> >> Le 07/12/2018 à 16:36, Jonathan Druart a écrit :
> >>> 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/
> >>> _______________________________________________
> >>> 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/
> >> --
> >> Paul Poulain, Associé-gérant / co-owner
> >> BibLibre, Services en logiciels libres pour les bibliothèques
> >> BibLibre, Open Source software and services for libraries
> >>
> >> _______________________________________________
> >> 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/
>
> --
> Paul Poulain, Associé-gérant / co-owner
> BibLibre, Services en logiciels libres pour les bibliothèques
> BibLibre, Open Source software and services for libraries
>
> _______________________________________________
> 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