I had to dig through the source and do a lot of debug printing, but I
figured out that because I was using NavigableString objects generated
from
RubyfulSoup parsing lib, instead of String, the drb server was not
properly
unmarshalling the object.
I fixed it by calling to_s on all my strings.
ActiveRecord and the local ferret server handled this fine, but the
remote
one chokes.
The error was masked twice by the exception trapping code in
acts_as_ferret.
How about using responds_to? instead of catching NoMethodError so that
underlying errors will be exposed.