Commit c9990cbe authored by Dave Lawrence's avatar Dave Lawrence

Bug 685611 - delta_ts is updated even when no changes are made to bugs created via WebServices

r/a=LpSolit
parent 9835ae42
...@@ -255,7 +255,8 @@ use constant ABSTRACT_SCHEMA => { ...@@ -255,7 +255,8 @@ use constant ABSTRACT_SCHEMA => {
assigned_to => {TYPE => 'INT3', NOTNULL => 1, assigned_to => {TYPE => 'INT3', NOTNULL => 1,
REFERENCES => {TABLE => 'profiles', REFERENCES => {TABLE => 'profiles',
COLUMN => 'userid'}}, COLUMN => 'userid'}},
bug_file_loc => {TYPE => 'MEDIUMTEXT'}, bug_file_loc => {TYPE => 'MEDIUMTEXT',
NOTNULL => 1, DEFAULT => "''"},
bug_severity => {TYPE => 'varchar(64)', NOTNULL => 1}, bug_severity => {TYPE => 'varchar(64)', NOTNULL => 1},
bug_status => {TYPE => 'varchar(64)', NOTNULL => 1}, bug_status => {TYPE => 'varchar(64)', NOTNULL => 1},
creation_ts => {TYPE => 'DATETIME'}, creation_ts => {TYPE => 'DATETIME'},
......
...@@ -152,10 +152,12 @@ use constant UPDATE_COLUMNS => qw( ...@@ -152,10 +152,12 @@ use constant UPDATE_COLUMNS => qw(
use constant SQL_DEFINITIONS => { use constant SQL_DEFINITIONS => {
# Using commas because these are constants and they shouldn't # Using commas because these are constants and they shouldn't
# be auto-quoted by the "=>" operator. # be auto-quoted by the "=>" operator.
FIELD_TYPE_FREETEXT, { TYPE => 'varchar(255)' }, FIELD_TYPE_FREETEXT, { TYPE => 'varchar(255)',
NOTNULL => 1, DEFAULT => "''"},
FIELD_TYPE_SINGLE_SELECT, { TYPE => 'varchar(64)', NOTNULL => 1, FIELD_TYPE_SINGLE_SELECT, { TYPE => 'varchar(64)', NOTNULL => 1,
DEFAULT => "'---'" }, DEFAULT => "'---'" },
FIELD_TYPE_TEXTAREA, { TYPE => 'MEDIUMTEXT' }, FIELD_TYPE_TEXTAREA, { TYPE => 'MEDIUMTEXT',
NOTNULL => 1, DEFAULT => "''"},
FIELD_TYPE_DATETIME, { TYPE => 'DATETIME' }, FIELD_TYPE_DATETIME, { TYPE => 'DATETIME' },
FIELD_TYPE_BUG_ID, { TYPE => 'INT3' }, FIELD_TYPE_BUG_ID, { TYPE => 'INT3' },
}; };
......
...@@ -29,6 +29,7 @@ use Bugzilla::Install::Util qw(indicate_progress install_string); ...@@ -29,6 +29,7 @@ use Bugzilla::Install::Util qw(indicate_progress install_string);
use Bugzilla::Util; use Bugzilla::Util;
use Bugzilla::Series; use Bugzilla::Series;
use Bugzilla::BugUrl; use Bugzilla::BugUrl;
use Bugzilla::Field;
use Date::Parse; use Date::Parse;
use Date::Format; use Date::Format;
...@@ -663,6 +664,9 @@ sub update_table_definitions { ...@@ -663,6 +664,9 @@ sub update_table_definitions {
$dbh->bz_alter_column('attachments', 'filename', $dbh->bz_alter_column('attachments', 'filename',
{ TYPE => 'varchar(255)', NOTNULL => 1 }); { TYPE => 'varchar(255)', NOTNULL => 1 });
# 2011-11-28 dkl@mozilla.com - Bug 685611
_fix_notnull_defaults();
################################################################ ################################################################
# New --TABLE-- changes should go *** A B O V E *** this point # # New --TABLE-- changes should go *** A B O V E *** this point #
################################################################ ################################################################
...@@ -3618,6 +3622,31 @@ sub _on_delete_set_null_for_audit_log_userid { ...@@ -3618,6 +3622,31 @@ sub _on_delete_set_null_for_audit_log_userid {
} }
} }
sub _fix_notnull_defaults {
my $dbh = Bugzilla->dbh;
$dbh->bz_alter_column('bugs', 'bug_file_loc',
{TYPE => 'MEDIUMTEXT', NOTNULL => 1,
DEFAULT => "''"}, '');
my $custom_fields = Bugzilla::Field->match({
custom => 1, type => [ FIELD_TYPE_FREETEXT, FIELD_TYPE_TEXTAREA ]
});
foreach my $field (@$custom_fields) {
if ($field->type == FIELD_TYPE_FREETEXT) {
$dbh->bz_alter_column('bugs', $field->name,
{TYPE => 'varchar(255)', NOTNULL => 1,
DEFAULT => "''"}, '');
}
if ($field->type == FIELD_TYPE_TEXTAREA) {
$dbh->bz_alter_column('bugs', $field->name,
{TYPE => 'MEDIUMTEXT', NOTNULL => 1,
DEFAULT => "''"}, '');
}
}
}
1; 1;
__END__ __END__
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment