LUCENE-10253: Remove the BadApple annotation. (#468)

This commit is contained in:
Adrien Grand 2021-12-01 18:03:02 +01:00 committed by GitHub
parent 5eb575f8ab
commit f605b4a692
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 6 additions and 37 deletions

View File

@ -112,8 +112,8 @@ def prepare(root, version, gpg_key_id, gpg_password, gpg_home=None, sign_gradle=
checkDOAPfiles(version) checkDOAPfiles(version)
if not dev_mode: if not dev_mode:
print(' ./gradlew --no-daemon -Dtests.badapples=false clean check') print(' ./gradlew --no-daemon clean check')
run('./gradlew --no-daemon -Dtests.badapples=false clean check') run('./gradlew --no-daemon clean check')
else: else:
print(' skipping precommit check due to dev-mode') print(' skipping precommit check due to dev-mode')

View File

@ -1126,9 +1126,6 @@ def main():
def smokeTest(java, baseURL, gitRevision, version, tmpDir, isSigned, local_keys, testArgs, downloadOnly=False): def smokeTest(java, baseURL, gitRevision, version, tmpDir, isSigned, local_keys, testArgs, downloadOnly=False):
startTime = datetime.datetime.now() startTime = datetime.datetime.now()
# disable flakey tests for smoke-tester runs:
testArgs = '-Dtests.badapples=false %s' % testArgs
# Tests annotated @Nightly are more resource-intensive but often cover # Tests annotated @Nightly are more resource-intensive but often cover
# important code paths. They're disabled by default to preserve a good # important code paths. They're disabled by default to preserve a good
# developer experience, but we enable them for smoke tests where we want good # developer experience, but we enable them for smoke tests where we want good

View File

@ -104,7 +104,7 @@ function personality_modules
;; ;;
junit|unit) junit|unit)
moduleType="submodules" moduleType="submodules"
extra="-Dtests.badapples=false test" extra="test"
;; ;;
*) *)
;; ;;

View File

@ -27,7 +27,9 @@ Bug Fixes
Other Other
--------------------- ---------------------
(No changes)
* LUCENE-10253: The @BadApple annotation has been removed from the test
framework. (Adrien Grand)
======================= Lucene 9.1.0 ======================= ======================= Lucene 9.1.0 =======================

View File

@ -280,8 +280,6 @@ public class TestIndexWriterOnVMError extends LuceneTestCase {
} }
@Nightly @Nightly
// commented out on: 01-Apr-2019
// @BadApple(bugUrl="https://issues.apache.org/jira/browse/SOLR-12028") // 14-Oct-2018
public void testCheckpoint() throws Exception { public void testCheckpoint() throws Exception {
final Random r = new Random(random().nextLong()); final Random r = new Random(random().nextLong());
doTest( doTest(

View File

@ -216,7 +216,6 @@ public abstract class LuceneTestCase extends Assert {
public static final String SYSPROP_MONSTER = "tests.monster"; public static final String SYSPROP_MONSTER = "tests.monster";
public static final String SYSPROP_AWAITSFIX = "tests.awaitsfix"; public static final String SYSPROP_AWAITSFIX = "tests.awaitsfix";
public static final String SYSPROP_SLOW = "tests.slow"; public static final String SYSPROP_SLOW = "tests.slow";
public static final String SYSPROP_BADAPPLES = "tests.badapples";
/** @see #ignoreAfterMaxFailures */ /** @see #ignoreAfterMaxFailures */
public static final String SYSPROP_MAXFAILURES = "tests.maxfailures"; public static final String SYSPROP_MAXFAILURES = "tests.maxfailures";
@ -267,27 +266,6 @@ public abstract class LuceneTestCase extends Assert {
@TestGroup(enabled = true, sysProperty = SYSPROP_SLOW) @TestGroup(enabled = true, sysProperty = SYSPROP_SLOW)
public @interface Slow {} public @interface Slow {}
/**
* Annotation for tests that fail frequently and are not executed in Jenkins builds to not spam
* mailing lists with false reports.
*
* <p>Tests are turned on for developers by default. If you want to disable them, set:
*
* <pre>
* -Dtests.badapples=false
* </pre>
*
* (or do this through {@code ~./lucene.build.properties}).
*/
@Documented
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@TestGroup(enabled = true, sysProperty = SYSPROP_BADAPPLES)
public @interface BadApple {
/** Point to JIRA entry. */
public String bugUrl();
}
/** /**
* Annotation for test classes that should avoid certain codec types (because they are expensive, * Annotation for test classes that should avoid certain codec types (because they are expensive,
* for example). * for example).
@ -441,11 +419,6 @@ public abstract class LuceneTestCase extends Assert {
systemPropertyAsBoolean( systemPropertyAsBoolean(
SYSPROP_AWAITSFIX, AwaitsFix.class.getAnnotation(TestGroup.class).enabled()); SYSPROP_AWAITSFIX, AwaitsFix.class.getAnnotation(TestGroup.class).enabled());
/** Whether or not {@link BadApple} tests should run. */
public static final boolean TEST_BADAPPLES =
systemPropertyAsBoolean(
SYSPROP_BADAPPLES, BadApple.class.getAnnotation(TestGroup.class).enabled());
/** Whether or not {@link Slow} tests should run. */ /** Whether or not {@link Slow} tests should run. */
public static final boolean TEST_SLOW = public static final boolean TEST_SLOW =
systemPropertyAsBoolean(SYSPROP_SLOW, Slow.class.getAnnotation(TestGroup.class).enabled()); systemPropertyAsBoolean(SYSPROP_SLOW, Slow.class.getAnnotation(TestGroup.class).enabled());

View File

@ -178,7 +178,6 @@ public final class RunListenerPrintReproduceInfo extends RunListener {
if (TEST_SLOW) addVmOpt(b, SYSPROP_SLOW, TEST_SLOW); if (TEST_SLOW) addVmOpt(b, SYSPROP_SLOW, TEST_SLOW);
if (TEST_MONSTER) addVmOpt(b, SYSPROP_MONSTER, TEST_MONSTER); if (TEST_MONSTER) addVmOpt(b, SYSPROP_MONSTER, TEST_MONSTER);
if (TEST_AWAITSFIX) addVmOpt(b, SYSPROP_AWAITSFIX, TEST_AWAITSFIX); if (TEST_AWAITSFIX) addVmOpt(b, SYSPROP_AWAITSFIX, TEST_AWAITSFIX);
if (TEST_BADAPPLES) addVmOpt(b, SYSPROP_BADAPPLES, TEST_BADAPPLES);
// Codec, postings, directories. // Codec, postings, directories.
if (!TEST_CODEC.equals("random")) addVmOpt(b, "tests.codec", TEST_CODEC); if (!TEST_CODEC.equals("random")) addVmOpt(b, "tests.codec", TEST_CODEC);