Thanks Shalin, I'd forgotten about that one....

On Thu, Oct 22, 2015 at 11:22 PM, Shalin Shekhar Mangar
<shalinman...@gmail.com> wrote:
> I think you running into
> https://issues.apache.org/jira/browse/SOLR-6136 where a spin lock in
> ConcurrentUpdateSolrServer blocks with high cpu usage. Try upgrading
> to 4.10.x but for best results, upgrade to 5.x because of all the
> fixes that have been added since and also because no new releases will
> be available for the 4.x branch going forward.
>
> On Fri, Oct 23, 2015 at 5:15 AM, Rallavagu <rallav...@gmail.com> wrote:
>> Thanks Erick. Currently, migrating to 5.3 and it is taking a bit of time.
>> Meanwhile, I looked at the JIRAs from the blog and the stack trace looks a
>> bit different from what I see but not sure if they are related. Also, as per
>> the stack trace I have included in my original email, it is the tomcat
>> thread that is locking but not the recovery thread which will be responsible
>> writing updates to followers. I agree that we might throttle updates but
>> what is annoying is unable to see issues in controlled load test env.
>>
>> Just to understand better, what is the tomcat thread doing in this case?
>>
>> Thanks
>>
>>
>> On 10/22/15 12:53 PM, Erick Erickson wrote:
>>>
>>> The details are in Tim's blog post and the linked JIRAs
>>>
>>> Unfortunately, the only real solution I know of is to upgrade
>>> to at least Solr 5.2. Meanwhile, throttling the indexing rate
>>> will at least smooth out the issue. Not a great approach but
>>> all there is for 4.6.
>>>
>>> Best,
>>> Erick
>>>
>>> On Thu, Oct 22, 2015 at 10:48 AM, Rallavagu Kon <rallav...@gmail.com>
>>> wrote:
>>>>
>>>> Erick,
>>>>
>>>> Indexing happening via Solr cloud server. This thread was from the
>>>> leader. Some followers show symptom of high cpu during this time. You think
>>>> this is from locking? What is the thread that is holding the lock doing?
>>>> Also, we are unable to reproduce this issue in load test environment. Any
>>>> clues would help.
>>>>
>>>>> On Oct 22, 2015, at 09:50, Erick Erickson <erickerick...@gmail.com>
>>>>> wrote:
>>>>>
>>>>> Prior to Solr 5.2, there were several inefficiencies when distributing
>>>>> updates to replicas, see:
>>>>>
>>>>> https://lucidworks.com/blog/2015/06/10/indexing-performance-solr-5-2-now-twice-fast/.
>>>>>
>>>>> The symptom was that there was significantly higher CPU utilization on
>>>>> the followers
>>>>> compared to the leader.
>>>>>
>>>>> The only real fix is to upgrade to 5.2+ assuming that's your issue.
>>>>>
>>>>> How are you indexing? Using SolrJ with CloudSolrServer would help if
>>>>> you're not using
>>>>> them.
>>>>>
>>>>> Best,
>>>>> Erick
>>>>>
>>>>>> On Thu, Oct 22, 2015 at 9:43 AM, Rallavagu <rallav...@gmail.com> wrote:
>>>>>> Solr 4.6.1 cloud
>>>>>>
>>>>>> Looking into thread dump 4-5 threads causing cpu to go very high and
>>>>>> causing
>>>>>> issues. These are tomcat's http threads and are locking. Can anybody
>>>>>> help me
>>>>>> understand what is going on here? I see that incoming connections
>>>>>> coming in
>>>>>> for updates and they are being passed on to StreamingSolrServer and
>>>>>> subsequently ConcurrentUpdateSolrServer and they both have locks.
>>>>>> Thanks.
>>>>>>
>>>>>>
>>>>>> "http-bio-8080-exec-4394" id=8774 idx=0x988 tid=14548 prio=5 alive,
>>>>>> native_blocked, daemon
>>>>>>     at __lll_lock_wait+34(:0)@0x38caa0e262
>>>>>>     at safepointSyncOnPollAccess+167(safepoint.c:83)@0x7fc29b9c9138
>>>>>>     at trapiNormalHandler+484(traps_posix.c:220)@0x7fc29b9fd745
>>>>>>     at _L_unlock_16+44(:0)@0x38caa0f710
>>>>>>     at
>>>>>>
>>>>>> java/util/concurrent/locks/ReentrantLock.lock(ReentrantLock.java:262)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.blockUntilFinished(ConcurrentUpdateSolrServer.java:391)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/update/StreamingSolrServers.blockUntilFinished(StreamingSolrServers.java:98)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/update/SolrCmdDistributor.finish(SolrCmdDistributor.java:61)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/update/processor/DistributedUpdateProcessor.doFinish(DistributedUpdateProcessor.java:501)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/update/processor/DistributedUpdateProcessor.finish(DistributedUpdateProcessor.java:1278)[optimized]
>>>>>>     ^-- Holding lock:
>>>>>> org/apache/solr/update/StreamingSolrServers$1@0x496cf6e50[biased lock]
>>>>>>     ^-- Holding lock:
>>>>>> org/apache/solr/update/StreamingSolrServers@0x49d32adc8[biased lock]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/handler/ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:83)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/handler/RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)[optimized]
>>>>>>     at
>>>>>> org/apache/solr/core/SolrCore.execute(SolrCore.java:1859)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/servlet/SolrDispatchFilter.execute(SolrDispatchFilter.java:721)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/servlet/SolrDispatchFilter.doFilter(SolrDispatchFilter.java:417)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/solr/servlet/SolrDispatchFilter.doFilter(SolrDispatchFilter.java:201)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)[inlined]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/StandardWrapperValve.invoke(StandardWrapperValve.java:222)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/StandardContextValve.invoke(StandardContextValve.java:123)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/StandardHostValve.invoke(StandardHostValve.java:171)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/valves/ErrorReportValve.invoke(ErrorReportValve.java:99)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/valves/AccessLogValve.invoke(AccessLogValve.java:953)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/core/StandardEngineValve.invoke(StandardEngineValve.java:118)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/catalina/connector/CoyoteAdapter.service(CoyoteAdapter.java:408)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/coyote/http11/AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/coyote/AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)[optimized]
>>>>>>     at
>>>>>>
>>>>>> org/apache/tomcat/util/net/JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)[optimized]
>>>>>>     ^-- Holding lock:
>>>>>> org/apache/tomcat/util/net/SocketWrapper@0x496e58810[thin lock]
>>>>>>     at
>>>>>>
>>>>>> java/util/concurrent/ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)[inlined]
>>>>>>     at
>>>>>>
>>>>>> java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)[optimized]
>>>>>>     at java/lang/Thread.run(Thread.java:682)[optimized]
>>>>>>     at jrockit/vm/RNI.c2java(JJJJJ)V(Native Method)
>
>
>
> --
> Regards,
> Shalin Shekhar Mangar.

Reply via email to