heartcombo / devise

Flexible authentication solution for Rails with Warden.
http://blog.plataformatec.com.br/tag/devise/
MIT License
23.97k stars 5.55k forks source link

exception raise by #getlocal call #240

Closed wtn closed 14 years ago

wtn commented 14 years ago

NoMethodError (undefined method `getlocal' for Wed, 28 Apr 2010 03:42:01 +0000:DateTime) I'm using Rails 3 beta 3 and ruby 1.9.2 and devise 1.1.rc1

josevalim commented 14 years ago

What is the backtrace? Which ORM?

josevalim commented 14 years ago

Ah, and which Ruby 1.9.2 patch version (note that Rails does not support 1.9.2-preview1, only head).

wtn commented 14 years ago

pg 0.9.0 and ruby 1.9.2dev (2010-04-02 trunk 27160) [x86_64-linux]

wtn commented 14 years ago

/usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/time_with_zone.rb:74:in localtime' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/abstract/quoting.rb:65:inquoted_date' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/postgresql_adapter.rb:463:in quoted_date' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/abstract/quoting.rb:31:inquote' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/postgresql_adapter.rb:407:in quote' arel (0.3.3) lib/arel/engines/sql/engine.rb:24:inmethod_missing' arel (0.3.3) lib/arel/engines/sql/formatters.rb:7:in quote' arel (0.3.3) lib/arel/engines/sql/formatters.rb:111:inscalar' arel (0.3.3) lib/arel/engines/sql/core_extensions/object.rb:5:in to_sql' arel (0.3.3) lib/arel/engines/sql/formatters.rb:76:invalue' arel (0.3.3) lib/arel/engines/sql/primitives.rb:38:in to_sql' arel (0.3.3) lib/arel/engines/sql/primitives.rb:20:informat' arel (0.3.3) lib/arel/engines/sql/relations/compiler.rb:90:in block in assignment_sql' arel (0.3.3) lib/arel/engines/sql/relations/compiler.rb:88:inmap' arel (0.3.3) lib/arel/engines/sql/relations/compiler.rb:88:in assignment_sql' arel (0.3.3) lib/arel/engines/sql/relations/compiler.rb:69:inupdate_sql' arel (0.3.3) lib/arel/engines/sql/relations/writes.rb:16:in to_sql' arel (0.3.3) lib/arel/engines/sql/engine.rb:45:inupdate' arel (0.3.3) lib/arel/algebra/relations/writes.rb:33:in call' arel (0.3.3) lib/arel/session.rb:42:inupdate' arel (0.3.3) lib/arel/algebra/relations/relation.rb:68:in update' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/base.rb:1992:inupdate' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/locking/optimistic.rb:70:in update_with_lock' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/attribute_methods/dirty.rb:68:inupdate_with_dirty' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/timestamp.rb:66:in update_with_timestamps' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/callbacks.rb:287:inblock in update_with_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:408:in _run_update_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/callbacks.rb:286:inupdate_with_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/base.rb:1983:in create_or_update' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/callbacks.rb:273:inblock in create_or_update_with_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:408:in _run_save_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/callbacks.rb:272:increate_or_update_with_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/base.rb:1656:in save' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/validations.rb:57:insave_with_validation' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/attribute_methods/dirty.rb:21:in save_with_dirty' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:229:inblock in with_transaction_returning_status' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in transaction' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:182:intransaction' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:228:in with_transaction_returning_status' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:196:inblock in save_with_transactions' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:208:in rollback_active_record_state!' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/transactions.rb:196:insave_with_transactions' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/devise-1.1.rc1/lib/devise/models/trackable.rb:26:in update_tracked_fields!' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/devise-1.1.rc1/lib/devise/hooks/trackable.rb:7:inblock in <top (required)>' warden (0.10.3) lib/warden/hooks.rb:14:in call' warden (0.10.3) lib/warden/hooks.rb:14:inblock in _run_callbacks' warden (0.10.3) lib/warden/hooks.rb:9:in each' warden (0.10.3) lib/warden/hooks.rb:9:in_run_callbacks' warden (0.10.3) lib/warden/manager.rb:53:in _run_callbacks' warden (0.10.3) lib/warden/proxy.rb:153:inset_user' warden (0.10.3) lib/warden/proxy.rb:261:in _perform_authentication' warden (0.10.3) lib/warden/proxy.rb:105:inauthenticate!' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/devise-1.1.rc1/app/controllers/devise/sessions_controller.rb:13:in create' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/implicit_render.rb:4:insend_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/abstract_controller/base.rb:153:in process_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/rendering.rb:11:inprocess_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/instrumentation.rb:29:in block in process_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/notifications/instrumenter.rb:18:ininstrument' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/notifications.rb:48:in instrument' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/instrumentation.rb:28:inprocess_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/abstract_controller/callbacks.rb:18:in block in process_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:448:in_run584404874648333118process_action4468514087282093511callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:404:in _run_process_action_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:88:inrun_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/abstract_controller/callbacks.rb:17:in process_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/rescue.rb:8:inprocess_action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/abstract_controller/base.rb:123:in process' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/abstract_controller/rendering.rb:39:inprocess' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal.rb:84:in dispatch' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal/rack_delegation.rb:14:indispatch' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_controller/metal.rb:124:in block in action' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/routing/route_set.rb:29:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/routing/route_set.rb:29:in call' rack-mount (0.6.1) lib/rack/mount/recognition/route_set.rb:75:inblock in call' rack-mount (0.6.1) lib/rack/mount/recognition/code_generation.rb:99:in block in recognize' rack-mount (0.6.1) lib/rack/mount/recognition/code_generation.rb:83:inoptimized_each' rack-mount (0.6.1) lib/rack/mount/recognition/code_generation.rb:98:in recognize' rack-mount (0.6.1) lib/rack/mount/recognition/route_set.rb:66:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/routing/route_set.rb:458:in call' warden (0.10.3) lib/warden/manager.rb:35:inblock in call' warden (0.10.3) lib/warden/manager.rb:34:in catch' warden (0.10.3) lib/warden/manager.rb:34:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/query_cache.rb:31:in block in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/abstract/query_cache.rb:35:incache' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/query_cache.rb:11:in cache' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/query_cache.rb:30:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.0.beta3/lib/active_record/connection_adapters/abstract/connection_pool.rb:365:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/haml-3.0.0.rc.2/lib/sass/plugin/rack.rb:44:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/head.rb:14:in call' rack (1.1.0) lib/rack/methodoverride.rb:24:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/params_parser.rb:19:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/flash.rb:167:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/session/cookie_store.rb:107:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/cookies.rb:202:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/callbacks.rb:46:in block in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:410:in_run_call_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:88:in run_callbacks' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/callbacks.rb:44:incall' rack (1.1.0) lib/rack/sendfile.rb:105:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/remote_ip.rb:48:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/show_exceptions.rb:48:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/railties-3.0.0.beta3/lib/rails/rack/logger.rb:13:incall' rack (1.1.0) lib/rack/runtime.rb:17:in call' rack (1.1.0) lib/rack/lock.rb:11:inblock in call' internal:prelude:10:in synchronize' rack (1.1.0) lib/rack/lock.rb:11:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0.beta3/lib/action_dispatch/middleware/static.rb:30:in call' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/railties-3.0.0.beta3/lib/rails/application.rb:132:incall' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/railties-3.0.0.beta3/lib/rails/application.rb:81:in method_missing' /usr/local/ruby/lib/ruby/gems/1.9.1/gems/railties-3.0.0.beta3/lib/rails/rack/log_tailer.rb:15:incall' rack (1.1.0) lib/rack/content_length.rb:13:in call' rack (1.1.0) lib/rack/handler/webrick.rb:48:inservice' /usr/local/ruby/lib/ruby/1.9.1/webrick/httpserver.rb:111:in service' /usr/local/ruby/lib/ruby/1.9.1/webrick/httpserver.rb:70:inrun' /usr/local/ruby/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

wtn commented 14 years ago

NoMethodError in Devise/sessionsController#create

josevalim commented 14 years ago

1) Your backtrace points, for some reason, that it's using Ruby 1.9.1 gems;

2) It doesn't look like a Devise bug, but a Rails bug. Other models with datetime attributes works ok? Have you tried recompiling ruby 1.9.2 to a more up to date version?

mattiasarro commented 13 years ago

I had the same issue with Mongoid 2.0.0.beta.20 + Devise 1.1.3 + MRI1.8.7-p302

For some reason @user.current_sign_in_at was recoqnized as a String. I removed the current_sign_in_at field from the problematic user record (with futon4mongo) and everything now works as expected. Beats me what caused it..