summaryrefslogtreecommitdiffstats
path: root/Bugzilla/DB.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Bugzilla/DB.pm')
-rw-r--r--Bugzilla/DB.pm18
1 files changed, 15 insertions, 3 deletions
diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm
index 7384e7b5f..4aad803c6 100644
--- a/Bugzilla/DB.pm
+++ b/Bugzilla/DB.pm
@@ -642,9 +642,8 @@ sub _bz_add_table_raw {
$self->do($_) foreach (@statements);
}
-sub bz_add_field_table {
- my ($self, $name) = @_;
- my $table_schema = $self->_bz_schema->FIELD_TABLE_SCHEMA;
+sub _bz_add_field_table {
+ my ($self, $name, $table_schema) = @_;
# We do nothing if the table already exists.
return if $self->bz_table_info($name);
my $indexes = $table_schema->{INDEXES};
@@ -659,6 +658,19 @@ sub bz_add_field_table {
$self->bz_add_table($name);
}
+sub bz_add_field_tables {
+ my ($self, $field) = @_;
+
+ $self->_bz_add_field_table($field->name,
+ $self->_bz_schema->FIELD_TABLE_SCHEMA);
+ if ( $field->type == FIELD_TYPE_MULTI_SELECT ) {
+ $self->_bz_add_field_table('bug_' . $field->name,
+ $self->_bz_schema->MULTI_SELECT_VALUE_TABLE);
+ }
+
+}
+
+
sub bz_drop_column {
my ($self, $table, $column) = @_;