lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott Blum (JIRA)" <>
Subject [jira] [Commented] (SOLR-6760) New optimized DistributedQueue implementation for overseer
Date Tue, 11 Aug 2015 21:50:46 GMT


Scott Blum commented on SOLR-6760:

[~shalinmangar] please sanity check the block of code in testDistributedQueueBlocking() that
forces a ZK disconnect / reconnect... I looked around but couldn't really find canonical patterns.
 I wanted to ensure that we don't end up in a state where the session is disconnected, but
we think we still have a watcher, so we're stuck forever.

> New optimized DistributedQueue implementation for overseer
> ----------------------------------------------------------
>                 Key: SOLR-6760
>                 URL:
>             Project: Solr
>          Issue Type: Bug
>            Reporter: Noble Paul
>            Assignee: Noble Paul
>         Attachments: SOLR-6760.patch, deadlock.patch
> Currently the DQ works as follows
> * read all items in the directory
> * sort them all 
> * take the head and return it and discard everything else
> * rinse and repeat
> This works well when we have only a handful of items in the Queue. If the items in the
queue is much larger (in tens of thousands) , this is counterproductive
> As the overseer queue is a multiple producers + single consumer queue, We can read them
all in bulk  and before processing each item , just do a zk.exists(itemname) and if all is
well we don't need to do the fetch all + sort thing again

This message was sent by Atlassian JIRA

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

View raw message