The concurrency fix was simple. I had forgotten that QueryParser was not thread-safe and had allowed multiple threads to access the same instance concurrently. ApacheBench now confirms that concurrent searching works as expected.
You couldn't trigger these problems via the Python script, since that serializes all requests, but my main motivation for moving couchdb-lucene onto its own port in 0.5 was to allow direct, concurrent querying. B. On Sun, Jun 6, 2010 at 4:53 AM, Norman Barker <[email protected]> wrote: > Itamar, > > I posted on clucene, one of the main problems is that Java Lucene > allows storing UserData which CLucene doesn't, this allows the couchdb > seq_num to be stored in the Lucene index keeping it in synch. > > Robert, can you expand on the concurrency fix, surely stdin / stdout > is still the bottle neck? > > Norman > > On Sat, Jun 5, 2010 at 4:12 PM, Jarrod Roberson <[email protected]> > wrote: >> On Fri, Jun 4, 2010 at 5:49 PM, Robert Newson <[email protected]>wrote: >> >>> Everything I have testwise is at http://github.com/rnewson/couchdb-lucene >>> >>> I understand the reluctance to pull in the Java Virtual Machine just >>> to use Lucene but, in my experience, there's no other comparable >>> library for features or performance, including clucene. >>> >>> >> then you haven't seen Xapian then, much better choice if you aren't already >> using Java. >> >
