From 1101bb7fb49f1f274976887ec2e7cff47235a583 Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Mon, 18 Dec 2017 11:42:43 +0100 Subject: [PATCH] Treat "daemon is dying" state as a case for fallback compilation strategy in jps --- .../jetbrains/kotlin/compilerRunner/JpsKotlinCompilerRunner.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/JpsKotlinCompilerRunner.kt b/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/JpsKotlinCompilerRunner.kt index 1984d68caba..a049f3c31b7 100644 --- a/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/JpsKotlinCompilerRunner.kt +++ b/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/JpsKotlinCompilerRunner.kt @@ -147,7 +147,8 @@ class JpsKotlinCompilerRunner : KotlinCompilerRunner() { val verbose = compilerArgs.verbose val options = CompilationOptions(compilerMode, targetPlatform, reportCategories(verbose), reportSeverity(verbose), requestedCompilationResults = emptyArray()) val res = daemon.compile(sessionId, withAdditionalCompilerArgs(compilerArgs), options, JpsCompilerServicesFacadeImpl(environment), null) - return exitCodeFromProcessExitCode(res.get()) + // TODO: consider implementing connection retry, instead of fallback here + return res.takeUnless { it is CompileService.CallResult.Dying }?.let { exitCodeFromProcessExitCode(it.get()) } } private fun withAdditionalCompilerArgs(compilerArgs: CommonCompilerArguments): Array {