[koha-commits] main Koha release repository branch master updated. v17.05.00-291-ga9a500e

Git repo owner gitmaster at git.koha-community.org
Wed Jul 26 18:55:16 CEST 2017


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "main Koha release repository".

The branch, master has been updated
       via  a9a500e81d5d90c7a83a785c48014fce8bc17eec (commit)
       via  45ff2ef129ea8a52ad7d08a531aad6b3e1e665f3 (commit)
       via  f5988bb3d233fa29f2af649748bbca611c99b739 (commit)
       via  c3dca8c24b53aa63838687f536a5509855ccc21c (commit)
       via  193ecb0a2bb397bf67488f6342f02adda0328031 (commit)
       via  1d1d6ddc9d1e4929d9eb232e0745bcf31749cfdb (commit)
       via  6cb3abcbd95fe673d5b0426f5f8c23a0c7683e65 (commit)
      from  5b84987f28b43f0c92eeff9ed1067ed61f822a4b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a9a500e81d5d90c7a83a785c48014fce8bc17eec
Author: Jonathan Druart <jonathan.druart at bugs.koha-community.org>
Date:   Thu Jul 20 13:39:43 2017 -0300

    Bug 18966: Do not deal with duplicate issue_id on checkin
    
    Koha suffers of big bugs due to its history: When data are deleted, they
    are moved to another tables.
    For instance issues and old_issues: when a checkin is done, it is moved
    to the old_issues table.
    That leads to a main problem that is described on
    https://wiki.koha-community.org/wiki/DBMS_auto_increment_fix
    
    However we tried first to fix the problem (for issues/old_issues) at
    code level on bug 18242.
    The goal was to prevent data lost.
    Data lost may happens in this case:
    Check an item out (issue_id = 1)
    Check an item in (issue_id = 1)
    Restart MySQL (reset auto increment for issue_id to 1)
    Check an item out (issue_id = 1)
    Check an item in => BOOM, the issue_id is a PK in old_issues and the
    move fails.
    Before bug 18242 the data were lost, we inserted the value into
    old_issues, which fails silently (because of RaiseError set to 0 in
    Koha::Database), then delete the row from issues.
    That has been fixed using a transaction.
    
    This patch introduced a regression we tried to fix on bug 18651 comment
    0, the patron was charged even if the checkin was rejected.
    A good way to fix that would have been to LOCK the tables:
    1- Start a transaction
    2- LOCK the table to make sure nobody will read id and avoid race
       conditions
    3- Move the content from one table to the other, dealing with ids
    4- UNLOCK the table
    5- Commit the transaction
    But there were problems using LOCK and DBIx::Class (See commit
    905572910b3a - Do no LOCK/UNLOCK the table).
    
    Finally the solution implemented is not acceptable for several reasons:
    - batch checkins may fail
    - issue_id will always stay out of sync (between issues and old_issues)
    See 18651 comment 66.
    
    Since the next stable releases are very soon, and we absolutely need to
    fix this problem, I am suggesting to:
    1- Execute the move in a transaction to avoid data lost and reject the
       checkin if we face IDs dup
    => It will only reject 1 checkin (max is 1 * MySQL restart), no need to
       deal with race conditions,
    2- Display a warning on the checkin page and link to a
       solution/explanation
    3- Communicate as much as we can on the proper fix: Update auto
       increment values when the DBMS is restarted -
        https://wiki.koha-community.org/wiki/DBMS_auto_increment_fix
    4- Display a warning on the about page for corrupted data (see bug
       18931)
    5- Write and make available a maintenance script to fix corrupted data
       (TODO LATER)
    
    Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>
    Signed-off-by: Julian Maurice <julian.maurice at biblibre.com>
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit 45ff2ef129ea8a52ad7d08a531aad6b3e1e665f3
Author: Mason James <mtj at kohaaloha.com>
Date:   Wed Jul 26 18:42:19 2017 +1200

    Bug 18931 - Follow up - Typo fix in template for holds
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit f5988bb3d233fa29f2af649748bbca611c99b739
Author: Tomas Cohen Arazi <tomascohen at theke.io>
Date:   Tue Jul 25 14:37:55 2017 -0300

    Bug 18931: (followup) Tidy text
    
    Some minor style and idiomatic issues.
    
    Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit c3dca8c24b53aa63838687f536a5509855ccc21c
Author: Katrin Fischer <katrin.fischer.83 at web.de>
Date:   Mon Jul 24 23:26:04 2017 +0200

    Bug 18931 - Follow up - Typo fix in SQL statement
    
    Fixes the table alias in the SQL statement for items and
    adds items to the if clause for showing data problems.
    
    Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit 193ecb0a2bb397bf67488f6342f02adda0328031
Author: Jonathan Druart <jonathan.druart at bugs.koha-community.org>
Date:   Mon Jul 24 17:46:27 2017 -0300

    Bug 18931: Add items/deleteditems tables
    
    Signed-off-by: Katrin Fischer <katrin.fischer.83 at web.de>
    Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit 1d1d6ddc9d1e4929d9eb232e0745bcf31749cfdb
Author: Jonathan Druart <jonathan.druart at bugs.koha-community.org>
Date:   Wed Jul 12 15:52:19 2017 -0300

    Bug 18931: Add a "data corrupted" section on the about page - MySQL AI
    
    See the following wiki page for more information
    https://wiki.koha-community.org/wiki/DBMS_auto_increment_fix
    
    Test plan:
    Create (at least) a patron, a checkout, a biblio and a hold
    Then fill the old_* or deleted* tables with:
     INSERT INTO deletedborrowers SELECT * from borrowers WHERE  borrowernumber=XXX;
     INSERT INTO deletedbiblio SELECT * from biblio WHERE biblionumber=XXX;
     INSERT INTO old_issues SELECT * from issues WHERE issue_id=XXX;
     INSERT INTO old_reserves SELECT * from reserves WHERE reserve_id=XXX;
    
    Go to the about page, 'System information' tab. You should see a new
    "Data problems" section with the list of the ids that are wrong
    
    Signed-off-by: Katrin Fischer <katrin.fischer.83 at web.de>
    Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

commit 6cb3abcbd95fe673d5b0426f5f8c23a0c7683e65
Author: Jonathan Druart <jonathan.druart at bugs.koha-community.org>
Date:   Wed Jul 26 13:50:14 2017 -0300

    Bug 18982: Remove data in the correct order
    
    To respect FK
    
    Signed-off-by: Jonathan Druart <jonathan.druart at bugs.koha-community.org>

-----------------------------------------------------------------------

Summary of changes:
 C4/Circulation.pm                                  |   29 ++++----------
 about.pl                                           |   35 ++++++++++++++++-
 circ/returns.pl                                    |    3 ++
 koha-tmpl/intranet-tmpl/prog/en/modules/about.tt   |   41 +++++++++++++++++++-
 .../intranet-tmpl/prog/en/modules/circ/returns.tt  |    5 +++
 t/db_dependent/Circulation/Returns.t               |   33 ++++++++++------
 t/db_dependent/selenium/basic_workflow.t           |   11 +++---
 7 files changed, 116 insertions(+), 41 deletions(-)


hooks/post-receive
-- 
main Koha release repository


More information about the koha-commits mailing list