I"ve recently starting using sinatra and sequel for some rest based service
and I love the simplicity of Sequel.
However, when the system is idle for a while ( I haven't determined exact
idle time, a couple of days), any new connections will throw the following
exception and has to be rebooted to solve the problem. Can you determine
if this is a sequel thing or a JTDS driver issue?
The relevant portion of the stack trace is the following:
equel::DatabaseError - Java::JavaSql::SQLException: Invalid state, the
Connection object is closed.:
net.sourceforge.jtds.jdbc.JtdsConnection.checkOpen(net/sourceforge/jtds/jdbc/JtdsConnection.java:1744)
net.sourceforge.jtds.jdbc.JtdsConnection.createStatement(net/sourceforge/jtds/jdbc/JtdsConnection.java:2362)
java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:606)
Sequel::JDBC::Database.statement(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:758)
Sequel::JDBC::Database.statement(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:758)
Sequel::JDBC::Database.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:368)
Sequel::JDBC::Database.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:368)
Sequel::ThreadedConnectionPool.hold(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/connection_pool/threaded.rb:104)
Sequel::ThreadedConnectionPool.hold(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/connection_pool/threaded.rb:104)
Sequel::ThreadedConnectionPool.hold(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/connection_pool/threaded.rb:93)
Sequel::ThreadedConnectionPool.hold(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/connection_pool/threaded.rb:93)
Sequel::Database.synchronize(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/database/connecting.rb:234)
Sequel::Database.synchronize(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/database/connecting.rb:234)
Sequel::JDBC::Database.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:367)
Sequel::JDBC::Database.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:367)
Sequel::Dataset.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:906)
Sequel::Dataset.execute(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:906)
Sequel::JDBC::Dataset.fetch_rows(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:838)
Sequel::JDBC::Dataset.fetch_rows(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/adapters/jdbc.rb:838)
Sequel::Dataset.each(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:139)
Sequel::Dataset.each(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:139)
Sequel::Dataset.single_record(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:639)
Sequel::Dataset.single_record(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:639)
Sequel::Dataset.first(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:191)
Sequel::Dataset.first(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sequel-4.12.0/lib/sequel/dataset/actions.rb:191)
DBAccess.simple_query(/opt/dxp-apps/web/han/payment_server/blue/non_rails/core/db_access.rb:21)
DBAccess.simple_query(/opt/dxp-apps/web/han/payment_server/blue/non_rails/core/db_access.rb:21)
CreditCardPersistence.load_by_token(/opt/dxp-apps/web/han/payment_server/blue/non_rails/domain/credit_card_persistence.rb:41)
CreditCardPersistence.load_by_token(/opt/dxp-apps/web/han/payment_server/blue/non_rails/domain/credit_card_persistence.rb:41)
CreditCardStore.retrieve(/opt/dxp-apps/web/han/payment_server/blue/non_rails/domain/credit_card_store.rb:26)
CreditCardStore.retrieve(/opt/dxp-apps/web/han/payment_server/blue/non_rails/domain/credit_card_store.rb:26)
RUBY.HEAD
/:token(/opt/dxp-apps/web/han/payment_server/blue/non_rails/sinatra/credit_card_api.rb:18)
org.jruby.RubyMethod.call(org/jruby/RubyMethod.java:124)
RUBY.compile!(/opt/dxp-apps/web/han/payment_server/blue/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603)
org.jruby.RubyProc.call(org/jruby/RubyProc.java:271)
Thanks!
Shane
--
You received this message because you are subscribed to the Google Groups
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sequel-talk.
For more options, visit https://groups.google.com/d/optout.