Make lookup storage addAll order independent
Lookup storage output files could differ for projects
with different absolute paths.
This happened because, paths for lookups were
relativized only before writing to the underlying storage.
Storing absolute paths in a hash table could
result in different order of adding files to the lookup storage.
This commit fixes the issue by sorting lookups and files in
LookupStorage#addAll
#KT-32674 Fixed
This commit is contained in:
+2
-5
@@ -8,11 +8,8 @@ package org.jetbrains.kotlin.daemon.experimental
|
||||
import com.intellij.util.containers.StringInterner
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import org.jetbrains.kotlin.daemon.EventManager
|
||||
import org.jetbrains.kotlin.daemon.common.*
|
||||
import org.jetbrains.kotlin.daemon.common.experimental.CompilerCallbackServicesFacadeClientSide
|
||||
import org.jetbrains.kotlin.daemon.common.DummyProfiler
|
||||
import org.jetbrains.kotlin.daemon.common.Profiler
|
||||
import org.jetbrains.kotlin.daemon.common.withMeasure
|
||||
import org.jetbrains.kotlin.daemon.common.withMeasureBlocking
|
||||
import org.jetbrains.kotlin.incremental.components.LookupInfo
|
||||
import org.jetbrains.kotlin.incremental.components.LookupTracker
|
||||
import org.jetbrains.kotlin.incremental.components.Position
|
||||
@@ -20,7 +17,7 @@ import org.jetbrains.kotlin.incremental.components.ScopeKind
|
||||
|
||||
|
||||
class RemoteLookupTrackerClient(
|
||||
val facade: CompilerCallbackServicesFacadeClientSide,
|
||||
val facade: CompilerCallbackServicesFacadeAsync,
|
||||
eventManager: EventManager,
|
||||
val profiler: Profiler = DummyProfiler()
|
||||
) : LookupTracker {
|
||||
|
||||
Reference in New Issue
Block a user