Bug 21065: DBRev 18.05.07.001
authorLucas Gass <lucas@bywatersolutions.com>
Thu, 27 Dec 2018 16:47:37 +0000 (16:47 +0000)
committerLucas Gass <lucas@bywatersolutions.com>
Thu, 27 Dec 2018 21:19:51 +0000 (21:19 +0000)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Koha.pm
Koha/Schema/Result/Accountline.pm
installer/data/mysql/atomicupdate/bug_21065.perl [deleted file]
installer/data/mysql/updatedatabase.pl

diff --git a/Koha.pm b/Koha.pm
index a3d42fa..dba1863 100644 (file)
--- a/Koha.pm
+++ b/Koha.pm
@@ -29,7 +29,7 @@ use vars qw{ $VERSION };
 # - #4 : the developer version. The 4th number is the database subversion.
 #        used by developers when the database changes. updatedatabase take care of the changes itself
 #        and is automatically called by Auth.pm when needed.
-$VERSION = "18.05.07.000";
+$VERSION = "18.05.07.001";
 
 sub version {
     return $VERSION;
index 3f83e1a..c821888 100644 (file)
@@ -37,9 +37,8 @@ __PACKAGE__->table("accountlines");
 =head2 borrowernumber
 
   data_type: 'integer'
-  default_value: 0
   is_foreign_key: 1
-  is_nullable: 0
+  is_nullable: 1
 
 =head2 accountno
 
@@ -119,12 +118,7 @@ __PACKAGE__->add_columns(
   "issue_id",
   { data_type => "integer", is_nullable => 1 },
   "borrowernumber",
-  {
-    data_type      => "integer",
-    default_value  => 0,
-    is_foreign_key => 1,
-    is_nullable    => 0,
-  },
+  { data_type => "integer", is_foreign_key => 1, is_nullable => 1 },
   "accountno",
   { data_type => "smallint", default_value => 0, is_nullable => 0 },
   "itemnumber",
@@ -212,7 +206,12 @@ __PACKAGE__->belongs_to(
   "borrowernumber",
   "Koha::Schema::Result::Borrower",
   { borrowernumber => "borrowernumber" },
-  { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" },
+  {
+    is_deferrable => 1,
+    join_type     => "LEFT",
+    on_delete     => "SET NULL",
+    on_update     => "CASCADE",
+  },
 );
 
 =head2 itemnumber
@@ -236,8 +235,8 @@ __PACKAGE__->belongs_to(
 );
 
 
-# Created by DBIx::Class::Schema::Loader v0.07042 @ 2018-05-16 17:00:24
-# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:pygYYKxFDRLX97PyeUeLvg
+# Created by DBIx::Class::Schema::Loader v0.07042 @ 2018-12-27 16:44:16
+# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Inx2QcGouIgjnlyBOLAwbA
 
 
 sub koha_objects_class {
diff --git a/installer/data/mysql/atomicupdate/bug_21065.perl b/installer/data/mysql/atomicupdate/bug_21065.perl
deleted file mode 100644 (file)
index 443877b..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-$DBversion = 'XXX';  # will be replaced by the RM
-if( CheckVersion( $DBversion ) ) {
-
-    my $sth = $dbh->prepare(q|SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_NAME='accountlines_ibfk_1'|);
-    $sth->execute;
-    if ($sth->fetchrow_hashref) {
-        $dbh->do(q|
-            ALTER TABLE accountlines DROP FOREIGN KEY accountlines_ibfk_1;
-        |);
-        $dbh->do(q|
-            ALTER TABLE accountlines CHANGE COLUMN borrowernumber borrowernumber INT(11) DEFAULT NULL;
-        |);
-        $dbh->do(q|
-            ALTER TABLE accountlines ADD CONSTRAINT accountlines_ibfk_borrowers FOREIGN KEY (borrowernumber) REFERENCES borrowers (borrowernumber) ON DELETE SET NULL ON UPDATE CASCADE;
-        |);
-    }
-
-    SetVersion( $DBversion );
-    print "Upgrade to $DBversion done (Bug 21065 - Set ON DELETE SET NULL on accountlines.borrowernumber)\n";
-}
index 99c3e81..c86653d 100755 (executable)
@@ -16265,6 +16265,26 @@ if ( CheckVersion($DBversion) ) {
     SetVersion ($DBversion);
 }
 
+$DBversion = '18.05.07.001';
+if( CheckVersion( $DBversion ) ) {
+
+    my $sth = $dbh->prepare(q|SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_NAME='accountlines_ibfk_1'|);
+    $sth->execute;
+    if ($sth->fetchrow_hashref) {
+        $dbh->do(q|
+            ALTER TABLE accountlines DROP FOREIGN KEY accountlines_ibfk_1;
+        |);
+        $dbh->do(q|
+            ALTER TABLE accountlines CHANGE COLUMN borrowernumber borrowernumber INT(11) DEFAULT NULL;
+        |);
+        $dbh->do(q|
+            ALTER TABLE accountlines ADD CONSTRAINT accountlines_ibfk_borrowers FOREIGN KEY (borrowernumber) REFERENCES borrowers (borrowernumber) ON DELETE SET NULL ON UPDATE CASCADE;
+        |);
+    }
+
+    SetVersion( $DBversion );
+    print "Upgrade to $DBversion done (Bug 21065 - Set ON DELETE SET NULL on accountlines.borrowernumber)\n";
+}
 
 # SEE bug 13068
 # if there is anything in the atomicupdate, read and execute it.