Bugzilla – Attachment 4122 Details for
Bug 5860
Adding duplicate stocknumber will fail silently
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Followup patch for 3.4.x
patch.txt (text/plain), 2.71 KB, created by
Marcel de Rooy
on 2011-05-16 09:53:45 UTC
(
hide
)
Description:
Followup patch for 3.4.x
Filename:
MIME Type:
Creator:
Marcel de Rooy
Created:
2011-05-16 09:53:45 UTC
Size:
2.71 KB
patch
obsolete
>From 81c9a9c095c4b3e490f17f48ebc7086575c0dfa8 Mon Sep 17 00:00:00 2001 >From: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >Date: Mon, 16 May 2011 11:42:04 +0200 >Subject: [PATCH] [REVISED] [3.4.X] 5860 Fixing stocknumber index >Content-Type: text/plain; charset="utf-8" > >Fixing code for 3.3.0.42 update. >Adding code at end of update script if install past that point already. >--- > installer/data/mysql/updatedatabase.pl | 29 +++++++++++++++++++++++++---- > 1 files changed, 25 insertions(+), 4 deletions(-) > >diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl >index f503112..02b3ea2 100755 >--- a/installer/data/mysql/updatedatabase.pl >+++ b/installer/data/mysql/updatedatabase.pl >@@ -4216,13 +4216,27 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { > } > > $DBversion = '3.03.00.042'; >-if (C4::Context->preference("Version") < TransformToNum($DBversion) && $original_version < TransformToNum("3.02.06.001")) { >- $dbh->do("ALTER TABLE `items` DROP INDEX `itemsstocknumberidx`;"); >- $dbh->do("ALTER TABLE items ADD INDEX itemstocknumberidx (stocknumber);"); >- print "Upgrade to $DBversion done (Change items.stocknumber to be not unique)\n"; >+if (C4::Context->preference("Version") < TransformToNum($DBversion)) { >+ stocknumber_checker(); >+ print "Upgrade to $DBversion done (5860 Index itemstocknumber)\n"; > SetVersion ($DBversion); > } > >+sub stocknumber_checker { #code reused later on >+ my @row; >+ #drop the obsolete itemSStocknumber idx if it exists >+ @row = $dbh->selectrow_array("SHOW INDEXES FROM items WHERE key_name='itemsstocknumberidx'"); >+ $dbh->do("ALTER TABLE `items` DROP INDEX `itemsstocknumberidx`;") if @row; >+ >+ #check itemstocknumber idx; remove it if it is unique >+ @row = $dbh->selectrow_array("SHOW INDEXES FROM items WHERE key_name='itemstocknumberidx' AND non_unique=0"); >+ $dbh->do("ALTER TABLE `items` DROP INDEX `itemstocknumberidx`;") if @row; >+ >+ #add itemstocknumber index non-unique IF it still not exists >+ @row = $dbh->selectrow_array("SHOW INDEXES FROM items WHERE key_name='itemstocknumberidx'"); >+ $dbh->do("ALTER TABLE items ADD INDEX itemstocknumberidx (stocknumber);") unless @row; >+} >+ > $DBversion = "3.03.00.043"; > if (C4::Context->preference("Version") < TransformToNum($DBversion)) { > >@@ -4323,6 +4337,13 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { > SetVersion ($DBversion); > } > >+$DBversion = '3.04.00.XXX'; >+if (C4::Context->preference("Version") < TransformToNum($DBversion)) { >+ #follow up fix 5860: some installs already past 3.3.0.42 >+ stocknumber_checker(); >+ print "Upgrade to $DBversion done (Fix for stocknumber index)\n"; >+ SetVersion ($DBversion); >+} > > =head1 FUNCTIONS > >-- >1.6.0.6 >
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 Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 5860
:
3506
|
3615
|
4092
|
4103
|
4121
|
4122
|
4123
|
4141
|
4143
|
4144