On Apr 28, 12:57 pm, Frederick Cheung <frederick.che...@gmail.com>
wrote:

> > mysql> insert into confirmations (quote_id) values(188);
> > Query OK, 1 row affected (0.01 sec)
>
> > mysql> select * from confirmations where quote_id = 188;
>
> Why are you filtering by quote_id here?
>

Fred,

Just to show that the mysql CLI client allowed me to manually add
another row with the same quote_id of 188.  So it is not mysql server
that is reporting the Duplicate Entry/Statement invalid.  It is being
reported by the mysql adapter of ActiveRecord.

Here is more of the backtrace which I omitted earlier.

 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/abstract_adapter.rb:227:in `log'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/mysql_adapter.rb:324:in `execute'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/abstract/database_statements.rb:259:in
`insert_sql'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/mysql_adapter.rb:334:in `insert_sql'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/abstract/database_statements.rb:44:in
`insert_without_query_dirty'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/abstract/query_cache.rb:19:in `insert'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
base.rb:2961:in `create_without_timestamps'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
timestamp.rb:53:in `create_without_callbacks'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
callbacks.rb:266:in `create'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
base.rb:2927:in `create_or_update_without_callbacks'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
callbacks.rb:250:in `create_or_update'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
base.rb:2577:in `save_without_validation'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
validations.rb:1090:in `save_without_dirty'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
dirty.rb:79:in `save_without_transactions'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:229:in `send'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:229:in `with_transaction_returning_status'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
connection_adapters/abstract/database_statements.rb:136:in
`transaction'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:182:in `transaction'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:228:in `with_transaction_returning_status'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:196:in `save'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:208:in `rollback_active_record_state!'
 /usr/lib64/ruby/gems/1.8/gems/activerecord-2.3.10/lib/active_record/
transactions.rb:196:in `save'
 [RAILS_ROOT]/app/controllers/confirmation_controller.rb:17:in
`create'


The thing is that the SQL being reported looks completely correct and
should not fail.

Any ideas?

O.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to