Go to file
Jonathan Druart 82f5b527d8 Bug 10611: Use mysql_auto_reconnect instead of ping
DBD::Mysql provides a mysql_auto_reconnect flag. Using it avoids
the time required to do a $dbh->ping().

Benchmarks:

use Modern::Perl;
use C4::Context;
for ( 1 .. 1000 ) {
    $dbh = C4::Context->dbh;
}

* without this patch on a local DB:
perl t.pl  0,49s user 0,02s system 98% cpu 0,525 total
* without this patch on a remote DB:
perl t.pl  0,52s user 0,05s system 1% cpu 37,358 total
* with this patch on a local DB:
perl t.pl  0,46s user 0,04s system 99% cpu 0,509 total
* with this patch on a remote DB:
perl t.pl  0,49s user 0,02s system 56% cpu 0,892 total

Testing the auto reconnect:
use Modern::Perl;
use C4::Context;
my $ping = $dbh->ping;
say $ping;
$dbh->disconnect;
$ping = $dbh->ping;
say $ping;

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: Real improvement. No koha-qa errors

prove t/db_dependent/Circulation_issuingrules.t produces no error
prove t/db_dependent/Context.t produces no error

Test
1) dumped Koha DB, load it on a non-local server
2) run sample script whit and without patch, local and remote

use Modern::Perl;
use C4::Context;
for ( 1 .. 100000 ) {
    my $dbh = C4::Context->dbh;
}

Main difference I note is with remote server
a) without patch
real    0m16.357s
user    0m2.592s
sys     0m2.132s

b) with patch
real    0m0.259s
user    0m0.240s
sys     0m0.012s

I think this could be good for DBs placed on
remote servers

Bug 10611: add a "new" parameter to C4::Context->dbh

When dbh->disconnect is called and the mysql_auto_reconnect flag is set,
the dbh is not recreated: the old one is used.

Adding a new flag, we can now force the C4::Context->dbh method to
return a new dbh.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Bug 10611: Followup: remove useless calls to dbh->disconnect

These 3 calls to disconnect are done at the end of the script, they are
useless.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 4ae3665ad8)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>

Conflicts:
	C4/Context.pm
2014-05-16 12:04:53 +02:00
C4 Bug 10611: Use mysql_auto_reconnect instead of ping 2014-05-16 12:04:53 +02:00
Koha Bug 12134: ensure that patrons are not restricted even when the last restriction has expired 2014-04-30 16:22:12 +02:00
OpenILS Bug 9239 QA follow-up: remove stray debug code 2013-03-16 21:32:34 -04:00
acqui Bug 11018: allow adding order from a reverted MARC batch 2014-03-25 09:39:28 +01:00
admin Bug 11513: fix log warning noise in patron category editor 2014-04-23 19:31:28 +02:00
authorities Bug 11313: supply empty value in mandatory comboboxs in MARC record editors 2014-04-23 19:06:40 +02:00
basket Bug 10605: fix encoding issue on basket email (INTRANET) 2013-12-24 11:10:14 +01:00
catalogue Bug 11369: (follow-up) generate searchid in browser.js 2014-05-07 18:33:23 +02:00
cataloguing Bug 11313: supply empty value in mandatory comboboxs in MARC record editors 2014-04-23 19:06:40 +02:00
circ Bug 12134: ensure that patrons are not restricted even when the last restriction has expired 2014-04-30 16:22:12 +02:00
course_reserves bug 8215: (followup) avoid spurious warning in Apache log 2013-05-21 16:01:08 -07:00
debian Bug 11655: koha-translate --list no longer shows 'en' 2014-04-30 16:27:54 +02:00
docs Bug 7143: Updating about page and history 2014-03-18 09:19:44 +01:00
errors Housekeeping in errors scripts 2010-05-12 07:29:03 -04:00
etc Bug 11619: remove duplicate key in QueryParser config 2014-04-30 16:55:22 +02:00
install_misc Bug 8798: DBIx::Class base classes for all Koha tables 2013-10-14 21:07:24 +00:00
installer Bug 10611: Use mysql_auto_reconnect instead of ping 2014-05-16 12:04:53 +02:00
koha-tmpl Bug 11636 - make it possible to remove patrons from patron list during add process 2014-05-16 10:17:24 +02:00
labels Bug 11222: fix crash that can occur in search for items to add to label batch 2013-12-13 09:53:16 +01:00
members Bug 11662: remove disused member-picupload.pl 2014-02-06 20:00:21 +01:00
misc Bug 10611: Use mysql_auto_reconnect instead of ping 2014-05-16 12:04:53 +02:00
offline_circ Bug 10240: (follow-up) don't display patrons as lost or gone-no-address incorrectly 2013-10-11 01:57:05 +00:00
opac Bug 11329: Check for MARC record existence in opac-showmarc 2014-03-25 12:16:59 +01:00
patron_lists Bug 10565: (follow-up) add new user permission for patron list management 2013-10-14 22:43:03 +00:00
patroncards Bug 10636 - patronimage should have borrowernumber as PK, not cardnumber 2013-10-14 21:08:02 +00:00
plugins Bug 7804 - Add Koha Plugin System - QA Followup 2 2013-03-20 14:50:19 -04:00
reports Bug 10718: fix items with no checkouts report 2013-09-08 20:04:43 +00:00
reserve Bug 9788: QA followup 2014-03-18 09:27:23 +01:00
reviews Bug 1623 - Provide view of approved comments 2011-12-27 18:26:50 +01:00
rotating_collections Bug 9605: rotating collections permissions are wrong 2013-03-30 22:11:05 -04:00
selenium Adding selenium tests for filterMembers 2009-09-30 11:30:37 +02:00
serials Bug 10429: improve display of library and library filter on serials claim page 2014-02-18 09:10:57 +01:00
services Bug 7178: Acquisition item creation improvement 2012-03-26 11:07:23 +02:00
skel Bug 7804 - Add Koha Plugin System 2013-03-20 14:49:47 -04:00
sms Bug 10611: Use mysql_auto_reconnect instead of ping 2014-05-16 12:04:53 +02:00
suggestion Bug 9307: QA Followup 2013-06-19 07:19:39 -07:00
svc Bug 7813: (follow-up) improvements for deleting local cover images 2013-09-21 18:11:13 +00:00
t Bug 10611: Use mysql_auto_reconnect instead of ping 2014-05-16 12:04:53 +02:00
tags Bug 10730: Use DataTables on the tag review page 2013-09-25 16:47:59 +00:00
test Bug 5449: JSON malformed in Koha - Blocker with jQuery 1.4.x 2011-03-12 08:53:41 +13:00
tmp/modified_authorities
…
tools Bug 11493: Revert "Bug 6869 Batch item modification fails whit accented characters" 2014-05-16 10:10:25 +02:00
virtualshelves Bug 10853: All existing routing to get a CSV should return a MARC csv 2013-10-11 02:16:33 +00:00
xt Bug 11304: fix display of detail page holdings tab in translated Bootstrap theme 2013-12-13 14:32:51 +01:00
.htaccess Fix file permissions: if it is not a script, it should not be executable. 2010-04-16 00:40:34 -04:00
.mailmap 7439 Mailmap for master 2012-01-27 12:27:58 +01:00
INSTALL Bug 7759, update of install files to use background indexing (and some whitespace tidy) 2012-04-20 16:11:52 +02:00
INSTALL.debian Bug 8092 follow-up: Add optional dependency on CHI 2012-06-09 13:08:18 +02:00
INSTALL.fedora7 Bug 7440 - Remove NoZebra vestiges 2013-03-19 21:17:04 -04:00
INSTALL.opensuse Bug 7759, update of install files to use background indexing (and some whitespace tidy) 2012-04-20 16:11:52 +02:00
INSTALL.ubuntu Bug 7764: (follow-up) editorial tweaks 2013-10-04 16:27:55 +00:00
LICENSE Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
MANIFEST.SKIP Bug 9546 : Updating make manifest tardist 2013-02-06 23:54:46 -05:00
Makefile.PL Bug 10565: (follow-up) ensure that new patron_lists/ CGI directory is installed 2013-10-14 22:44:23 +00:00
README Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
README.robots Bug 6411 add another example to README.robots 2011-07-05 14:48:05 +12:00
about.pl Bug 10915: (QA followup) warn if cannot read history.txt 2013-09-20 17:25:57 +00:00
changelanguage.pl Bug 6755 Problems with switching languages 2011-09-23 09:47:09 +12:00
edithelp.pl Bug 11661: sanitize file names supplied to edithelp.pl 2014-02-06 19:59:02 +01:00
fix-perl-path.PL installer: improvements to fix-path-perl.PL on Win32 2007-12-20 19:20:12 -06:00
help.pl Bug 11238: contruct links to the appropriate manual version dynamically 2013-12-13 09:23:01 +01:00
install-CPAN.pl Bug 5370: Fix all the references to koha.org 2010-11-08 09:41:49 +13:00
koha_perl_deps.pl bug 10548: fix count of missing required dependencies by koha_perl_deps.pl 2013-07-11 14:03:32 +00:00
kohaversion.pl Increment version for 3.14.6 release 2014-04-30 17:19:37 +02:00
mainpage.pl Bug 10080 - Change system pref IndependantBranches to IndependentBranches 2013-05-22 07:58:23 -07:00
rewrite-config.PL Bug 10712: Save missing config variables to install log 2013-08-13 14:14:30 +00:00

README

Koha is a free software integrated library system.

Koha is distributed under the GNU GPL version 3 or later.
Please read the file LICENSE for more details.

To install or upgrade Koha, please see the INSTALL file appropriate
to your platform.

Report bugs at http://bugs.koha-community.org/

Visit the Koha Project website at http://www.koha-community.org/