On 2/8/2018 5:50 PM, mmb1234 wrote:
I then removed my custom <mergeScheduler> element from my solrconfig.xml and
both hard commit and /solr/admin/core hang issues seemed to go way for a
couple of hours.

The mergeScheduler config you had is not likely to be causing any issues. It's a good config. But removing it shouldn't do all that much for the things we've been discussing either. It would be fine to put it back in, or leave it out.

Then I increased the ingestion load and the issue came back. Taking a heap
dump I now see lots of these and back to commit hanging. Full thread dump is
at https://github.com/mohsinbeg/datadump/blob/master/threadDump-7pjql_1.zip

There are over six thousand threads (which is a lot) that are in a WAITING state while trying to add documents to the index. But I cannot tell what they are waiting for -- the hex ID values that the threads are waiting for are not mentioned as being held by any of the threads in the dump.

At the end of this message is an example of a stacktrace for one of those threads. It doesn't appear to be the commits that are the problem here, but rather something keeping the indexing from happening ... except that you have said the index size is increasing, so I don't really know what's going on.

There are some other details I would like to see.

I would like to see a "top" display. Run the top utility (not htop or any other variant), press shift-M to sort by memory, grab a screenshot of that display, and put it somewhere we can retrieve it.

Also, can you let Solr run for a while, preferably while recreating the problem, and then share the GC log that Solr creates?

Thanks,
Shawn


==========

"qtp310656974-50242" #50242 prio=5 os_prio=0 tid=0x00007e2120b35800 nid=0xaf95 runnable [0x00007f866155b000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x0000000268c4e590> (a java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(AbstractQueuedSynchronizer.java:1037) at java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1328) at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.tryLock(ReentrantReadWriteLock.java:871) at org.apache.solr.update.DefaultSolrCoreState.lock(DefaultSolrCoreState.java:176) at org.apache.solr.update.DefaultSolrCoreState.getIndexWriter(DefaultSolrCoreState.java:121) at org.apache.solr.update.DirectUpdateHandler2.allowDuplicateUpdate(DirectUpdateHandler2.java:269) at org.apache.solr.update.DirectUpdateHandler2.addDoc0(DirectUpdateHandler2.java:242) at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:194) at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:67) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1005) at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:748) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at com.vmware.ops.data.solr.processor.AddSchemaFieldsUpdateProcessorFactory$AddSchemaFieldsUpdateProcessor.processAdd(AddSchemaFieldsUpdateProcessorFactory.java:342) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at com.vmware.ops.data.solr.processor.UnknownFieldNameMutatingUpdateProcessorFactory$1.processAdd(UnknownFieldNameMutatingUpdateProcessorFactory.java:91) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at com.vmware.ops.data.solr.processor.CopyTextFieldProcessorFactory$CopyTextFieldUpdateProcessor.processAdd(CopyTextFieldProcessorFactory.java:58) at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) at com.vmware.ops.data.solr.processor.TimestampExtractorUpdateProcessor.processAdd(UpdateTimestampProcessorFactory.java:67) at com.vmware.ops.data.solr.handler.IngestionHandler.handleRequestBody(IngestionHandler.java:340) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:173) at com.vmware.ops.data.solr.handler.AggregateIngestionHandler.handleRequestBody(AggregateIngestionHandler.java:157) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:173)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:2477)
at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:723)
        at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:529)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:361) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:305) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1691) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
        at org.eclipse.jetty.server.Server.handle(Server.java:534)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
        at java.lang.Thread.run(Thread.java:748)

==========

Reply via email to