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

--- Comment #9 from David Cook <[email protected]> ---
Okie dokie...

So Koha/BackgroundJob.pm looks up any plugins by querying the database for the
method "background_tasks". Excellent. That means only plugins that have the
background_tasks method get loaded by the background worker when it's getting
set up (prior to forking).

448         my @plugins = Koha::Plugins->new()->GetPlugins( { method =>
'background_tasks', } );

--

Unfortunately... during the work of
Koha/BackgroundJob/MARCImportCommitBatch.pm, we call C4::Biblio::ModBiblioMarc,
which runs the following code:

2914     Koha::Plugins->call(
2915         'before_biblio_action',
2916         { action => 'save', payload => { biblio_id => $biblionumber,
record => $record } }
2917     );

The "call" function loads every installed plugin and then checks if the Perl
object "can" do a particular method. 

That causes the problem that Kyle and Nick have noted. 

--

We could use the patch attached here, but I'm thinking that we might want to
first fix the Koha::Plugins->call() so that it uses the database lookup for the
method, caches it, and goes from there.

That should hopefully fix this problem *plus* improve the efficiency of
Koha::Plugins->call().

I wonder if there's already a bug for that in fact...

-- 
You are receiving this mail because:
You are watching all bug changes.
_______________________________________________
Koha-bugs mailing list
[email protected]
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to