Hi Dave,
Only one process is writing to the index in this case. If I can
narrow it down to a specific example I will try to roll it into a test
case. In the mean time I will try the :create => true and perhaps
this may bypass the issue altogether.
The reason I was deleting the documents that way was based on one of
the How Tos on your Trac wiki. I would give you a specific link but
your site seems to be giving 500s at the moment. Perhaps the :create
=> true syntax should also be listed there?
Thanks again.
Tom
On 5/30/06, David Balmain <[EMAIL PROTECTED]> wrote:
> On 5/30/06, Tom Davies <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
> > I have some code to rebuild my ferret indexes but occasionally some
> > stale documents remain in the index even after rebuilding. The only
> > way I could find around this is to manually delete the index files
> > from the filesystem. Here is the code I have for rebuilding one of my
> > indexes for Gifts:
> >
> > # delete existing entries
> > INDEX.size.times {|i| INDEX.delete(i)}
> >
> > gifts = Gift.find(:all)
> > if (gifts)
> > gifts.each do |e|
> > INDEX << self.to_doc
> > end
> > end
> > INDEX.flush()
> >
> > Does this look ok? I have verified this behavior on Ferret 0.3.2 and
> > 0.9 on windows.
>
> Hi Tom,
>
> This looks fine. Personally, I would just reopen the index with
> :create => true rather than deleting all the documents but it should
> still work. I have no idea why stale documents would be remaining in
> the index. Do you have more than one process writing to the index? Can
> you narrow this behaviour down to a simple test case?
>
> Cheers,
> Dave
> _______________________________________________
> Ferret-talk mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/ferret-talk
>
--
Tom Davies
http://blog.atomgiant.com
http://gifthat.com
_______________________________________________
Ferret-talk mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/ferret-talk