[ https://issues.apache.org/jira/browse/LUCENE-9472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17181240#comment-17181240 ]
Dawid Weiss commented on LUCENE-9472: ------------------------------------- Next time you need to beast something, try it. Seriously. If it doesn't work - report and abandon. :) Maybe I should create an unsafe/mike branch for you? > True concurrent test suite duplication and execution (beasting) > --------------------------------------------------------------- > > Key: LUCENE-9472 > URL: https://issues.apache.org/jira/browse/LUCENE-9472 > Project: Lucene - Core > Issue Type: Improvement > Reporter: Dawid Weiss > Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > I toyed with this a bit because it's hacker's delight... Forked the default > Gradle test task and made it emit the same test/ suite name multiple times. > This results in the same test being executed multiple times: > {code} > # ./gradlew -p lucene\analysis\kuromoji testy --tests > TestToStringUtil.testHepburn -Ptests.dups=10 > > Task :randomizationInfo > Running tests with randomization seed: tests.seed=88C21B0E8ABB2D46 > > Task :lucene:analysis:kuromoji:testy > :lucene:analysis:kuromoji:testy (SUCCESS): 10 test(s) > BUILD SUCCESSFUL in 13s > 21 actionable tasks: 6 executed, 15 up-to-date > {code} > Upsides: > * Everything configures itself because the custom task is a subtype of > Gradle's Test task, > * Tests are run in parallel, on multiple VMs, > * Opens up the possibility of reordering test suites (for load-balancing). > Downsides: > * Requires a custom(ized) clone of Gradle's internal classes. Will require > maintenance when upgrading gradle. There is no certainty it'll work. > * Some things visibly don't like duplicated suite names - the progress bar > shows the suite once, even though it is executed concurrently in multiple VMs, > * XML reports will drive jenkins and other tooling crazy: > {code} > <?xml version="1.0" encoding="UTF-8"?> > <testsuite name="org.apache.lucene.analysis.ja.util.TestToStringUtil" > tests="10" skipped="0" failures="0" errors="0" > timestamp="2020-08-20T12:54:27" hostname="DWEISS-DESKTOP" time="3.177"> > <properties/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.04"/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.045"/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.043"/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.038"/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.008"/> > <testcase name="testHepburn" > classname="org.apache.lucene.analysis.ja.util.TestToStringUtil" time="1.005"/> > .... > {code} > * not sure what happens with sysouts from such concurrent runs... -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org