Bugzilla – Attachment 12667 Details for
Bug 8253
fix fine doubling, when upgrading from 3.6 to 3.8 (or later)
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
wajasu's test notes showing accountline queries at points in time
b8253.txt (text/plain), 11.97 KB, created by
wajasu
on 2012-10-03 22:00:44 UTC
(
hide
)
Description:
wajasu's test notes showing accountline queries at points in time
Filename:
MIME Type:
Creator:
wajasu
Created:
2012-10-03 22:00:44 UTC
Size:
11.97 KB
patch
obsolete
> >Start early in the day, when you are feeling hopeful. > >Test: >--------------To demonstrate bug: >a) created a new VM with 3.8.5 dependencies loaded with koha-common >b) created kohaclone >c) git checkout -b bug8253_36x origin/3.6.x >d) perl Makefile.pl with dev install > ( mysqladmin -uroot -p create koha, with user/pass = koha, grants/flush ) >e) make; make install >f) adjust install for web/staff access >g) stepped through web installer to initialize fresh database (installer updatedatabase.pl happens) >h) created a "student" patron stud1 >i) cataloged a couple of books with z3950 search ( barcode 111 and 222 resprectively) >j) configured circulation rules to charge $1.50 for each day overdue > (Home ? Administration ? Circulation and Fine Rules ) > ( All, All, 10, 10, blank, 1.50,1,0,0,0,0 click add ) >k) configured overdue notice/status triggers (1st 1 day, 2nd 2 days) for "student" "Overdue Notice" > ( Home ? Tools ? Notice Triggers) >l) configured finesmode in syspref with "calculate & charge" >m) checked out one book with duedate 1 day in past for patron stud1 barcode 111 >n) checked out other book with duedate 2 day in past for patron stud1 barcode 222 >o) used mysql to "select * from accountlines;" to see what fines exist > (no dupes just rental charges, 2 $5.00 entries ) >p) run misc/cronjobs/fines.pl >q) used mysql to "select * from accountlines;" to see what fines exist > (no dupes just two additional entries for our two overdue books) >r) brought in new kohaclone >s) git checkout -b bug8253_38x origin/3.8.x >t) performed steps d (except no new db to create though) thru step g (new version of updatedatabase.pl) >u) used mysql to "select * from accountlines;" to see what fines exist (no dupes) >v) run misc/cronjobs/fines.pl >w) used mysql to "select * from accountlines;" to see what fines exist (DUPES) - bug 8253 > >--------------To test bug fix: >y) do the same as above (with a fresh new mysql DB) but after step s) > apply the patch: git am -i -u -3 <thepatch> > and proceed with steps t [BE SURE TO APPLY d-g] and then continue with steps u thru v >z) used mysql to "select * from accountlines;" to see what fines exist (no dupes) - TEST PASSES > > >Note: You can't reuse the database because it won't be upgraded. :) > >Note: Patch assumes F/FU accountlines will not already have ' 23:59' on the end, but this patch only addresses >the folks who upgrade, not the ones who already upgraded. There is another bug fix script for that. > >Note: A variation on this test, if you can, is to create a fine that hass accounttype='F', since I only had 'FU' > >AFTER STEP >mysql> select * from accountlines; >+----------------+-----------+------------+------------+----------+-------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| borrowernumber | accountno | itemnumber | date | amount | description | dispute | accounttype | amountoutstanding | lastincrement | timestamp | notify_id | notify_level | note | manager_id | >+----------------+-----------+------------+------------+----------+-------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| 51 | 1 | 1 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:01 | 0 | 0 | NULL | 0 | >| 51 | 2 | 2 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:27 | 0 | 0 | NULL | 0 | >+----------------+-----------+------------+------------+----------+-------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >2 rows in set (0.00 sec) > >mysql> select * from accountlines; >+----------------+-----------+------------+------------+----------+----------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| borrowernumber | accountno | itemnumber | date | amount | description | dispute | accounttype | amountoutstanding | lastincrement | timestamp | notify_id | notify_level | note | manager_id | >+----------------+-----------+------------+------------+----------+----------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| 51 | 1 | 1 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:01 | 0 | 0 | NULL | 0 | >| 51 | 2 | 2 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:27 | 0 | 0 | NULL | 0 | >| 51 | 3 | 1 | 2012-10-03 | 1.500000 | The hobbit 10/02/2012 | NULL | FU | 1.500000 | 1.500000 | 2012-10-03 14:13:30 | 0 | 0 | NULL | NULL | >| 51 | 4 | 2 | 2012-10-03 | 3.000000 | The Hobbit and philosophy : 10/01/2012 | NULL | FU | 3.000000 | 3.000000 | 2012-10-03 14:13:30 | 0 | 0 | NULL | NULL | >+----------------+-----------+------------+------------+----------+----------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >4 rows in set (0.00 sec) > >=============================================================== > >UPON 3.6x to 3.8.x webinstallker upgrade i got lots of duplicate entry errors, but this was special: >(probably was always there from before, but unrelated to this bug) > >[Wed Oct 3 15:28:52 2012] updatedatabase.pl: DBD::mysql::db do failed: Can't create table 'koha.#sql-53a_11a' >(errno: 121) at /home/koha/kohaclone/installer/data/mysql/updatedatabase.pl line 4776. >[Wed Oct 3 15:28:52 2012] updatedatabase.pl: DBD::mysql::db do failed: Can't create table 'koha.#sql-53a_11a' >(errno: 121) at /home/koha/kohaclone/installer/data/mysql/updatedatabase.pl line 4777. > >which was in the ADD CONSTRAINT lines: >$DBversion = "3.07.00.022"; >if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) { > $dbh->do("DELETE FROM reviews WHERE biblionumber NOT IN (SELECT biblionumber from biblio)"); > $dbh->do("UPDATE reviews SET borrowernumber = NULL WHERE borrowernumber NOT IN (SELECT borrowernumber FROM > borrowers)"); > $dbh->do("ALTER TABLE reviews ADD CONSTRAINT reviews_ibfk_2 FOREIGN KEY (`biblionumber`) REFERENCES `bibli >o` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE"); > $dbh->do("ALTER TABLE reviews ADD CONSTRAINT reviews_ibfk_1 FOREIGN KEY (borrowernumber) REFERENCES borrow >ers (borrowernumber ) ON UPDATE CASCADE ON DELETE SET NULL"); > print "Upgrade to $DBversion done (Bug 7493 - Add constraint linking OPAC comment biblionumber to biblio, >OPAC comment borrowernumber to borrowers.)\n"; > SetVersion($DBversion); >} > > >AFTER UPGRADE AND WEB INSTALLER AND misc/cronjobs/fines.pl we see duplicate fines: !!!!BUG >mysql> select * from accountlines; >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| borrowernumber | accountno | itemnumber | date | amount | description | dispute | accounttype | amountoutstanding | lastincrement | timestamp | notify_id | notify_level | note | manager_id | >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| 51 | 1 | 1 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:01 | 0 | 0 | NULL | 0 | >| 51 | 2 | 2 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 14:10:27 | 0 | 0 | NULL | 0 | >| 51 | 3 | 1 | 2012-10-03 | 1.500000 | The hobbit 10/02/2012 | NULL | FU | 1.500000 | 1.500000 | 2012-10-03 14:13:30 | 0 | 0 | NULL | NULL | >| 51 | 4 | 2 | 2012-10-03 | 3.000000 | The Hobbit and philosophy : 10/01/2012 | NULL | FU | 3.000000 | 3.000000 | 2012-10-03 14:13:30 | 0 | 0 | NULL | NULL | >| 51 | 5 | 1 | 2012-10-03 | 1.500000 | The hobbit 10/02/2012 23:59 | NULL | FU | 1.500000 | 1.500000 | 2012-10-03 15:35:40 | 0 | 0 | NULL | NULL | >| 51 | 6 | 2 | 2012-10-03 | 3.000000 | The Hobbit and philosophy : 10/01/2012 23:59 | NULL | FU | 3.000000 | 3.000000 | 2012-10-03 15:35:40 | 0 | 0 | NULL | NULL | >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >6 rows in set (0.00 sec) > >================================================================== > >NOW I GET TO same 3.6.x state and apply the patch, then UPGRADE to 3.8.x > AND WEB INSTALLER AND misc/cronjobs/fines.pl > >mysql> select * from accountlines; >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| borrowernumber | accountno | itemnumber | date | amount | description | dispute | accounttype | amountoutstanding | lastincrement | timestamp | notify_id | notify_level | note | manager_id | >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >| 51 | 1 | 1 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 16:09:48 | 0 | 0 | NULL | 0 | >| 51 | 2 | 2 | 2012-10-03 | 5.000000 | Rental | NULL | Rent | 5.000000 | NULL | 2012-10-03 16:10:01 | 0 | 0 | NULL | 0 | >| 51 | 3 | 1 | 2012-10-03 | 1.500000 | The hobbit 10/02/2012 23:59 | NULL | FU | 1.500000 | 1.500000 | 2012-10-03 16:31:53 | 0 | 0 | NULL | NULL | >| 51 | 4 | 2 | 2012-10-03 | 3.000000 | The Hobbit and philosophy : 10/01/2012 23:59 | NULL | FU | 3.000000 | 3.000000 | 2012-10-03 16:31:53 | 0 | 0 | NULL | NULL | >+----------------+-----------+------------+------------+----------+----------------------------------------------+---------+-------------+-------------------+---------------+---------------------+-----------+--------------+------+------------+ >4 rows in set (0.00 sec) > > >NO DUPES! TEST PASSES! >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 8253
:
10369
|
10405
|
10416
|
10429
|
10436
|
11087
|
11127
|
11660
|
12653
|
12665
|
12666
| 12667 |
12685
|
12686