On Tue, Mar 27, 2012 at 08:38:04AM +0200, Juanjo wrote: > I still can*t upgrade in the Centos Server. > > I have to install two Ubuntu servers. One with the 3.8 Version and one > with 4.0.1 version > (with APT). And make and upgrade per version, Dump the original database > and import to ubuntu, > for migrate to 3.8.10. Dump and migrate to version 4.0.1 and so the last > migration to the > centos to reward at 4.0.5 > > :( a lot of job and hours of restrore innodb tables, or changing all > tables form myisam to > innodb.
Your Scrip #10 has a Condition of 0, that is completely invalid. Either delete that row or go into the UI and fix it to be a valid condition and then select a Stage of disabled to disable the Scrip. Setting a condition or action to 0 is something we allowed in earlier versions of RT but wasn't a valid state to be in. Later versions of 3.8 began enforcing this. I suspect you chose an early enough version of 3.8 to avoid this. -kevin > Any help with this problem. > > El 21 de marzo de 2012 08:58, Juanjo <[1]juanji...@gmail.com> escribi*: > > My Database name is RT3. > > Execute the order to upgrade 3.7.19 and get this: > > Working with: > Type: mysql > Host: localhost > Name: rt3 > User: rt_user > DBA: root > [Wed Mar 21 07:57:27 2012] [debug]: RT's GnuPG libraries couldn't > successfully read your > configured GnuPG home directory (/opt/rt4/var/data/gpg). PGP support has > been disabled > (/opt/rt4/sbin/../lib/RT/Config.pm:595) > [Wed Mar 21 07:57:27 2012] [debug]: The RTAddressRegexp option is not > set in the config. Not > setting this option results in additional SQL queries to check whether > each address belongs > to RT or not. It is especially important to set this option if RT > recieves emails on > addresses that are not in the database or config. > (/opt/rt4/sbin/../lib/RT/Config.pm:454) > Now inserting data. > [Wed Mar 21 07:57:27 2012] [debug]: Going to load > 'etc/upgrade/3.7.19/content' data file > (/opt/rt4/sbin/../lib/RT/Handle.pm:759) > Couldn't finish 'insert' step. > > ERROR: Couldn't load data from 'etc/upgrade/3.7.19/content' for import: > > ERROR:RT::Scrip::Condition Unimplemented in RT::Handle. > (etc/upgrade/3.7.19/content line 27) > Compilation failed in require at /opt/rt4/sbin/../lib/RT/Handle.pm line > 760. > > My script table, i don*t know if i can post and attacchment. so i paste > the SQL > > -- phpMyAdmin SQL Dump > -- version 3.4.9 > -- [2]http://www.phpmyadmin.net > -- > -- Servidor: localhost > -- Tiempo de generaci*n: 21-03-2012 a las 08:53:29 > -- Versi*n del servidor: 5.5.21 > -- Versi*n de PHP: 5.3.10 > > SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; > SET time_zone = "+00:00"; > > /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; > /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; > /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; > /*!40101 SET NAMES utf8 */; > > -- > -- Base de datos: `rt3` > -- > > -- -------------------------------------------------------- > > -- > -- Estructura de tabla para la tabla `Scrips` > -- > > CREATE TABLE IF NOT EXISTS `Scrips` ( > `id` int(11) NOT NULL AUTO_INCREMENT, > `Description` varchar(255) DEFAULT NULL, > `ScripCondition` int(11) NOT NULL DEFAULT '0', > `ScripAction` int(11) NOT NULL DEFAULT '0', > `ConditionRules` text, > `ActionRules` text, > `CustomIsApplicableCode` text, > `CustomPrepareCode` text, > `CustomCommitCode` text, > `Stage` varchar(32) DEFAULT NULL, > `Queue` int(11) NOT NULL DEFAULT '0', > `Template` int(11) NOT NULL DEFAULT '0', > `Creator` int(11) NOT NULL DEFAULT '0', > `Created` datetime DEFAULT NULL, > `LastUpdatedBy` int(11) NOT NULL DEFAULT '0', > `LastUpdated` datetime DEFAULT NULL, > PRIMARY KEY (`id`) > ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=24 ; > > -- > -- Volcado de datos para la tabla `Scrips` > -- > > INSERT INTO `Scrips` (`id`, `Description`, `ScripCondition`, > `ScripAction`, > `ConditionRules`, `ActionRules`, `CustomIsApplicableCode`, > `CustomPrepareCode`, > `CustomCommitCode`, `Stage`, `Queue`, `Template`, `Creator`, `Created`, > `LastUpdatedBy`, > `LastUpdated`) VALUES > (1, 'On Correspond Open Tickets', 3, 17, NULL, NULL, NULL, NULL, NULL, > 'TransactionCreate', > 0, 1, 1, '2007-11-05 15:40:29', 1, '2007-11-05 15:40:29'), > (2, 'On Owner Change Notify Owner', 7, 4, NULL, NULL, NULL, NULL, NULL, > 'TransactionCreate', > 0, 16, 1, '2007-11-05 15:40:29', 1, '2007-11-05 15:40:29'), > (3, 'On Create Autoreply', 1, 1, NULL, NULL, NULL, NULL, NULL, > 'TransactionCreate', 0, 13, > 1, '2007-11-05 15:40:29', 1, '2007-11-05 15:40:29'), > (4, 'On Create Notify AdminCcs', 1, 8, NULL, NULL, NULL, NULL, NULL, > 'TransactionCreate', 0, > 3, 1, '2007-11-05 15:40:29', 1, '2007-11-05 15:40:29'), > (5, 'On Correspond Notify AdminCcs', 3, 8, NULL, NULL, NULL, NULL, NULL, > 'TransactionCreate', 0, 4, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (6, 'On Correspond Notify Requestors and Ccs', 3, 10, NULL, NULL, NULL, > NULL, NULL, > 'TransactionCreate', 0, 5, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (7, 'On Correspond Notify Other Recipients', 3, 14, NULL, NULL, NULL, > NULL, NULL, > 'TransactionCreate', 0, 5, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (8, 'On Comment Notify AdminCcs as Comment', 4, 7, NULL, NULL, NULL, > NULL, NULL, > 'TransactionCreate', 0, 6, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (9, 'On Comment Notify Other Recipients as Comment', 4, 13, NULL, NULL, > NULL, NULL, NULL, > 'TransactionCreate', 0, 5, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (10, NULL, 0, 2, NULL, NULL, NULL, NULL, NULL, 'TransactionCreate', 0, > 8, 1, '2007-11-05 > 15:40:29', 1, '2007-11-05 15:40:29'), > (11, 'When an approval ticket is created, notify the Owner and AdminCc > of the item awaiting > their approval', 10, 4, NULL, NULL, '\n $self->TicketObj->Type eq > ''approval'' and\n > $self->TransactionObj->Field eq ''Status'' and\n > $self->TransactionObj->NewValue eq ''open'' > and\n eval { $T::Approving = ($self->TicketObj->AllDependedOnBy( Type => > ''ticket'' ))[0] > }\n ', NULL, NULL, 'TransactionCreate', 2, 9, 1, '2007-11-05 15:40:29', > 1, '2007-11-05 > 15:40:29'), > (12, 'If an approval is rejected, reject the original and delete pending > approvals', 5, 15, > NULL, NULL, NULL, '\n# > ------------------------------------------------------------------- > #\nreturn(0) unless ( lc($self->TransactionObj->NewValue) eq "rejected" > or\n > lc($self->TransactionObj->NewValue) eq "deleted" );\n\nmy $rejected = > 0;\nmy $links = > $self->TicketObj->DependedOnBy;\nforeach my $link (@{ > $links->ItemsArrayRef }) {\n my $obj = > $link->BaseObj;\n if ($obj->QueueObj->IsActiveStatus($obj->Status)) {\n > if ($obj->Type eq > ''ticket'') {\n $obj->Comment(\n Content => $self->loc("Your request was > rejected."),\n );\n > $obj->SetStatus(\n Status => ''rejected'',\n Force => 1,\n );\n\n > $T::Approval = > $self->TicketObj; # so we can access it inside templates\n > $self->{TicketObj} = $obj; # we > want the original id in the token line\n $rejected = 1;\n }\n else {\n > $obj->SetStatus(\n > Status => ''deleted'',\n Force => 1,\n );\n }\n }\n}\n\n$links = > $self->TicketObj->DependsOn;\nforeach my $link (@{ $links->ItemsArrayRef > }) {\n my $obj = > $link->TargetObj;\n if ($obj->QueueObj->IsActiveStatus($obj->Status)) > {\n $obj->SetStatus(\n > Status => ''deleted'',\n Force => 1,\n );\n }\n}\n\n# Now magically turn > myself into a > Requestor Notify object...\nrequire RT::Action::Notify; bless($self, > ''RT::Action::Notify'');\n$self->{Argument} = ''Requestor''; > $self->Prepare;\n\nreturn > $rejected;\n# > ------------------------------------------------------------------- #\n ', > '"never needed"', 'TransactionCreate', 2, 12, 1, '2007-11-05 15:40:29', > 1, '2007-11-05 > 15:40:29'), > (13, 'When a ticket has been approved by any approver, add > correspondence to the original > ticket', 9, 15, NULL, NULL, NULL, '\n# > ------------------------------------------------------------------- > #\nreturn(0) unless > ($self->TicketObj->Type eq ''approval'');\n\nmy $note;\nmy $t = > $self->TicketObj->Transactions;\nwhile (my $o = $t->Next) {\n $note .= > $o->Content . "\\n" > if $o->ContentObj\n and $o->Content !~ /Default Approval/;\n}\n\nforeach > my $obj > ($self->TicketObj->AllDependedOnBy( Type => ''ticket'' )) {\n > $obj->Comment(\n Content => > $self->loc( "Your request has been approved by [_1]. Other approvals may > still be pending.", > # loc\n $self->TransactionObj->CreatorObj->Name,\n ) . "\\n" . > $self->loc( "Approver''s > notes: [_1]", # loc\n $note\n ),\n );\n $T::Approval = $self->TicketObj; > # so we can access > it inside templates\n $self->{TicketObj} = $obj; # we want the original > id in the token > line\n}\n\n# Now magically turn myself into a Requestor Notify > object...\nrequire > RT::Action::Notify; bless($self, > ''RT::Action::Notify'');\n$self->{Argument} = > ''Requestor''; $self->Prepare;\n\nreturn 1;\n# > ------------------------------------------------------------------- #\n > ', '"never needed"', > 'TransactionCreate', 2, 10, 1, '2007-11-05 15:40:29', 1, '2007-11-05 > 15:40:29'), > (14, 'When a ticket has been approved by all approvers, add > correspondence to the original > ticket', 9, 15, NULL, NULL, NULL, '\n# > ------------------------------------------------------------------- #\n# > Find all the > tickets that depend on this (that this is approving)\n\nmy $Ticket = > $self->TicketObj;\nmy > @TOP = $Ticket->AllDependedOnBy( Type => ''ticket'' );\nmy $links = > $Ticket->DependedOnBy;\nmy $passed = 0;\n\nwhile (my $link = > $links->Next) {\n my $obj = > $link->BaseObj;\n next if ($obj->HasUnresolvedDependencies( Type => > ''approval'' ));\n\n if > ($obj->Type eq ''ticket'') {\n $obj->Comment(\n Content => > $self->loc("Your request has been > approved."),\n );\n $T::Approval = $Ticket; # so we can access it inside > templates\n > $self->{TicketObj} = $obj; # we want the original id in the token line\n > $passed = 1;\n }\n > elsif ($obj->Type eq ''approval'') {\n $obj->SetStatus( Status => > ''open'', Force => 1 );\n > }\n elsif ($RT::UseCodeTickets and $obj->Type eq ''code'') {\n my $code = > $obj->Transactions->First->Content;\n my $rv;\n\n foreach my $TOP (@TOP) > {\n local $@;\n > $rv++ if eval $code;\n $RT::Logger->error("Cannot eval code: $@") if > $@;\n }\n\n if ($rv or > !@TOP) {\n $obj->SetStatus( Status => ''resolved'', Force => 1,);\n }\n > else {\n > $obj->SetStatus( Status => ''rejected'', Force => 1,);\n }\n }\n}\n\n# > Now magically turn > myself into a Requestor Notify object...\nrequire RT::Action::Notify; > bless($self, > ''RT::Action::Notify'');\n$self->{Argument} = ''Requestor''; > $self->Prepare;\n\nreturn 0; # > ignore $passed;\n# > ------------------------------------------------------------------- #\n > ', '"never needed"', 'TransactionCreate', 2, 11, 1, '2007-11-05 > 15:40:29', 1, '2007-11-05 > 15:40:29'), > (15, 'Notify Owner on Comment', 4, 4, NULL, NULL, '', '', '', > 'TransactionCreate', 0, 5, 12, > '2007-11-06 18:03:24', 12, '2007-11-06 18:03:24'), > (16, 'Notify Owner on Correspondence', 3, 4, NULL, NULL, '', '', '', > 'TransactionCreate', 0, > 5, 12, '2007-11-06 18:04:03', 12, '2007-11-06 18:04:03'), > (17, 'On Resolve in General-ES Reopen', 9, 15, NULL, NULL, '', 'return > 1;', '# get out > unless ticket is in Dispatch\n return 1 unless > $self->TicketObj->QueueObj->Name eq > "General-ES";\n\n # ok, re-open ticket\n > $RT::Logger->info("Re-openinging ticket #". > $self->TicketObj->id ." - tried to resolve in Dispatch");\n my ($status, > $msg) = > $self->TicketObj->SetStatus( "open" );\n\n return 1;\n', > 'TransactionCreate', 0, 1, 12, > '2007-11-06 18:08:14', 12, '2007-11-06 18:08:14'), > (18, 'On Resolve Set Owner', 9, 15, NULL, NULL, '', 'return 1;', '# get > actor ID\r\n my > $Actor = $self->TransactionObj->Creator;\r\n\r\n # if actor is > RT_SystemUser then get out of > here\r\n return 1 if $Actor == $RT::SystemUser->id;\r\n\r\n # get out > unless ticket owner is > nobody\r\n return 1 unless $self->TicketObj->Owner == > $RT::Nobody->id;\r\n\r\n # ok, try to > change owner\r\n $RT::Logger->info("Auto assign ticket #". > $self->TicketObj->id ." to user > #". $Actor );\r\n my ($status, $msg) = $self->TicketObj->SetOwner( > $Actor );\r\n unless( > $status ) {\r\n $RT::Logger->error( "Impossible to assign the ticket to > $Actor: $msg" );\r\n > return undef;\r\n }\r\n\r\nreturn 1;', 'TransactionCreate', 0, 1, 12, > '2007-11-06 18:15:05', > 12, '2007-11-06 18:15:05'), > (19, 'On Create Autoreply - General-DE', 1, 1, NULL, NULL, '', '', '', > 'Disabled', 0, 14, > 12, '2007-11-07 12:41:40', 12, '2007-11-07 12:41:40'), > (20, 'On Create Autoreply - General-NL', 1, 1, NULL, NULL, '', '', '', > 'Disabled', 0, 15, > 12, '2007-11-07 12:42:07', 12, '2007-11-07 12:42:07'), > (21, 'On Resolve in General-DE Reopen', 9, 15, NULL, NULL, '', 'return > 1;', '# get out > unless ticket is in Dispatch\r\n return 1 unless > $self->TicketObj->QueueObj->Name eq > "General-DE";\r\n\r\n # ok, re-open ticket\r\n > $RT::Logger->info("Re-openinging ticket #". > $self->TicketObj->id ." - tried to resolve in Dispatch");\r\n my > ($status, $msg) = > $self->TicketObj->SetStatus( "open" );\r\n\r\n return 1;\r\n', > 'TransactionCreate', 0, 1, > 12, '2007-11-07 14:02:07', 12, '2007-11-07 14:02:07'), > (22, 'On Resolve in General-NL Reopen', 9, 15, NULL, NULL, '', 'return > 1;', '# get out > unless ticket is in Dispatch\r\n return 1 unless > $self->TicketObj->QueueObj->Name eq > "General-NL";\r\n\r\n # ok, re-open ticket\r\n > $RT::Logger->info("Re-openinging ticket #". > $self->TicketObj->id ." - tried to resolve in Dispatch");\r\n my > ($status, $msg) = > $self->TicketObj->SetStatus( "open" );\r\n\r\n return 1;\r\n', > 'TransactionCreate', 0, 1, > 12, '2007-11-07 14:02:36', 12, '2007-11-07 14:02:36'), > (23, 'Notify Owner on Create', 1, 3, NULL, NULL, '', '', '', > 'TransactionCreate', 0, 16, 12, > '2007-11-20 19:46:12', 12, '2007-11-20 19:46:12'); > > /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; > /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; > /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; > > El 21 de marzo de 2012 01:40, Kevin Falcone > <[3]falc...@bestpractical.com> escribi*: > > On Tue, Mar 20, 2012 at 12:06:46PM +0100, Juanjo wrote: > > I installa the new scenario, dump the old database and import in the > new database. > > > > I try to upgrade the old to rt 4.0.5 installation. > > > > I do a Make initalize-database > > import the rt3 database on rt4 database and do: > > > > ./rt-setup-database --prompt-for-dba-password --action upgrade > > > > From 3.6.5 to 3.7.10 works fine > > > > but from 3.7.10 to 3.7.19 i get this error. > > > > Proceed [y/N]:y > > Processing 3.7.15 > > Now inserting data. > > Processing 3.7.19 > > Now inserting data. > > Couldn't finish 'upgrade' step. > > > > ERROR: Couldn't load data from './etc/upgrade/3.7.19/content' for > import: > > > > ERROR:RT::Scrip::Condition Unimplemented in RT::Handle. > (./etc/upgrade/3.7.19/content > line 27) > > Compilation failed in require at /opt/rt4/sbin/../lib/RT/Handle.pm > line 760. > > Try setting Set($LogToScreen,'debug') in your RT_SiteConfig.pm and run > just the 3.7.19 step > > ./sbin/rt-setup-database --action insert --datadir etc/upgrade/3.7.19 > > It'd also be interesting to see what you have in your Scrips table. > -kevin > > -- > Un saludo. > Juanjo Corral > > -- > Un saludo. > Juanjo Corral > > References > > Visible links > 1. mailto:juanji...@gmail.com > 2. http://www.phpmyadmin.net/ > 3. mailto:falc...@bestpractical.com
pgprlEteB7EX2.pgp
Description: PGP signature