diff --git a/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexBuilder.java b/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexBuilder.java index 931177aca9b2..97f8d642da6e 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexBuilder.java +++ b/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexBuilder.java @@ -42,11 +42,7 @@ public class BackwardReferenceIndexBuilder extends ModuleLevelBuilder { @Override public void buildFinished(CompileContext context) { - final BackwardReferenceIndexWriter writer = BackwardReferenceIndexWriter.getInstance(); - if (writer != null) { - writer.close(); - } - BackwardReferenceIndexWriter.clearInstance(); + BackwardReferenceIndexWriter.closeIfNeed(); } @Override diff --git a/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexWriter.java b/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexWriter.java index d2bb308b8301..991fa515c800 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexWriter.java +++ b/jps/jps-builders/src/org/jetbrains/jps/backwardRefs/BackwardReferenceIndexWriter.java @@ -39,9 +39,7 @@ import java.util.*; import static com.sun.tools.javac.code.Flags.PRIVATE; public class BackwardReferenceIndexWriter { - public static final String PROP_KEY = "ref.index.builder"; - - public static volatile boolean forceEnabled; + public static final String PROP_KEY = "jps.backward.ref.index.builder"; private static volatile BackwardReferenceIndexWriter ourInstance; @@ -53,8 +51,14 @@ public class BackwardReferenceIndexWriter { myRebuild = rebuild; } - public static void clearInstance() { - ourInstance = null; + public static void closeIfNeed() { + if (ourInstance != null) { + try { + ourInstance.close(); + } finally { + ourInstance = null; + } + } } static BackwardReferenceIndexWriter getInstance() { @@ -85,7 +89,7 @@ public class BackwardReferenceIndexWriter { } public static boolean isEnabled() { - return SystemProperties.getBooleanProperty(PROP_KEY, false) || forceEnabled; + return SystemProperties.getBooleanProperty(PROP_KEY, false); } void close() { diff --git a/jps/jps-builders/testSrc/org/jetbrains/references/ReferenceIndexTestBase.kt b/jps/jps-builders/testSrc/org/jetbrains/references/ReferenceIndexTestBase.kt index 2cdaac81f565..accc05100e94 100644 --- a/jps/jps-builders/testSrc/org/jetbrains/references/ReferenceIndexTestBase.kt +++ b/jps/jps-builders/testSrc/org/jetbrains/references/ReferenceIndexTestBase.kt @@ -31,16 +31,13 @@ import java.io.File abstract class ReferenceIndexTestBase : JpsBuildTestCase() { public override fun setUp() { - BackwardReferenceIndexWriter.forceEnabled = true super.setUp() -// System.setProperty(BackwardReferenceIndexWriter.PROP_KEY, true.toString()) + System.setProperty(BackwardReferenceIndexWriter.PROP_KEY, true.toString()) } public override fun tearDown() { super.tearDown() - BackwardReferenceIndexWriter.forceEnabled = false - BackwardReferenceIndexWriter.clearInstance() -// System.clearProperty(BackwardReferenceIndexWriter.PROP_KEY) + System.clearProperty(BackwardReferenceIndexWriter.PROP_KEY) } protected fun assertIndexOnRebuild(vararg files: String) {