diff options
| author | ivan <ivan> | 2009-12-29 04:24:04 +0000 | 
|---|---|---|
| committer | ivan <ivan> | 2009-12-29 04:24:04 +0000 | 
| commit | 4ab85484c9e588d822d3bdb0b194dd9ae3498930 (patch) | |
| tree | 3a6d6e4268a717698ec491ed7f823a178712ebf0 | |
| parent | 2d7540c1d7975eef387d6afb658b9640034e5906 (diff) | |
don't change h_queue.job type under non-mysql, takes forever on large dbs, RT#6946
| -rwxr-xr-x | FS/bin/freeside-upgrade | 11 | 
1 files changed, 9 insertions, 2 deletions
| diff --git a/FS/bin/freeside-upgrade b/FS/bin/freeside-upgrade index 6ced37297..3882ffb2b 100755 --- a/FS/bin/freeside-upgrade +++ b/FS/bin/freeside-upgrade @@ -5,7 +5,7 @@ use vars qw($opt_d $opt_s $opt_q $opt_v $opt_r);  use vars qw($DEBUG $DRY_RUN);  use Getopt::Std;  use DBIx::DBSchema 0.31; -use FS::UID qw(adminsuidsetup checkeuid datasrc );  #getsecrets); +use FS::UID qw(adminsuidsetup checkeuid datasrc driver_name);  #getsecrets);  use FS::CurrentUser;  use FS::Schema qw( dbdef dbdef_dist reload_dbdef );  use FS::Misc::prune qw(prune_applications); @@ -61,9 +61,16 @@ if (dbdef->table('cust_main')->column('agent_custid') && ! $opt_s) {  #you'll lose all the part_svc settings it migrates to part_svc_column  my @statements = -  grep { $_ !~ /^CREATE +INDEX +h_queue/ } #useless, holds up queue insertion +  grep { $_ !~ /^CREATE +INDEX +h_queue/i } #useless, holds up queue insertion         dbdef->sql_update_schema( dbdef_dist(datasrc), $dbh ); +unless ( driver_name =~ /^mysql/i ) { +  #not necessary under non-mysql, takes forever on big db +  @statements = +    grep { $_ !~ /^ *ALTER +TABLE +h_queue +ALTER +COLUMN +job +TYPE +varchar\(512\) *$/ } +         @statements; +} +  if ( $DRY_RUN ) {    print      join(";\n", @bugfix, @statements ). ";\n"; | 
