Hi
I use Ferret 0.11.4 and the latest stabel version of the acts_as_ferret
plugin.
To the issue. if I do Model.rebuild_index and after that try to update
one of my objects of that Model I get:
File Not Found Error occured at <except.c>:117 in xpop_context
Error occured in fs_store.c:329 - fs_open_input
tried to open
“/Users/mattias/Sites/thm/photo_archive/index/development/asset/_b.cfs”
but it doesn’t exist:
If I delete the entire index folder and update again it works fine. it
breaks only if I do Model.rebuild_index.
Any suggestions?
More info:
I can also make it work by doing.
Model.rebuild_index
Model.find_by_contents
Then i can update/save a record again.
On 2007-06-08, at 1:29 PM, Mattias B. wrote:
If I delete the entire index folder and update again it works fine. it
breaks only if I do Model.rebuild_index.
hey … sounds like you had another process access/modify the
index… did you try it with the ferret drb server?
Ben
On Fri, Jun 08, 2007 at 01:41:34PM +0200, Mattias B. wrote:
No - local index.
is this in development mode with 1 mongrel instance? if yes, make sure
your Mongrel doesn’t do index updates while you run rebuild_index from
the console. Even better, run these tests without mongrel running, or in
another RAILS_ENV.
With multiple mongrels, use the DRb server.
Jens
–
Jens Krämer
webit! Gesellschaft für neue Medien mbH
Schnorrstraße 76 | 01069 Dresden
Telefon +49 351 46766-0 | Telefax +49 351 46766-66
[email protected] | www.webit.de
Amtsgericht Dresden | HRB 15422
GF Sven Haubold, Hagen Malessa
Mattias B. wrote:
Jens K. wrote:
On Fri, Jun 08, 2007 at 01:41:34PM +0200, Mattias B. wrote:
No - local index.
is this in development mode with 1 mongrel instance? if yes, make sure
your Mongrel doesn’t do index updates while you run rebuild_index from
the console. Even better, run these tests without mongrel running, or in
another RAILS_ENV.
With multiple mongrels, use the DRb server.
Jens
I turned of mongrel and rebuilt - and it worked.
Thanks for the help
When moving this to the production server it fails again. Here i have
the same vesion of the gem and plug-in. The server runs lighttpd and
fast-cgi. i can’t re-index this class if it has :index => :no. if I
remove this from the :fields it works again.
Looks like this
acts_as_ferret({:store_class_name => true,
:fields => { :title => {},
:date_comment_index => {:index => :no}
}
}, { :analyzer =>
Ferret::Analysis::StandardAnalyzer.new([]) })
As I said, if i remove :index => :no it works.
Is the solution to change to DRb?
mattias
Jens K. wrote:
On Fri, Jun 08, 2007 at 01:41:34PM +0200, Mattias B. wrote:
No - local index.
is this in development mode with 1 mongrel instance? if yes, make sure
your Mongrel doesn’t do index updates while you run rebuild_index from
the console. Even better, run these tests without mongrel running, or in
another RAILS_ENV.
With multiple mongrels, use the DRb server.
Jens
I turned of mongrel and rebuilt - and it worked.
Thanks for the help
On Thu, Jun 14, 2007 at 06:35:12PM +0200, Mattias B. wrote:
fast-cgi. i can’t re-index this class if it has :index => :no. if I
As I said, if i remove :index => :no it works.
Is the solution to change to DRb?
At least you should give it a try. However I cannot imaging how having a
field indexed or not should influence rebuilding.
Jens
–
Jens Krämer
webit! Gesellschaft für neue Medien mbH
Schnorrstraße 76 | 01069 Dresden
Telefon +49 351 46766-0 | Telefax +49 351 46766-66
[email protected] | www.webit.de
Amtsgericht Dresden | HRB 15422
GF Sven Haubold, Hagen Malessa
On Fri, Jun 15, 2007 at 11:17:27AM +0200, Mattias B. wrote:
/vendor/plugins/acts_as_ferret/lib/local_index.rb:217:in `add_field'
Does this help?
yeah, jusat do what it says - disable term vector storage by adding
:term_vector => :no to the field options for the :index => :no field.
AAF trunk now should handle this correctly
Jens
–
Jens Krämer
webit! Gesellschaft für neue Medien mbH
Schnorrstraße 76 | 01069 Dresden
Telefon +49 351 46766-0 | Telefax +49 351 46766-66
[email protected] | www.webit.de
Amtsgericht Dresden | HRB 15422
GF Sven Haubold, Hagen Malessa
Hi,
I’m not sure if this has been brought up before: I found a bug in
StandardTokenizer which misinterprets non-ASCII characters as word
boundaries. This happens only with words that contain non-
alphanumeric characters.
Consider this example:
The text ‘Gerd Schröder Straße’ is properly tokenized to:
[“Gerd”, “Schröder”, “Straße”]
as well as ‘Gerd-Schroeder-Strasse’:
[“Gerd-Schroeder-Strasse”]
but ‘Gerd-Schröder-Straße’ yields:
[“Gerd-Schr”, “öder-Stra”, “ße”]
So apparently, multibyte and non-word characters don’t mix…
Cheers,
Andy
Jens K. wrote:
On Fri, Jun 15, 2007 at 11:17:27AM +0200, Mattias B. wrote:
/vendor/plugins/acts_as_ferret/lib/local_index.rb:217:in `add_field'
Does this help?
yeah, jusat do what it says - disable term vector storage by adding
:term_vector => :no to the field options for the :index => :no field.
AAF trunk now should handle this correctly
Jens
I have the trunk version. This removes the error but the search doen’t
match what I was looking for. I have a large number of dates in
dirrerent formats.
Like this one 6.9.-8.9. 1796
When I search for 6.9.* - the result is blank. I’m maybee missing
something here.
mattias
On Fri, Jun 15, 2007 at 05:16:49PM +0200, Mattias B. wrote:
AAF trunk now should handle this correctly
something here.
if this date string is in the date_comment_index field, you won’t find
it as long as you say :index => :no. The correct choice for fields you
want to search, but not to be tokenized is :index => :untokenized.
:index => :no is only useful for fields you never want to search, but
which should hold data to be retrieved later on.
Jens
–
Jens Krämer
webit! Gesellschaft für neue Medien mbH
Schnorrstraße 76 | 01069 Dresden
Telefon +49 351 46766-0 | Telefax +49 351 46766-66
[email protected] | www.webit.de
Amtsgericht Dresden | HRB 15422
GF Sven Haubold, Hagen Malessa
Jens K. wrote:
On Fri, Jun 15, 2007 at 05:16:49PM +0200, Mattias B. wrote:
AAF trunk now should handle this correctly
something here.
if this date string is in the date_comment_index field, you won’t find
it as long as you say :index => :no. The correct choice for fields you
want to search, but not to be tokenized is :index => :untokenized.
:index => :no is only useful for fields you never want to search, but
which should hold data to be retrieved later on.
Jens
Yes - I ran into that. After a lot of tests I now use
untokenized_omit_norms which seems to give the correct result. Now I
only have to index the date_comment twice. It also holds unsurten dates
lite Around 1820. These chould be searchable with “Around” (find al
unsurten dates)
So now I index
:date_comment_index => {},
:date_comment_index_untokenized => {:index => :untokenized_omit_norms}
mattias
Jens K. wrote:
On Thu, Jun 14, 2007 at 06:35:12PM +0200, Mattias B. wrote:
fast-cgi. i can’t re-index this class if it has :index => :no. if I
As I said, if i remove :index => :no it works.
Is the solution to change to DRb?
At least you should give it a try. However I cannot imaging how having a
field indexed or not should influence rebuilding.
Jens
Yes - it’s very strange. This is what I get:
ArgumentError (Argument Error occured at <except.c>:93 in xraise
Error occured in index.c:270 - fi_check_params
You can’t store the term vectors of an unindexed field
):
/vendor/plugins/acts_as_ferret/lib/local_index.rb:217:in `add_field’
Does this help?
mattias