[ https://issues.apache.org/jira/browse/SOLR-13393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16815733#comment-16815733 ]
Lucene/Solr QA commented on SOLR-13393: --------------------------------------- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 5s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 2m 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Release audit (RAT) {color} | {color:green} 2m 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Check forbidden APIs {color} | {color:green} 2m 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Validate source patterns {color} | {color:green} 2m 59s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 11m 19s{color} | {color:green} solrj in the patch passed. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 21m 37s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | JIRA Issue | SOLR-13393 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12965627/SOLR-13393.patch | | Optional Tests | compile javac unit ratsources checkforbiddenapis validatesourcepatterns | | uname | Linux lucene2-us-west.apache.org 4.4.0-112-generic #135-Ubuntu SMP Fri Jan 19 11:48:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | ant | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-SOLR-Build/sourcedir/dev-tools/test-patch/lucene-solr-yetus-personality.sh | | git revision | master / 55c241d | | ant | version: Apache Ant(TM) version 1.9.6 compiled on July 20 2018 | | Default Java | 1.8.0_191 | | Test Results | https://builds.apache.org/job/PreCommit-SOLR-Build/371/testReport/ | | modules | C: solr/solrj U: solr/solrj | | Console output | https://builds.apache.org/job/PreCommit-SOLR-Build/371/console | | Powered by | Apache Yetus 0.7.0 http://yetus.apache.org | This message was automatically generated. > ZkClientClusterStateProvider can leak ZkStateReader (and associated watcher > threads) if background threads attempt to use it after close() . > -------------------------------------------------------------------------------------------------------------------------------------------- > > Key: SOLR-13393 > URL: https://issues.apache.org/jira/browse/SOLR-13393 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) > Reporter: Hoss Man > Assignee: Hoss Man > Priority: Major > Attachments: SOLR-13393.patch, SOLR-13393.patch, SOLR-13393.patch > > > while digging into some test failures related to leaked ZkStateReader > objects, i noticed a pattern which i beleive can be explained by the fact > that ZkClientClusterStateProvider does not complain/fail if some caller tries > to connect()/use it after it's already been closed – in this situation it > will just re-create a new ZkStateReader (which is later leaked) > So in in situations where background/timer threads use a > SolrClientCloudManager/ZkClientClusterStateProvider, we might see... > {noformat} > T1 : start shutdown... > T1 : ...SolrClientCloudManager.close()... > T1 : ...ZkClientClusterStateProvider.close()... > T1 : ...ZkStateReader.close() > T1 : ...zkStateReader = null; > T 2: run background thread/task/trigger... > T 2: ...get ZkClientClusterStateProvider > T 2: ...call ZkClientClusterStateProvider.connect() > T 2: ...zkStateReader = new ZkStateReader() /* LEAKED */ > T 2: ... do something with ZkClientClusterStateProvider > T 2: ...finish background thread/task/trigger > T1 : ...finish shutdown of ZkClientClusterStateProvider / > SolrClientCloudManager > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org