View | Details | Raw Unified | Return to bug 21079
Collapse All | Expand All

(-)a/installer/data/mysql/atomicupdate/bug_21079_map_illrequestattributes.perl (-8 / +13 lines)
Lines 1-4 Link Here
1
use Try::Tiny;
2
$DBversion = 'XXX';  # will be replaced by the RM
1
$DBversion = 'XXX';  # will be replaced by the RM
3
if( CheckVersion( $DBversion ) ) {
2
if( CheckVersion( $DBversion ) ) {
4
3
Lines 58-66 if( CheckVersion( $DBversion ) ) { Link Here
58
    my $changed_str = join(',', @changed);
57
    my $changed_str = join(',', @changed);
59
58
60
    if (scalar @changed > 0) {
59
    if (scalar @changed > 0) {
60
        my ($raise_error) = $dbh->{RaiseError};
61
        $dbh->{AutoCommit} = 0;
61
        $dbh->{AutoCommit} = 0;
62
        $dbh->{RaiseError} = 1;
62
        $dbh->{RaiseError} = 1;
63
        try {
63
        eval {
64
            my $del = $dbh->do(
64
            my $del = $dbh->do(
65
                "DELETE FROM illrequestattributes ".
65
                "DELETE FROM illrequestattributes ".
66
                "WHERE illrequest_id IN ($changed_str)"
66
                "WHERE illrequest_id IN ($changed_str)"
Lines 82-93 if( CheckVersion( $DBversion ) ) { Link Here
82
                }
82
                }
83
            }
83
            }
84
            $dbh->commit;
84
            $dbh->commit;
85
        } catch {
86
            warn "Upgrade to $DBversion failed: $_";
87
            eval { $dbh->rollback };
88
        };
85
        };
86
        
87
        if ($@) {
88
            warn "Upgrade to $DBversion failed: $@\n";
89
            eval { $dbh->rollback };
90
        } else {
91
            SetVersion( $DBversion );
92
            print "Upgrade to $DBversion done (Bug 21079 - Unify metadata schema across backends)\n";
93
        }
94
        
95
        $dbh->{AutoCommit} = 1;
96
        $dbh->{RaiseError} = $raise_error;
89
    }
97
    }
90
98
91
    SetVersion( $DBversion );
92
    print "Upgrade to $DBversion done (Bug 21079 - Unify metadata schema across backends)\n";
93
}
99
}
94
- 

Return to bug 21079