Ferret seg-faulting during search

Hi,

I’m using ferret and running into troubles with it seg faulting during
searches. The index I’m searching is static and is only updated in an
offline way once every couple weeks.

The segfault isn’t deterministically reproducible, but if I hammer
ferret hard enough I can reliably get it to crash. The problem seems to
have something to do with how memory is shared between Ruby and Ferret’s
C code, for if I disable Ruby garbage collection the crashes go away.

I can try to provide a repro, but I think it might be faster to do some
of the initial investigation on my own, even though I have no experience
with Ferret internals. Can someone give me some pointers on debugging
ferret? I assume I need to build a debug version out of SVN, but do I
need debug version or ruby as well?

Thanks,
Joe

On 2/19/07, John L. [email protected] wrote:

Hi Joe,

I’ve experienced lots of segfaults too. Last I heard from David B.
(Ferret’s author) was that he knew what was causing it and is fixing it.
That was last week, but he’s been pretty busy with other things lately
so I guess he can’t predict when a new release will be due.

Hi guys,

The segfault problem I’ve fixed is the one that occurs when you have
multiple processes accessing the index. The segfault problem that Joe
is getting sounds like it might be something else. If you can send me
a reproducible test case that would be brilliant.

I’m going to try and get a release out tomorrow, but if I can
reproduce Joe’s problem I’ll try and fix it before I put out the
release.

Hi Joe,

I’ve experienced lots of segfaults too. Last I heard from David B.
(Ferret’s author) was that he knew what was causing it and is fixing it.
That was last week, but he’s been pretty busy with other things lately
so I guess he can’t predict when a new release will be due.

John.

http://johnleach.co.uk