https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=36736 --- Comment #2 from Nick Clemens (kidclamp) <nick@bywatersolutions.com> --- So, I played around here a bit - my first thought was that we could simply avoid the reconnect if the objects were already loaded, so I updated a plugin like so: $schema = Koha::Database->schema({ new => 1 }) unless $schema->source_registrations->{KohaPluginComBywatersolutionsContractsContract}; With some warns I found that this was executed when plack was restarted, so the object are loaded in plack from the start, that's good. But I found that imports still failed and caused reconnect - that's bad. What I eventually realized was that we are forking our background jobs - and these get a new DB connection, without the new objects. The dirty fix that worked was adding to the worker: Koha::Plugins->get_enabled_plugins; After spawning the process, but before beginning the job. And that fixes it. I am not sure where we load the plugins when we start plack, but if we did the same thing when launching a background worker process - or built it in to the process method of BackgroundJob To move the logic out of the plugin we could add a 'plugin_classes' method and have Koha::Schema check for if the objects are loaded - but I think maybe just loading plugins for the background tasks at spawn is a good start? -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.