Ferret on 64 bit Red Hat

Can anyone verify that Ferret should work correctly on 64 bit Red Hat ES
4?

The test suite gets the following segfault:

…/unit/…/unit/analysis/…/…/unit/index/…/…/unit/store/…/…/unit/search/tc_filter.rb:20:
[BUG] Segmentation fault
ruby 1.8.4 (2005-12-24) [x86_64-linux]

This is with version “ferret-0.9.4” on an AMD Dual Opteron 270.

On 7/4/06, Mike b [email protected] wrote:

This is with version “ferret-0.9.4” on an AMD Dual Opteron 270.
Hi Mike,

There are problems with the current version of Ferret on 64-bit
machines. I’ve done a lot of work towards fixing this so hopefully the
next version will help you. I still have quite a lot of work to do
before I can release it (ie writing the binding code) but if you could
possibly try out the C code, that would be a great help. If you have
the time, try;

svn co svn://www.davebalmain.com/exp ferret_experimental

Then cd into the ferret_experimental/c directory and try running make.
If everything is working correctly you should get it all to compile
without any warnings. If there are any warnings or problems compiling,
I’d love to know about them. They’ll go a long way in helping me get
Ferret working on 64-bit systems.

Cheers,
Dave

PS sames goes for anyone who wants to try it out under VC6.

I have never used Ferret, so this advice may be meaningless, but I got a
similar segfault with Selenium on Rails combined with Rails 1.1.2 and
Ruby 1.8.4 running on a Gentoo AMD64 box. For me, the fix was to
upgrade Ruby from the 2005-12-24 release to the 2006-05-29 one.

See 136880 – Rails 1.1.2 plus Selenium on Rails makes Ruby segfault if you’re interested
in my original bug report.

Ian

FWIW, I had no trouble installing the Ferret GEM or the acts_as_ferret
plugin. I haven’t tested extensively, but the few queries I did try
seemed to work – I just have to figure out Query parser so I can get
singluar and plural forms, recognition of private data, etc.

I’m running this on Fedora Core 4 x64 SMP.

David B. wrote:

On 7/4/06, Mike b [email protected] wrote:

This is with version “ferret-0.9.4” on an AMD Dual Opteron 270.
Hi Mike,

There are problems with the current version of Ferret on 64-bit
machines. I’ve done a lot of work towards fixing this so hopefully the
next version will help you. I still have quite a lot of work to do
before I can release it (ie writing the binding code) but if you could
possibly try out the C code, that would be a great help. If you have
the time, try;

svn co svn://www.davebalmain.com/exp ferret_experimental

Then cd into the ferret_experimental/c directory and try running make.
If everything is working correctly you should get it all to compile
without any warnings. If there are any warnings or problems compiling,
I’d love to know about them. They’ll go a long way in helping me get
Ferret working on 64-bit systems.

Cheers,
Dave

PS sames goes for anyone who wants to try it out under VC6.

FYI, inspired by some confusing and problematic search results on our
web server, I tried enlisting in the ferret_experimental branch and
building on an Ubuntu Dapper Drake server with an AMD 64 dual-core
Opteron.

Here are the warnings from the ferret_experimental make:

src/global.c: In function â??estrdupâ??:
src/global.c:170: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/global.c: In function â??emallocâ??:
src/global.c:183: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/global.c: In function â??ecallocâ??:
src/global.c:195: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/global.c: In function â??ereallocâ??:
src/global.c:207: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??

src/search.c: In function â??w_createâ??:
src/search.c:285: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/search.c:285: warning: format â??%dâ?? expects type â??intâ??, but argument
4 has type â??long unsigned intâ??
src/search.c: In function â??q_createâ??:
src/search.c:468: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/search.c:468: warning: format â??%dâ?? expects type â??intâ??, but argument
4 has type â??long unsigned intâ??
src/search.c: In function â??scorer_createâ??:
src/search.c:498: warning: format â??%dâ?? expects type â??intâ??, but argument
3 has type â??size_tâ??
src/search.c:498: warning: format â??%dâ?? expects type â??intâ??, but argument
4 has type â??long unsigned intâ??
src/search.c: In function â??msea_create_weightâ??:
src/search.c:1416: warning: cast to pointer from integer of different
size

test/test_index.c: In function â??test_ir_normsâ??:
test/test_index.c:1234: warning: cast from pointer to integer of
different size
test/test_index.c: In function â??test_ir_deleteâ??:
test/test_index.c:1313: warning: cast from pointer to integer of
different size

Ferret problems are high on my task list right now, so I’m happy to
offer more info as required,
Robin

On 7/11/06, Robin L. [email protected] wrote:

src/global.c: In function ‘emalloc’:
src/search.c:285: warning: format ‘%d’ expects type ‘int’, but argument
3 has type ‘size_t’
test/test_index.c:1313: warning: cast from pointer to integer of
different size

Ferret problems are high on my task list right now, so I’m happy to
offer more info as required,
Robin

Thanks a bunch, Robin. I’ve added some fixes. Could you try it again?
Also, did all the tests pass?

Thanks,
Dave