Lost connection to MySQL server during query: SHOW FIELDS FROM orders

I am getting an intermittent error, the one above. I have not gone into
production, i am still in development. I seem to lose connection to the
MySQL server. If I do a refresh it comes back and all is fine.

I have not been able to duplicate this. It simply occurs perhaps 1 out
of ten times. Is this a characteristic of the development mode? I am
using WEBrick.
thanks, minka.

Here is the error:
ActiveRecord::StatementInvalid in ProductsController#save_order
Mysql::Error: Lost connection to MySQL server during query: SHOW FIELDS
FROM orders

Here is a partial trace:
RAILS_ROOT: script/../config/..
Application Trace | Framework Trace | Full Trace

/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/connection_adapters/abstract_adapter.rb:120:in
`log'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/connection_adapters/mysql_adapter.rb:184:in
`execute'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/connection_adapters/mysql_adapter.rb:292:in
`columns'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/base.rb:696:in
`columns'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/base.rb:1969:in
`attributes_from_column_definition'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/base.rb:1351:in
`initialize_without_callbacks'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/callbacks.rb:236:in
`initialize'
app/controllers/products_controller.rb:87:in `save_order'
-e:4

It might be related to using the ruby mysql bindings instead of the native C bindings for your platform. Install the 'mysql' gem. It will build a native code extension callable from ruby which eliminates most mysql connection drops.

After installing the gem, make sure it is active by doing the following (swiped this from a post earlier this week!):

cremes$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'mysql'
=> false
irb(main):003:0> puts Mysql::VERSION
20700
=> nil

cr

If all else fails, try pre-loading your models if you are storing whole
objects in the session. I was having what appeared to be intermittent
db issues but the problem was the serialization of objects to the
session.

class ApplicationController < ActionController::Base
      model :order, :member, :cart
end

Good luck,
Chad