List Info

Thread: migrating from trunk 1004 to 1186




migrating from trunk 1004 to 1186
user name
2006-07-30 01:35:21

I want to go from my version 1004 to something 4.0 flavored.

[rootchewbacca logs]#gem list --local
*** LOCAL GEMS ***
[...]
rails (1.1.4, 1.1.2, 1.1.0, 1.0.0, 0.14.4, 0.14.3.2969 , 0.14.3, 0.14.2)
    Web-application framework with template engine, control-flow layer,
    and ORM.

I've copied my database over to a test database, and have the "blog" directory set up on a test URL.
Database.yml is set up correctly to access it.  At this point, the database version is 42.
When I access /blog/admin to do the migration, I got errors about a missing triggers table.

ActiveRecord::StatementInvalid (Mysql::Error: Table 'typotest.triggers' doesn't exist: SELECT * FROM triggers WHERE (due_at <= '2006-07-29 21:00:01') ):
 &nbsp;  /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:120:in `log'

Adding the table, I then got errors about a missing "due_at" field which I should have figured from the above error.

ActiveRecord::StatementInvalid (Mysql::Error: Unknown column 'due_at' in 'where
clause': SELECT * FROM triggers WHERE (due_at <= '2006-07-29 21:01:36') ): &nbsp;  /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_ad
apter.rb:120:in `log'

Adding the due_at field as a 'datetime' type, I can then access the admin page. ; It wants to migrate me from version 42 to 48.
Sounds good. ; When I click "Update database now", the migration dies with

Application error

Typo failed to start properly&quot;


The logs complain that triggers table exists. =)  Errors are this...

ActiveRecord::StatementInvalid (Mysql::Error: Table 'triggers' already exists: CREATE TABLE triggers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `pending_item_id` int(11), `pending_item_type` varchar(255), `due_at` datetime, `trigger_method` varchar(255)) ENGINE=InnoDB):
&nbsp; &nbsp; /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:120:in `log'

and this...

[Sat Jul 29 21:03:40 2006] [error] [client 24.149.167.195] FastCGI: comm with server "/aaa/blog/public/dispatch.fcgi" aborted: error parsing headers: malformed header '== CreateTriggers  migrating =================================================='


I drop the triggers table and we go round again to square one.

ActiveRecord::StatementInvalid (Mysql::Error: Table 'typotest.triggers' doesn't exist: SELECT * FROM triggers WHERE (due_at <= '2006-07-29 21:15:30') ):
   ; /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:120:in `log'

What's a person to do to make this migrate right?&nbsp;

--
Ernie
http://www.shokk.com/blog/
migrating from trunk 1004 to 1186
user name
2006-07-30 02:09:59
Whenever you get a migration error, please do *not* try and
fix the
database by hand unless you've been told to do so by
someone who is
familiar with the migrations in question.

In your case, you should simply try to run `rake migrate`
from the
command-line (use `rake migrate RAILS_ENV=production` if
you're working
in the production environment). The web admin redirection is
really just
a pretty wrapper around this command, but unfortunately
sometimes
changes to the database can break even something as simple
as the web
admin migration page. So if the page gives you an error, use
the
command-line.

Again, that command is `rake migrate
RAILS_ENV=your_environment`

-Kevin

On Sat, 29 Jul 2006, Ernie Oporto wrote:

> I want to go from my version 1004 to something 4.0
flavored.
>
> [rootchewbacca logs]#gem list --local
> *** LOCAL GEMS ***
> [...]
> rails (1.1.4, 1.1.2, 1.1.0, 1.0.0, 0.14.4, 0.14.3.2969,
0.14.3, 0.14.2)
>   Web-application framework with template engine,
control-flow layer,
>   and ORM.
>
> I've copied my database over to a test database, and
have the "blog"
> directory set up on a test URL.
> Database.yml is set up correctly to access it.  At this
point, the database
> version is 42.
> When I access /blog/admin to do the migration, I got
errors about a missing
> triggers table.
>
> ActiveRecord::StatementInvalid (Mysql::Error: Table
'typotest.triggers'
> doesn't exist: SELECT * FROM triggers WHERE (due_at
<= '2006-07-29
> 21:00:01') ):
>
>
/vendor/rails/activerecord/lib/active_record/connection_adap
ters/abstract_adapter.rb:120:in
> `log'
>
> Adding the table, I then got errors about a missing
"due_at" field which I
> should have figured from the above error.
>
> ActiveRecord::StatementInvalid (Mysql::Error: Unknown
column 'due_at' in
> 'where
> clause': SELECT * FROM triggers WHERE (due_at <=
'2006-07-29 21:01:36')
> ):
>
/vendor/rails/activerecord/lib/active_record/connection_adap
ters/abstract_ad
> apter.rb:120:in `log'
>
> Adding the due_at field as a 'datetime' type, I can
then access the admin
> page.  It wants to migrate me from version 42 to 48.
> Sounds good.  When I click "Update database
now", the migration dies with
> Application error Typo failed to start properly"
>
>
> The logs complain that triggers table exists. =) 
Errors are this...
>
> ActiveRecord::StatementInvalid (Mysql::Error: Table
'triggers' already
> exists: CREATE TABLE triggers (`id` int(11) DEFAULT
NULL auto_increment
> PRIMARY KEY, `pending_item_id` int(11),
`pending_item_type` varchar(255),
> `due_at` datetime, `trigger_method` varchar(255))
ENGINE=InnoDB):
>
>
/vendor/rails/activerecord/lib/active_record/connection_adap
ters/abstract_adapter.rb:120:in
> `log'
>
> and this...
>
> [Sat Jul 29 21:03:40 2006] [error] [client
24.149.167.195] FastCGI: comm
> with server
"/aaa/blog/public/dispatch.fcgi" aborted: error
parsing headers:
> malformed header '== CreateTriggers  migrating
> =================================================='
>
>
> I drop the triggers table and we go round again to
square one.
>
> ActiveRecord::StatementInvalid (Mysql::Error: Table
'typotest.triggers'
> doesn't exist: SELECT * FROM triggers WHERE (due_at
<= '2006-07-29
> 21:15:30') ):
>
>
/vendor/rails/activerecord/lib/active_record/connection_adap
ters/abstract_adapter.rb:120:in
> `log'
>
> What's a person to do to make this migrate right?
>
> -- 
> Ernie
> http://www.shokk.com/blog/

>

-- 
Kevin Ballard
http://kevin.sb.org
kevinsb.org
_______________________________________________
Typo-list mailing list
Typo-listrubyforge.org
http:
//rubyforge.org/mailman/listinfo/typo-list
migrating from trunk 1004 to 1186
user name
2006-08-02 16:18:45
Worked beautifully.  Thanks!&nbsp; The new admin interface is much prettier, too.  Good work guys!

On 7/29/06, Kevin Ballard <sb.org"> kevinsb.org>; wrote:

Again, that command is `rake migrate RAILS_ENV=your_environment`

-Kevin



--
Ernie
http://www.shokk.com/blog/
[1-3]

about | contact  Other archives ( Real Estate discussion Medical topics )