Bug 22275: (bug 15836 follow-up) Fix class_sources.class_split_rule FK creation
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Wed, 27 Feb 2019 12:38:57 +0000 (09:38 -0300)
committerNick Clemens <nick@bywatersolutions.com>
Thu, 7 Mar 2019 20:50:07 +0000 (20:50 +0000)
commit29bc2b583264a62c29a0f39dd79a5b3a64721ae6
treeac2bce4744e73b24d970f5bc27bb6cba0d63becf
parent5ebf1a26dae62651d1749a2df2e54ee6d1af148a
Bug 22275: (bug 15836 follow-up) Fix class_sources.class_split_rule FK creation

18.06.00.060 will fail if custom Classification sources were created.

In that case we should use the 'generic' split rule.

Test plan:
% git checkout -b bug_22395_pre 3a0cba67f1387595f570ab9d9efdeabc856345b4
Reset the DB
Go to  Home › Administration › Classification sources
Create a custom "Classification filing rules"
Create a custom "Classification sources" using this filing rules
% git checkout master
% perl installer/data/mysql/updatedatabase.pl
=> Without this patch you will get:
DBD::mysql::db do failed: Cannot add or update a child row: a foreign key constraint fails (`koha_kohadev`.`#sql-33a_67`, CONSTRAINT `class_source_ibfk_2` FOREIGN KEY (`class_split_rule`) REFERENCES `class_split
_rules` (`class_split_rule`)) [for Statement "
            ALTER TABLE class_sources
            ADD CONSTRAINT class_source_ibfk_2 FOREIGN KEY (class_split_rule)
            REFERENCES class_split_rules (class_split_rule)
        "] at installer/data/mysql/updatedatabase.pl line 17104.

=> With this patch applied the FK will be created successfully
class_sources.class_split_rule will be set to "generic" for these custom values.

Signed-off-by: Oliver Behnke <oliver.behnke@aei.mpg.de>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
installer/data/mysql/updatedatabase.pl