Thanks for your answer.
I am running an (older) revision of solr from around the 29/2-2012
I suspect that the thread I have included is the leader of the shard?
The Solr instance, I have the dump from, contains more than one leader,
so I don't know which shard (slice) the thread is working on. How can I
find the solr instance containing the replica (I guess ZooKeeper can't
help me)?
And when I have found the solr instance containing the replica, how do I
know which thread is handling the update request (all my solr instances
contains 8 cores)?
If this is not possible, I might be able to restart with a setup where
each Solr instances only contains a single core (a leader or a replica).
Best regards Trym
Den 19-04-2012 14:36, Yonik Seeley skrev:
On Thu, Apr 19, 2012 at 4:25 AM, "Trym R. Møller"<t...@sigmat.dk> wrote:
Hi
I am using Solr trunk and have 7 Solr instances running with 28 leaders and
28 replicas for a single collection.
After indexing a while (a couple of days) the solrs start hanging and doing
a thread dump on the jvm I see blocked threads like the following:
Thread 2369: (state = BLOCKED)
- sun.misc.Unsafe.park(boolean, long) @bci=0 (Compiled frame;
information may be imprecise)
- java.util.concurrent.locks.LockSupport.park(java.lang.Object) @bci=14,
line=158 (Compiled frame)
-
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await()
@bci=42, line=1987 (Compiled frame)
- java.util.concurrent.LinkedBlockingQueue.take() @bci=29, line=399
(Compiled frame)
- java.util.concurrent.ExecutorCompletionService.take() @bci=4, line=164
(Compiled frame)
- org.apache.solr.update.SolrCmdDistributor.checkResponses(boolean)
@bci=27, line=350 (Compiled frame)
- org.apache.solr.update.SolrCmdDistributor.finish() @bci=18, line=98
(Compiled frame)
- org.apache.solr.update.processor.DistributedUpdateProcessor.doFinish()
@bci=4, line=299 (Compiled frame)
- org.apache.solr.update.processor.DistributedUpdateProcessor.finish()
@bci=1, line=817 (Compiled frame)
...
- org.mortbay.thread.QueuedThreadPool$PoolThread.run() @bci=25, line=582
(Interpreted frame)
I read the stack trace as my indexing client has indexed a document and this
Solr is now waiting for the replica? to respond before returning an answer
to the client.
Correct. What's the full stack trace like on both a leader and replica?
We need to know what the replica is blocking on.
What version of trunk are you using?
-Yonik
lucenerevolution.com - Lucene/Solr Open Source Search Conference.
Boston May 7-10