You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Mike Drob (Jira)" <ji...@apache.org> on 2022/02/23 03:31:00 UTC

[jira] [Commented] (SOLR-16046) Thread leak in TestLeaderElectionZkExpiry

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

Mike Drob commented on SOLR-16046:
----------------------------------

I was testing the changes from your PR locally, and I happened upon these threads leaked:

 
{noformat}
3 threads leaked from SUITE scope at org.apache.solr.cloud.TestLeaderElectionZkExpiry: 
   1) Thread[id=83, name=zkConnectionManagerCallback-17-thread-1-EventThread, state=WAITING, group=TGRP-TestLeaderElectionZkExpiry]
        at java.base@11.0.13/jdk.internal.misc.Unsafe.park(Native Method)
        at java.base@11.0.13/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
        at java.base@11.0.13/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
        at java.base@11.0.13/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
        at app//org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:551)
   2) Thread[id=81, name=zkConnectionManagerCallback-17-thread-1-EventThread, state=WAITING, group=TGRP-TestLeaderElectionZkExpiry]
        at java.base@11.0.13/java.lang.Object.wait(Native Method)
        at java.base@11.0.13/java.lang.Object.wait(Object.java:328)
        at app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1584)
        at app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1556)
        at app//org.apache.zookeeper.ClientCnxn.close(ClientCnxn.java:1523)
        at app//org.apache.zookeeper.ZooKeeper.close(ZooKeeper.java:1227)
        at app//org.apache.solr.common.cloud.SolrZooKeeper.close(SolrZooKeeper.java:97)
        at app//org.apache.solr.common.cloud.SolrZkClient.updateKeeper(SolrZkClient.java:668)
        at app//org.apache.solr.common.cloud.ConnectionManager.lambda$process$0(ConnectionManager.java:157)
        at app//org.apache.solr.common.cloud.ConnectionManager$$Lambda$389/0x0000000800585440.update(Unknown Source)
        at app//org.apache.solr.common.cloud.DefaultConnectionStrategy.reconnect(DefaultConnectionStrategy.java:57)
        at app//org.apache.solr.common.cloud.ConnectionManager.process(ConnectionManager.java:152)
        at app//org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:580)
        at app//org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:555)
   3) Thread[id=79, name=zkConnectionManagerCallback-17-thread-1-EventThread, state=BLOCKED, group=TGRP-TestLeaderElectionZkExpiry]
        at app//org.apache.solr.common.cloud.SolrZooKeeper.close(SolrZooKeeper.java:97)
        at app//org.apache.solr.common.cloud.DefaultConnectionStrategy.reconnect(DefaultConnectionStrategy.java:65)
        at app//org.apache.solr.common.cloud.ConnectionManager.process(ConnectionManager.java:152)
        at app//org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:580)
        at app//org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:555){noformat}

Not sure if they are the same ones that you found before or not, but I can look deeper if you would like. I've saved the test log locally in case it is helpful.

> Thread leak in TestLeaderElectionZkExpiry
> -----------------------------------------
>
>                 Key: SOLR-16046
>                 URL: https://issues.apache.org/jira/browse/SOLR-16046
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>            Reporter: Houston Putman
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Currently the {{TestLeaderElectionZkExpiry.testLeaderElectionWithZkExpiry}} test fails roughly 11% of the time due to zombie threads.
> These are {{zkConnectionManagerCallback}} threads used by the SolrZkClient.
> In {{ConnectionManager.process()}}, the method being called by the thread, it is currently swallowing up an interrupted exception and always looping until a valid connection can be made to zookeeper.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org