Sorry Nico, nothing yet… it's hard to avoid the db requirements. Maybe you can only set observers if ENV['RAILS_GROUPS'] isn't set to assets?
-- Pat On 07/11/2011, at 4:25 PM, nico wrote: > Anyone any ideas here? > > > On 5 Nov., 16:28, nico <[email protected]> wrote: >> Sure: >> >> config.active_record.observers = [:company_cache_observer, >> :layout_cache_observer, >> :user_observer, >> :userpoints_observer, >> :ownership_observer] >> On 5 Nov., 16:13, Pat Allan <[email protected]> wrote: >> >> >> >> >> >> >> >>> Hi Nico >> >>> Can you show us how you're loading the observers in your application.rb >>> file? >> >>> -- >>> Pat >> >>> On 05/11/2011, at 4:02 PM, nico wrote: >> >>>> Strangely, thinking sphinx's model loading in define_index triggers a >>>> database connection to be established when the model with define_index >>>> is observed by an observer. >> >>>> This causes rake tasks like assets:precompile to depend on a db >>>> connection which should normally not be required. This dependency >>>> makes asset compilation on Heroku fail. If I remove the observer >>>> loading in application.rb, the database dependency does't exist and >>>> rake tasks work fine without a db configured. >> >>>> It's quite hard to debug this, help is greatly appreciated! Here is >>>> the stack trace for rake assets:precompile when rails is configured >>>> with a non existing database and using observers: >> >>>> bundle exec rake assets:precompile RAILS_ENV=staging --trace >>>> ** Invoke assets:precompile (first_time) >>>> ** Execute assets:precompile >>>> /Users/nico/.rvm/rubies/ruby-1.9.2-p290/bin/ruby /Users/nico/.rvm/gems/ >>>> ruby-1.9.2-p290/bin/rake assets:precompile:all RAILS_ENV=staging >>>> RAILS_GROUPS=assets --trace >>>> ** Invoke assets:precompile:all (first_time) >>>> ** Execute assets:precompile:all >>>> ** Invoke assets:precompile:primary (first_time) >>>> ** Invoke assets:environment (first_time) >>>> ** Execute assets:environment >>>> ** Invoke environment (first_time) >>>> ** Execute environment >>>> rake aborted! >>>> FATAL: database "non_existing_database" does not exist >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:1032:in >>>> `initialize' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:1032:in `new' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:1032:in >>>> `connect' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:301:in >>>> `initialize' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:28:in `new' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/postgresql_adapter.rb:28:in >>>> `postgresql_connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:304:in >>>> `new_connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:323:in >>>> `checkout_new_connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:265:in >>>> `block (2 levels) in checkout' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:261:in >>>> `loop' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:261:in >>>> `block in checkout' >>>> /Users/nico/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb: >>>> 201:in `mon_synchronize' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:260:in >>>> `checkout' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:162:in >>>> `connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_pool.rb:409:in >>>> `retrieve_connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_specification.rb: >>>> 107:in `retrieve_connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/connection_adapters/abstract/connection_specification.rb: >>>> 89:in `connection' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/base.rb:1473:in `replace_bind_variables' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/base.rb:1460:in `sanitize_sql_array' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/base.rb:1366:in `sanitize_sql_for_conditions' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/relation/query_methods.rb:259:in `build_where' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/relation/query_methods.rb:124:in `where' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.1/lib/ >>>> active_record/base.rb:444:in `where' >>>> /Users/nico/Rails/myapp/app/models/user.rb:194:in `<class:User>' >>>> /Users/nico/Rails/myapp/app/models/user.rb:100:in `<top (required)>' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `block in require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:225:in `load_dependency' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:348:in `require_or_load' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:489:in `load_missing_constant' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:181:in `block in const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `each' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/aws-s3-0.6.2/lib/aws/s3/ >>>> extensions.rb:206:in `const_missing_from_s3_library' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:501:in `load_missing_constant' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:181:in `block in const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `each' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/aws-s3-0.6.2/lib/aws/s3/ >>>> extensions.rb:206:in `const_missing_from_s3_library' >>>> /Users/nico/Rails/myapp/app/models/company.rb:103:in `<class:Company>' >>>> /Users/nico/Rails/myapp/app/models/company.rb:45:in `<top (required)>' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `block in require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:225:in `load_dependency' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:240:in `require' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:348:in `require_or_load' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:489:in `load_missing_constant' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:181:in `block in const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `each' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/aws-s3-0.6.2/lib/aws/s3/ >>>> extensions.rb:206:in `const_missing_from_s3_library' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:501:in `load_missing_constant' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:181:in `block in const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `each' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/ >>>> active_support/dependencies.rb:179:in `const_missing' >>>> /Users/nico/.rvm/gems/ruby-1.9.2-p290/gems/aws-s3-0.6.2/lib/aws/s3/ >>>> extensions.rb:206:in `const_missing_from_s3_library' >>>> /Users/nico/Rails/myapp/app/models/cache_sweepers/ >>>> company_cache_observer.rb:5:in >> >> ... >> >> Erfahren Sie mehr » > > -- > You received this message because you are subscribed to the Google Groups > "Thinking Sphinx" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/thinking-sphinx?hl=en. > -- You received this message because you are subscribed to the Google Groups "Thinking Sphinx" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/thinking-sphinx?hl=en.
