I''m trying to use the Ferret DRB server to avoid concurrency issues
when
using multiple mongrels. I can successfully add and edit data on my
index via the DRB server, however, when I search the index, I get the
following error:
DRb::DRbConnError (DRb::DRbServerNotFound):
/usr/lib/ruby/1.8/drb/drb.rb:1647:in `current_server''
/usr/lib/ruby/1.8/drb/drb.rb:1709:in `to_id''
/usr/lib/ruby/1.8/drb/drb.rb:1045:in `initialize''
/usr/lib/ruby/1.8/drb/drb.rb:639:in `make_proxy''
/usr/lib/ruby/1.8/drb/drb.rb:556:in `dump''
/usr/lib/ruby/1.8/drb/drb.rb:600:in `send_request''
/usr/lib/ruby/1.8/drb/drb.rb:599:in `send_request''
/usr/lib/ruby/1.8/drb/drb.rb:903:in `send_request''
/usr/lib/ruby/1.8/drb/drb.rb:1191:in `send_message''
/usr/lib/ruby/1.8/drb/drb.rb:1083:in `method_missing''
/usr/lib/ruby/1.8/drb/drb.rb:1167:in `open''
/usr/lib/ruby/1.8/drb/drb.rb:1082:in `method_missing''
/usr/lib/ruby/1.8/drb/drb.rb:1100:in `with_friend''
/usr/lib/ruby/1.8/drb/drb.rb:1081:in `method_missing''
/vendor/plugins/acts_as_ferret/lib/remote_index.rb:20:in
`find_id_by_contents''
/vendor/plugins/acts_as_ferret/lib/class_methods.rb:120:in
`find_id_by_contents''
/vendor/plugins/acts_as_ferret/lib/class_methods.rb:176:in
`ar_find_by_contents''
/vendor/plugins/acts_as_ferret/lib/class_methods.rb:170:in
`find_records_lazy_or_not''
/vendor/plugins/acts_as_ferret/lib/class_methods.rb:86:in
`find_by_contents''
/app/models/article.rb:104:in `full_text_search''
/app/controllers/search_controller.rb:93:in `index''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in
`perform_action_without_filters''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:632:in
`call_filter''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:619:in
`perform_action_without_benchmark''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue''
/usr/lib/ruby/1.8/benchmark.rb:293:in `measure''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/rescue.rb:83:in
`perform_action''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in
`process_without_filters''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in
`process_without_session_management_support''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/session_management.rb:114:in
`process''
/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:330:in
`process''
/usr/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in
`dispatch''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:78:in
`process''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:76:in
`process''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:618:in
`process_client''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:617:in
`process_client''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:271:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:270:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:127:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in
`run''
/usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:243
/usr/bin/mongrel_rails:16
-----------------
When I''m adding/editing data in the index, my ferret_server.log file
shows the following:
#method_missing(:add, ["Article", {:synopsis=>"Analysis and
Projections", :status=>1, :player_names=>"",
:team_names=>"",
:publisher=>"", :title=>"Article Title",
:db_state=>0, :id=>1,
:article_published_date=>1189115220}])
#method_missing(:add, ["Article", {:synopsis=>"Analysis and
Projections", :status=>1, :player_names=>"",
:team_names=>"",
:publisher=>"", :title=>"Article Title 1",
:db_state=>0, :id=>1,
:article_published_date=>1189115220}])
#method_missing(:add, ["Player", {:last_name=>"Smith",
:first_name=>"Walter", :db_state=>0, :id=>1}])
#method_missing(:add, ["Team", {:name=>"Kalispell HS",
:db_state=>0,
:id=>13}])
-----------------
I''m running the following environment:
Linux version 2.6.16.29-xen_3.0.3.0
mongrel (1.0.1)
mongrel_cluster (1.0.2, 0.2.1)
ferret (0.11.4)
acts_as_ferret stable plugin (as of 9/7/2007)
I have no problem running this application on my local development
environment... and I had no problems running in this hosting environment
before I started using Ferret DRB.
Here are some example sorts and/or filters I''m using in my searches
(not
sure if this matters to Ferret DRB or not):
Ferret::Search::SortField.new(:article_published_date, :reverse => true)
Ferret::Search::Sort.new([Ferret::Search::SortField::SCORE, date_sort])
Ferret::Search::RangeQuery.new(:article_published_date, :>= =>
UserSystem::APP_DEFAULTS[:days_for_new].days.ago.utc.to_i.to_s, :<= =>
Time.now.utc.to_i.to_s)
Ferret::Search::Sort.new([Ferret::Search::SortField.new(:article_published_date,
:reverse => true)])
Any ideas why my searches wouldn''t be working?
--
Posted via http://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---