lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Smiley (JIRA)" <>
Subject [jira] [Updated] (SOLR-2548) Multithreaded faceting
Date Mon, 09 Sep 2013 21:20:54 GMT


David Smiley updated SOLR-2548:

    Attachment: SOLR-2548_multithreaded_faceting,_dsmiley.patch

This issue just got on my radar; I like working on threading problems.

I commend the progress made but I think it can be improved:
# I think it's counter-intuitive that if a user supplies facet.threads=2 then 3 cpu cores
will actually be used (assuming >2 fields to facet on)
# Only the first facet.threads worth of facets are actually done concurrently; the rest are
done serially.
# Even if the previous problem was solved, the use of the main calling thread to compute facets
(beyond facet.threads) means that if by bad luck the main thread is computing the most intensive
facets to compute, the other threads will sit idle once they are done when it would be better
to have remaining work queued up.
# in the event of an exception in one worker; the rest should be cancelled
# ExecutionException is a wrapping exception; you should unwrap it and wrap SolrException
on its contents, not the ExecutionException itself.

The attached patch fixes all these problems, keeps it no more complex and perhaps simpler
(IMO), and without increasing the lines-of-code count.
> Multithreaded faceting
> ----------------------
>                 Key: SOLR-2548
>                 URL:
>             Project: Solr
>          Issue Type: Improvement
>          Components: search
>    Affects Versions: 3.1
>            Reporter: Janne Majaranta
>            Assignee: Erick Erickson
>            Priority: Minor
>              Labels: facet
>             Fix For: 4.5, 5.0
>         Attachments: SOLR-2548_4.2.1.patch, SOLR-2548_for_31x.patch, SOLR-2548_multithreaded_faceting,_dsmiley.patch,
SOLR-2548.patch, SOLR-2548.patch, SOLR-2548.patch, SOLR-2548.patch, SOLR-2548.patch, SOLR-2548.patch
> Add multithreading support for faceting.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message