Something is weird with the length for the top_docs packet.

In SearchServer::serve, ~line 106, the confess is chucking a null
error because $check_val != $len, hence the meaningless error:

" at 
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/LucyX/Remote/SearchServer.pm
line 106"

In ClusterSearcher::_serialize_request for top_docs
length($serialized)==6959, but SearchServer::serve is receiving
length==2892.

So, that's why SearchServer is failing.  What's causing the short send
(or receive, or pack/unpack not co-operating across machines) will
hopefully soon be revealed.

Suggested patch:

- confess $! unless $check_val == $len;
+ confess "packet length mismatch: $!" unless $check_val == $len;

Reply via email to