[Koha-bugs] [Bug 10662] Build OAI-PMH Harvesting Client
bugzilla-daemon at bugs.koha-community.org
bugzilla-daemon at bugs.koha-community.org
Fri Nov 2 01:10:01 CET 2018
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=10662
--- Comment #221 from David Cook <dcook at prosentient.com.au> ---
(In reply to Josef Moravec from comment #211)
> Comment on attachment 81783 [details] [review]
> Bug 10662: Build OAI-PMH Harvesting Client
>
> Review of attachment 81783 [details] [review]:
> -----------------------------------------------------------------
>
> ::: Koha/OAI/Harvester/Worker/Download/Stream.pm
> @@ +111,5 @@
> > + }
> > +
> > + #NOTE: Prepare database statement handle
> > + my $dbh = C4::Context->dbh;
> > + my $sql = "insert into oai_harvester_import_queue (uuid,result) VALUES (?,?)";
>
> You should not use SQL in Koha modules, use
> Koha::OAI::Harvester::ImportQueue->new in place of execution of this
> statement
Ordinarily, I would agree. However, Koha::Object[s] use DBIx::Class, which is
very slow. If you read more of Koha::OAI::Harvester::Download::Stream, you'll
see that I re-use the same prepared statement handle (something we
unfortunately have never done in Koha), which makes the inserts much much much
faster.
Here I'm aiming for high performance. DBIx::Class was built for convenience
rather than performance, so I've opted to use DBI and SQL, as it's just so much
faster.
As a side note, Tomas and I chatted a bit at Kohacon about making the
harvester's workers use Koha's plugins, so perhaps this is something where the
built-in for Koha could use DBIC, and I could provide a more high performance
plugin outside of Koha. Although it seems a shame that we'd prefer low
performance over high performance :/.
--
You are receiving this mail because:
You are watching all bug changes.
More information about the Koha-bugs
mailing list