[ 
https://issues.apache.org/jira/browse/SOLR-6820?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14241957#comment-14241957
 ] 

Mark Miller commented on SOLR-6820:
-----------------------------------

In the instance I'm seeing, the hashing looks okay, but it seems that this can 
be hit and block for up almost a minute in this test. It will hold the bucket 
sync and the other threads appear to lock up as well, I assume as each quickly 
hits a doc that needs the lock held by the thread blocked below:

{quote}
 qtp1204167249-19 [BLOCKED]
org.apache.lucene.index.IndexWriter.publishFlushedSegment(SegmentCommitInfo, 
FrozenBufferedUpdates, FrozenBufferedUpdates) IndexWriter.java:2273
org.apache.lucene.index.DocumentsWriterFlushQueue$FlushTicket.publishFlushedSegment(IndexWriter,
 DocumentsWriterPerThread$FlushedSegment, FrozenBufferedUpdates) 
DocumentsWriterFlushQueue.java:198
org.apache.lucene.index.DocumentsWriterFlushQueue$FlushTicket.finishFlush(IndexWriter,
 DocumentsWriterPerThread$FlushedSegment, FrozenBufferedUpdates) 
DocumentsWriterFlushQueue.java:213
org.apache.lucene.index.DocumentsWriterFlushQueue$SegmentFlushTicket.publish(IndexWriter)
 DocumentsWriterFlushQueue.java:249
org.apache.lucene.index.DocumentsWriterFlushQueue.innerPurge(IndexWriter) 
DocumentsWriterFlushQueue.java:116
org.apache.lucene.index.DocumentsWriterFlushQueue.tryPurge(IndexWriter) 
DocumentsWriterFlushQueue.java:149
org.apache.lucene.index.DocumentsWriter.purgeBuffer(IndexWriter, boolean) 
DocumentsWriter.java:183
org.apache.lucene.index.IndexWriter.purge(boolean) IndexWriter.java:4536
org.apache.lucene.index.IndexWriter.doAfterSegmentFlushed(boolean, boolean) 
IndexWriter.java:4550
org.apache.lucene.index.DocumentsWriter$MergePendingEvent.process(IndexWriter, 
boolean, boolean) DocumentsWriter.java:700
org.apache.lucene.index.IndexWriter.processEvents(Queue, boolean, boolean) 
IndexWriter.java:4578
org.apache.lucene.index.IndexWriter.processEvents(boolean, boolean) 
IndexWriter.java:4570
org.apache.lucene.index.IndexWriter.updateDocument(Term, IndexDocument, 
Analyzer) IndexWriter.java:1394
org.apache.solr.update.DirectUpdateHandler2.addDoc0(AddUpdateCommand) 
DirectUpdateHandler2.java:240
org.apache.solr.update.DirectUpdateHandler2.addDoc(AddUpdateCommand) 
DirectUpdateHandler2.java:164
org.apache.solr.update.processor.RunUpdateProcessor.processAdd(AddUpdateCommand)
 RunUpdateProcessorFactory.java:69
org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(AddUpdateCommand)
 UpdateRequestProcessor.java:51
org.apache.solr.update.processor.DistributedUpdateProcessor.doLocalAdd(AddUpdateCommand)
 DistributedUpdateProcessor.java:931
org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(AddUpdateCommand)
 DistributedUpdateProcessor.java:1085
org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(AddUpdateCommand)
 DistributedUpdateProcessor.java:697
org.apache.solr.update.processor.LogUpdateProcessor.processAdd(AddUpdateCommand)
 LogUpdateProcessorFactory.java:104
{quote}

Other intermittent times seem to lock up very briefly as all the threads hit 
the same bucket and one takes a moment to add the doc.

> The sync on the VersionInfo bucket in DistributedUpdateProcesser#addDocument 
> appears to be a large bottleneck when using replication.
> -------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-6820
>                 URL: https://issues.apache.org/jira/browse/SOLR-6820
>             Project: Solr
>          Issue Type: Sub-task
>          Components: SolrCloud
>            Reporter: Mark Miller
>         Attachments: threads.png
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to