Тема: Upgrade до 4.2 RC1
начал агрейд:
* Upgrading database from version 4.0036.
* Upgrading table for MT::Entry::Meta records...
* Upgrading metadata storage for Entries (100%)
* Upgrading table for MT::Asset::Meta records...
* Upgrading metadata storage for Assets (100%)
* Upgrading table for MT::Author::Meta records...
* Upgrading metadata storage for Users (100%)
* Upgrading table for MT::TBPing::Meta records...
* Upgrading table for MT::Category::Meta records...
* Upgrading table for CrossPoster::Cache::Meta records...
* Upgrading metadata storage for crossposter_caches (100%)
* Upgrading table for MT::Template::Meta records...
* Upgrading metadata storage for Templates (100%)
* Upgrading table for touch records...
* Upgrading table for CrossPoster::Account::Meta records...
* Upgrading metadata storage for Crossposting Accounts (100%)
* Upgrading table for MT::Blog::Meta records...
* Upgrading metadata storage for Blogs (100%)
* Upgrading table for MT::Comment::Meta records...
* Upgrading table for Entry records...
* Upgrading table for Asset Placement records...
* Upgrading table for Archive Mapping records...
* Upgrading table for User records...
* Upgrading table for User records...
На этом месте выскочило вот это
Error during upgrade: undefined type: mediumtext at lib/MT/Upgrade.pm line 2440
нашёл указанное место в указанном месте, там вот что:
sub core_column_action {
my $self = shift;
my ($action, %param) = @_;
my $type = $param{type};
my $class = MT->model($type);
my $defs = $class->column_defs;
my $result = $self->type_diff($type);
return 1 unless $result;
my $columns = $result->{$action};
return 1 unless $columns;
my $pre_method = "pre_${action}_column";
my $post_method = "post_${action}_column";
my $method = "${action}_column";
my $driver = $class->driver;
my $ddl = $driver->dbd->ddl_class;
my @stmts;
push @stmts, sub { $self->pre_upgrade_class($class) };
push @stmts, $ddl->upgrade_begin($class);
push @stmts, sub { $self->$pre_method($class, $columns) };
push @stmts, $ddl->$method($class, $_) foreach @$columns;
push @stmts, sub { $self->$post_method($class, $columns) };
push @stmts, $ddl->upgrade_end($class);
push @stmts, sub { $self->post_upgrade_class($class) };
$self->run_statements($class, @stmts);
}
строка 2440 это
push @stmts, $ddl->$method($class, $_) foreach @$columns;
что делать? :(