[Koha-bugs] [Bug 31074] Cached plugin code is used in Koha even after changes to plugin (install/upgrade/uninstall)

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Sun Nov 5 23:34:44 CET 2023


https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=31074

--- Comment #35 from David Cook <dcook at prosentient.com.au> ---
(In reply to Victor Grousset/tuxayo from comment #34)
> (In reply to David Cook from comment #33)
> > Everything would be configuration driven, so you could still have people
> > upload plugins, and Koha could put them in the right place.
> 
> If the workers are shared, then all plugins also, right? So before
> triggering a too wide reload the issue would be simply letting tenants
> installing plugins because that would affect the other.

Ah yes I wasn't thinking clearly. With a multitenant Wordpress, I think the
only person who can upload plugins is the Wordpress administrator, so we'd have
to do something similar. Which works well for how I like to manage things
anyway. 

> > For instance, if you have 8 CPUs and 400 workers, and each worker needs 100%
> > CPU for a few seconds at startup then you're going to have a long wait
> > before the full system is operational.
> 
> The ratio between threads and workers should never be like this, right?
> Because the point of workers is to have parallel request processing when
> having multiple threads. So 8 CPUs could never process 400 queries at the
> same time. (even if a lot of time is DB wait) So the practical number of
> workers would be much lower. And that also caps the reload time. Like a few
> seconds a most? Beyond means not having enough threads to be able to use
> that much workers anyway.
> 
> All this is to be sure whether or not the possibility of triggering a reload
> is viable or not. (option 2 of comment 19)

8 CPUs and 400 workers is an extreme example. 

If you're multi-tenanted, you'll have fewer workers. But if you're not
multi-tenanted, you could easily have hundreds of workers even with a small
number of CPUs, if many of the instances don't carry much load. 

Philippe has an example with 100-200 Koha instances I believe. They're mostly
going to be idle, but you'd need 200-400 workers just to have a minimum amount
of availability. 

If you were multi-tenanted, you would have a more reasonable number of workers.
But then as per the above you wouldn't allow Koha instances to upload plugins
anyway. 

So then a reload at plugin upload time is determined by the sysadmin anyway,
which makes it similar to any software deployment.


> > (Some day when I have more time I'm going to look again at reducing CPU consumption
> > at startup time for the Starman workers...)
> 
> Just in case that might help, you mentioned preloading earlier, is that
> --preload-app ?
> https://metacpan.org/dist/Starman/view/script/starman#-preload-app

That's the one. It would be very helpful if we used it with Koha, but it's
something that I just haven't gotten around to doing yet. (I think my Koha TODO
list is nearly infinite.)

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the Koha-bugs mailing list