[jira] [Commented] (SOLR-13054) TriggerSetPropertiesIntegrationTest cleanup
[ https://issues.apache.org/jira/browse/SOLR-13054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16717993#comment-16717993 ] ASF subversion and git services commented on SOLR-13054: Commit 3147c131e0ce997259f7bcf31e655d43dd99ef59 in lucene-solr's branch refs/heads/jira/http2 from Chris Hostetter [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=3147c13 ] SOLR-13054: rewrite TriggerSetPropertiesIntegrationTest test no longer depends on changing static non-final non-volatile variables used by multiple threads test also no longer depends on arbitrary sleep calls, instead threads await/poll on concurrent signaling objects/queues > TriggerSetPropertiesIntegrationTest cleanup > --- > > Key: SOLR-13054 > URL: https://issues.apache.org/jira/browse/SOLR-13054 > Project: Solr > Issue Type: Test > Security Level: Public(Default Security Level. Issues are Public) >Reporter: Hoss Man >Assignee: Hoss Man >Priority: Major > Attachments: SOLR-13054.patch > > > While investigating some odd jenkins failures from > TriggerSetPropertiesIntegrationTest, I'm left with the conclusion that as > implemented, the test was susceptible to order of operation bugs due to how > the multiple threads would access a static _non-final *non-volatile*_ > CountdownLatch for keeping track of when/if anough iterations had past -- > based on the (limited) logging that was being produced, it seemed like > thescheduled threads were picing up the "first" {{new CountdownLatch(1)}} > assigned to that variable, even though the test expected it to use the second > {{new CountdownLatch(2)}} > It's possible that just marking this variable {{volatile}} would have > prevented these failures -- but as designed the test was also very dependent > on arbitrary {{sleep()}} delays, so instead i've redisgned it to use > differnet signaling mechanisms using {{await()}} calls on concurrent signal > structures. > Opening this issue to track these test improvements and any subsequent tweaks > needed -- 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
[jira] [Commented] (SOLR-13054) TriggerSetPropertiesIntegrationTest cleanup
[ https://issues.apache.org/jira/browse/SOLR-13054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16717651#comment-16717651 ] ASF subversion and git services commented on SOLR-13054: Commit c5426ecd1807ab75f86b5932b64944fc7df85718 in lucene-solr's branch refs/heads/branch_7x from Chris Hostetter [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=c5426ec ] SOLR-13054: rewrite TriggerSetPropertiesIntegrationTest test no longer depends on changing static non-final non-volatile variables used by multiple threads test also no longer depends on arbitrary sleep calls, instead threads await/poll on concurrent signaling objects/queues (cherry picked from commit 3147c131e0ce997259f7bcf31e655d43dd99ef59) > TriggerSetPropertiesIntegrationTest cleanup > --- > > Key: SOLR-13054 > URL: https://issues.apache.org/jira/browse/SOLR-13054 > Project: Solr > Issue Type: Test > Security Level: Public(Default Security Level. Issues are Public) >Reporter: Hoss Man >Assignee: Hoss Man >Priority: Major > Attachments: SOLR-13054.patch > > > While investigating some odd jenkins failures from > TriggerSetPropertiesIntegrationTest, I'm left with the conclusion that as > implemented, the test was susceptible to order of operation bugs due to how > the multiple threads would access a static _non-final *non-volatile*_ > CountdownLatch for keeping track of when/if anough iterations had past -- > based on the (limited) logging that was being produced, it seemed like > thescheduled threads were picing up the "first" {{new CountdownLatch(1)}} > assigned to that variable, even though the test expected it to use the second > {{new CountdownLatch(2)}} > It's possible that just marking this variable {{volatile}} would have > prevented these failures -- but as designed the test was also very dependent > on arbitrary {{sleep()}} delays, so instead i've redisgned it to use > differnet signaling mechanisms using {{await()}} calls on concurrent signal > structures. > Opening this issue to track these test improvements and any subsequent tweaks > needed -- 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
[jira] [Commented] (SOLR-13054) TriggerSetPropertiesIntegrationTest cleanup
[ https://issues.apache.org/jira/browse/SOLR-13054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16717652#comment-16717652 ] ASF subversion and git services commented on SOLR-13054: Commit 3147c131e0ce997259f7bcf31e655d43dd99ef59 in lucene-solr's branch refs/heads/master from Chris Hostetter [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=3147c13 ] SOLR-13054: rewrite TriggerSetPropertiesIntegrationTest test no longer depends on changing static non-final non-volatile variables used by multiple threads test also no longer depends on arbitrary sleep calls, instead threads await/poll on concurrent signaling objects/queues > TriggerSetPropertiesIntegrationTest cleanup > --- > > Key: SOLR-13054 > URL: https://issues.apache.org/jira/browse/SOLR-13054 > Project: Solr > Issue Type: Test > Security Level: Public(Default Security Level. Issues are Public) >Reporter: Hoss Man >Assignee: Hoss Man >Priority: Major > Attachments: SOLR-13054.patch > > > While investigating some odd jenkins failures from > TriggerSetPropertiesIntegrationTest, I'm left with the conclusion that as > implemented, the test was susceptible to order of operation bugs due to how > the multiple threads would access a static _non-final *non-volatile*_ > CountdownLatch for keeping track of when/if anough iterations had past -- > based on the (limited) logging that was being produced, it seemed like > thescheduled threads were picing up the "first" {{new CountdownLatch(1)}} > assigned to that variable, even though the test expected it to use the second > {{new CountdownLatch(2)}} > It's possible that just marking this variable {{volatile}} would have > prevented these failures -- but as designed the test was also very dependent > on arbitrary {{sleep()}} delays, so instead i've redisgned it to use > differnet signaling mechanisms using {{await()}} calls on concurrent signal > structures. > Opening this issue to track these test improvements and any subsequent tweaks > needed -- 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
[jira] [Commented] (SOLR-13054) TriggerSetPropertiesIntegrationTest cleanup
[ https://issues.apache.org/jira/browse/SOLR-13054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16716877#comment-16716877 ] Lucene/Solr QA commented on SOLR-13054: --- | (/) *{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} 1m 45s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Release audit (RAT) {color} | {color:green} 1m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Check forbidden APIs {color} | {color:green} 1m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} Validate source patterns {color} | {color:green} 1m 31s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 35m 59s{color} | {color:green} core in the patch passed. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 41m 53s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | JIRA Issue | SOLR-13054 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12951283/SOLR-13054.patch | | Optional Tests | compile javac unit ratsources checkforbiddenapis validatesourcepatterns | | uname | Linux lucene1-us-west 4.4.0-137-generic #163~14.04.1-Ubuntu SMP Mon Sep 24 17:14:57 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 / 40502b9 | | ant | version: Apache Ant(TM) version 1.9.3 compiled on July 24 2018 | | Default Java | 1.8.0_191 | | Test Results | https://builds.apache.org/job/PreCommit-SOLR-Build/245/testReport/ | | modules | C: solr/core U: solr/core | | Console output | https://builds.apache.org/job/PreCommit-SOLR-Build/245/console | | Powered by | Apache Yetus 0.7.0 http://yetus.apache.org | This message was automatically generated. > TriggerSetPropertiesIntegrationTest cleanup > --- > > Key: SOLR-13054 > URL: https://issues.apache.org/jira/browse/SOLR-13054 > Project: Solr > Issue Type: Test > Security Level: Public(Default Security Level. Issues are Public) >Reporter: Hoss Man >Assignee: Hoss Man >Priority: Major > Attachments: SOLR-13054.patch > > > While investigating some odd jenkins failures from > TriggerSetPropertiesIntegrationTest, I'm left with the conclusion that as > implemented, the test was susceptible to order of operation bugs due to how > the multiple threads would access a static _non-final *non-volatile*_ > CountdownLatch for keeping track of when/if anough iterations had past -- > based on the (limited) logging that was being produced, it seemed like > thescheduled threads were picing up the "first" {{new CountdownLatch(1)}} > assigned to that variable, even though the test expected it to use the second > {{new CountdownLatch(2)}} > It's possible that just marking this variable {{volatile}} would have > prevented these failures -- but as designed the test was also very dependent > on arbitrary {{sleep()}} delays, so instead i've redisgned it to use > differnet signaling mechanisms using {{await()}} calls on concurrent signal > structures. > Opening this issue to track these test improvements and any subsequent tweaks > needed -- 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