]> git.koha-community.org Git - koha.git/commit
Bug 18364: Do not LOCK/UNLOCK tables from tests
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Fri, 31 Mar 2017 16:43:38 +0000 (13:43 -0300)
committerJulian Maurice <julian.maurice@biblibre.com>
Wed, 10 May 2017 09:24:22 +0000 (11:24 +0200)
commitb710291ec97e35909e0b969629d374f20e7f8f14
treecfc4775acacf3366ed391b821569e837e47a1962
parentbd5b0b223e6e37424140e8bd5cb5378dcb3f9f7e
Bug 18364: Do not LOCK/UNLOCK tables from tests

From the MySQL doc:
"LOCK TABLES is not transaction-safe and implicitly commits any active transaction before attempting to lock the tables."
If the LOCK/UNLOCK statements are executed from tests, the current transaction will be committed.
To avoid that we need to guess if this code is execute from testsa or not (yes it is a bit hacky)

Better ideas are welcome!

Another fix would have been to revert
  commit be156d9ad9e5bcfadab34d44f90e04fd61e256ad
  Bug 15854: Use a READ and WRITE LOCK on message_queue
but theorically a race is still possible.

Existing tests seem to be safe, to test this patch you will need new
tests from bug 17964.
Test plan:
  prove t/db_dependent/Letters/TemplateToolkit.t
twice, and notice that changes have been comitted.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Mason James <mtj@kohaaloha.com>
(cherry picked from commit a2d5655093a7188028036ba439256d9f819c136e)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
C4/Circulation.pm