You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CoroutinesBlockHoundIntegration should probably add exceptions for blocking calls caused by Kotlin reflection API:
reactor.blockhound.BlockingOperationError: Blocking call! java.io.RandomAccessFile#readBytes
at java.base/java.io.RandomAccessFile.readBytes(RandomAccessFile.java)
at java.base/java.io.RandomAccessFile.read(RandomAccessFile.java:408)
at java.base/java.io.RandomAccessFile.readFully(RandomAccessFile.java:472)
at java.base/java.util.zip.ZipFile$Source.readFullyAt(ZipFile.java:1239)
at java.base/java.util.zip.ZipFile$ZipFileInputStream.initDataOffset(ZipFile.java:933)
at java.base/java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:948)
at java.base/java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:460)
at java.base/java.util.zip.InflaterInputStream.read(InflaterInputStream.java:159)
at java.base/java.io.InputStream.readNBytes(InputStream.java:498)
at java.base/java.util.jar.JarFile.getBytes(JarFile.java:806)
at java.base/java.util.jar.JarFile.checkForSpecialAttributes(JarFile.java:1006)
at java.base/java.util.jar.JarFile.isMultiRelease(JarFile.java:388)
at java.base/java.util.jar.JarFile.getEntry(JarFile.java:507)
at java.base/sun.net.www.protocol.jar.URLJarFile.getEntry(URLJarFile.java:131)
at java.base/sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:137)
at java.base/sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:155)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.parse(ServiceLoader.java:1165)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.nextProviderClass(ServiceLoader.java:1206)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1221)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1265)
at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1300)
at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1385)
at kotlin.collections.CollectionsKt___CollectionsKt.toCollection(_Collections.kt:1243)
at kotlin.collections.CollectionsKt___CollectionsKt.toMutableList(_Collections.kt:1276)
at kotlin.collections.CollectionsKt___CollectionsKt.toList(_Collections.kt:1267)
at kotlin.reflect.jvm.internal.impl.resolve.OverridingUtil.<clinit>(OverridingUtil.java:49)
at kotlin.reflect.jvm.internal.impl.types.checker.NewKotlinTypeCheckerImpl.<init>(NewKotlinTypeChecker.kt:75)
at kotlin.reflect.jvm.internal.impl.types.checker.NewKotlinTypeChecker$Companion.<clinit>(NewKotlinTypeChecker.kt:69)
at kotlin.reflect.jvm.internal.impl.types.checker.NewKotlinTypeChecker.<clinit>(NewKotlinTypeChecker.kt)
at kotlin.reflect.jvm.internal.impl.descriptors.runtime.components.RuntimeModuleDataKt.makeLazyJavaPackageFragmentFromClassLoaderProvider(RuntimeModuleData.kt:120)
at kotlin.reflect.jvm.internal.impl.descriptors.runtime.components.RuntimeModuleDataKt.makeLazyJavaPackageFragmentFromClassLoaderProvider$default(RuntimeModuleData.kt:110)
at kotlin.reflect.jvm.internal.impl.descriptors.runtime.components.RuntimeModuleData$Companion.create(RuntimeModuleData.kt:68)
at kotlin.reflect.jvm.internal.ModuleByClassLoaderKt.getOrCreateModule(moduleByClassLoader.kt:58)
at kotlin.reflect.jvm.internal.KDeclarationContainerImpl$Data$moduleData$2.invoke(KDeclarationContainerImpl.kt:37)
at kotlin.reflect.jvm.internal.KDeclarationContainerImpl$Data$moduleData$2.invoke(KDeclarationContainerImpl.kt:34)
at kotlin.reflect.jvm.internal.ReflectProperties$LazySoftVal.invoke(ReflectProperties.java:92)
at kotlin.reflect.jvm.internal.ReflectProperties$Val.getValue(ReflectProperties.java:31)
at kotlin.reflect.jvm.internal.KDeclarationContainerImpl$Data.getModuleData(KDeclarationContainerImpl.kt)
at kotlin.reflect.jvm.internal.KClassImpl$Data$descriptor$2.invoke(KClassImpl.kt:49)
at kotlin.reflect.jvm.internal.KClassImpl$Data$descriptor$2.invoke(KClassImpl.kt:46)
at kotlin.reflect.jvm.internal.ReflectProperties$LazySoftVal.invoke(ReflectProperties.java:92)
at kotlin.reflect.jvm.internal.ReflectProperties$Val.getValue(ReflectProperties.java:31)
at kotlin.reflect.jvm.internal.KClassImpl$Data.getDescriptor(KClassImpl.kt)
at kotlin.reflect.jvm.internal.KClassImpl.getDescriptor(KClassImpl.kt:181)
at kotlin.reflect.jvm.internal.KClassImpl.getDescriptor(KClassImpl.kt:43)
at kotlin.reflect.full.KClassifiers.createType(KClassifiers.kt:47)
at kotlin.reflect.jvm.internal.ReflectionFactoryImpl.typeOf(ReflectionFactoryImpl.java:123)
at kotlin.jvm.internal.Reflection.typeOf(Reflection.java:127)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1$1.invoke(BsonRaptorFeature.kt:44)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1$1.invoke(BsonRaptorFeature.kt:7)
at io.fluidsonic.raptor.RaptorDIFeatureKt$di$1.invoke(RaptorDIFeature.kt:21)
at io.fluidsonic.raptor.RaptorDIFeatureKt$di$1.invoke(RaptorDIFeature.kt)
at io.fluidsonic.raptor.DefaultRaptorComponentRegistry$RegistrationSet.configure(DefaultRaptorComponentRegistry.kt:177)
at io.fluidsonic.raptor.RaptorComponentRegistryKt.configure(RaptorComponentRegistry.kt:29)
at io.fluidsonic.raptor.RaptorDIFeatureKt.di(RaptorDIFeature.kt:20)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1.invoke(BsonRaptorFeature.kt:21)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1.invoke(BsonRaptorFeature.kt:7)
at io.fluidsonic.raptor.RaptorFeatureInstallCheckScopeKt$ifInstalled$$inlined$with$lambda$1.invoke(RaptorFeatureInstallCheckScope.kt:14)
at io.fluidsonic.raptor.RaptorFeatureInstallCheckScopeKt$ifInstalled$$inlined$with$lambda$1.invoke(RaptorFeatureInstallCheckScope.kt)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.applyLazyFeatureConfigurations(DefaultRaptorRootComponent.kt:28)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.install(DefaultRaptorRootComponent.kt:67)
at io.fluidsonic.raptor.RaptorQuickstartFeature.beginConfiguration(RaptorQuickstartFeature.kt:13)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.install(DefaultRaptorRootComponent.kt:64)
at edis.MainRaptorKt$mainRaptor$1.invoke(MainRaptor.kt:12)
at edis.MainRaptorKt$mainRaptor$1.invoke(MainRaptor.kt)
at io.fluidsonic.raptor.RaptorKt.raptor(Raptor.kt:25)
at edis.MainRaptorKt.mainRaptor(MainRaptor.kt:9)
at edis.MainKt.main(Main.kt:63)
at edis.MainKt$$$main.invoke(Unknown Source)
at kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsJvmKt$createCoroutineUnintercepted$$inlined$createCoroutineFromSuspendFunction$IntrinsicsKt__IntrinsicsJvmKt$1.invokeSuspend(IntrinsicsJvm.kt:205)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.coroutines.ContinuationKt.startCoroutine(Continuation.kt:115)
at kotlin.coroutines.jvm.internal.RunSuspendKt.runSuspend(RunSuspend.kt:19)
at edis.MainKt.main(Main.kt)
reactor.blockhound.BlockingOperationError: Blocking call! java.io.RandomAccessFile#readBytes
at java.base/java.io.RandomAccessFile.readBytes(RandomAccessFile.java)
at java.base/java.io.RandomAccessFile.read(RandomAccessFile.java:408)
at java.base/java.io.RandomAccessFile.readFully(RandomAccessFile.java:472)
at java.base/java.util.zip.ZipFile$Source.readFullyAt(ZipFile.java:1239)
at java.base/java.util.zip.ZipFile$ZipFileInputStream.initDataOffset(ZipFile.java:933)
at java.base/java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:948)
at java.base/java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:460)
at java.base/java.util.zip.InflaterInputStream.read(InflaterInputStream.java:159)
at java.base/java.util.zip.InflaterInputStream.read(InflaterInputStream.java:123)
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:83)
at java.base/java.io.DataInputStream.readInt(DataInputStream.java:392)
at kotlin.reflect.jvm.internal.impl.metadata.builtins.BuiltInsBinaryVersion$Companion.readFrom(BuiltInsBinaryVersion.kt:29)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.builtins.BuiltInsPackageFragmentImpl$Companion.create(BuiltInsPackageFragmentImpl.kt:38)
at kotlin.reflect.jvm.internal.impl.builtins.jvm.JvmBuiltInsPackageFragmentProvider.findPackage(JvmBuiltInsPackageFragmentProvider.kt:61)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.AbstractDeserializedPackageFragmentProvider$fragments$1.invoke(AbstractDeserializedPackageFragmentProvider.kt:34)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.AbstractDeserializedPackageFragmentProvider$fragments$1.invoke(AbstractDeserializedPackageFragmentProvider.kt:26)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:527)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.AbstractDeserializedPackageFragmentProvider.getPackageFragments(AbstractDeserializedPackageFragmentProvider.kt:41)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.CompositePackageFragmentProvider.getPackageFragments(CompositePackageFragmentProvider.kt:31)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.CompositePackageFragmentProvider.getPackageFragments(CompositePackageFragmentProvider.kt:31)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.LazyPackageViewDescriptorImpl$fragments$2.invoke(LazyPackageViewDescriptorImpl.kt:37)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.LazyPackageViewDescriptorImpl$fragments$2.invoke(LazyPackageViewDescriptorImpl.kt:30)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:370)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:489)
at kotlin.reflect.jvm.internal.impl.storage.StorageKt.getValue(storage.kt:42)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.LazyPackageViewDescriptorImpl.getFragments(LazyPackageViewDescriptorImpl.kt)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.LazyPackageViewDescriptorImpl$memberScope$1.invoke(LazyPackageViewDescriptorImpl.kt:41)
at kotlin.reflect.jvm.internal.impl.descriptors.impl.LazyPackageViewDescriptorImpl$memberScope$1.invoke(LazyPackageViewDescriptorImpl.kt:30)
at kotlin.reflect.jvm.internal.impl.resolve.scopes.LazyScopeAdapter$lazyScope$1.invoke(LazyScopeAdapter.kt:28)
at kotlin.reflect.jvm.internal.impl.resolve.scopes.LazyScopeAdapter$lazyScope$1.invoke(LazyScopeAdapter.kt:22)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:370)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:489)
at kotlin.reflect.jvm.internal.impl.resolve.scopes.LazyScopeAdapter.getWorkerScope(LazyScopeAdapter.kt:34)
at kotlin.reflect.jvm.internal.impl.resolve.scopes.AbstractScopeAdapter.getContributedClassifier(AbstractScopeAdapter.kt:44)
at kotlin.reflect.jvm.internal.impl.descriptors.FindClassInModuleKt.findClassifierAcrossModuleDependencies(findClassInModule.kt:26)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer.computeClassifierDescriptor(TypeDeserializer.kt:240)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer.access$computeClassifierDescriptor(TypeDeserializer.kt:23)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer$classifierDescriptors$1.invoke(TypeDeserializer.kt:33)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer$classifierDescriptors$1.invoke(TypeDeserializer.kt:23)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:527)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer.typeConstructor(TypeDeserializer.kt:132)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer.simpleType(TypeDeserializer.kt:76)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.TypeDeserializer.type(TypeDeserializer.kt:64)
at kotlin.reflect.jvm.internal.impl.serialization.deserialization.descriptors.DeserializedClassDescriptor$DeserializedClassTypeConstructor.computeSupertypes(DeserializedClassDescriptor.kt:190)
at kotlin.reflect.jvm.internal.impl.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:80)
at kotlin.reflect.jvm.internal.impl.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:26)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:370)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedLazyValueWithPostCompute.invoke(LockBasedStorageManager.java:443)
at kotlin.reflect.jvm.internal.impl.storage.LockBasedStorageManager$LockBasedNotNullLazyValueWithPostCompute.invoke(LockBasedStorageManager.java:474)
at kotlin.reflect.jvm.internal.impl.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:27)
at kotlin.reflect.jvm.internal.impl.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:26)
at kotlin.reflect.jvm.internal.KClassImpl$Data$supertypes$2.invoke(KClassImpl.kt:124)
at kotlin.reflect.jvm.internal.KClassImpl$Data$supertypes$2.invoke(KClassImpl.kt:46)
at kotlin.reflect.jvm.internal.ReflectProperties$LazySoftVal.invoke(ReflectProperties.java:92)
at kotlin.reflect.jvm.internal.ReflectProperties$Val.getValue(ReflectProperties.java:31)
at kotlin.reflect.jvm.internal.KClassImpl$Data.getSupertypes(KClassImpl.kt)
at kotlin.reflect.jvm.internal.KClassImpl.getSupertypes(KClassImpl.kt:253)
at kotlin.reflect.full.KClasses.getSuperclasses(KClasses.kt:185)
at kotlin.reflect.full.KClasses$isSubclassOf$1.get(KClasses.kt:234)
at kotlin.jvm.internal.PropertyReference1.invoke(PropertyReference1.java:35)
at kotlin.reflect.full.KClasses$sam$org_jetbrains_kotlin_utils_DFS_Neighbors$0.getNeighbors(KClasses.kt)
at kotlin.reflect.jvm.internal.impl.utils.DFS.doDfs(DFS.java:98)
at kotlin.reflect.jvm.internal.impl.utils.DFS.dfs(DFS.java:27)
at kotlin.reflect.jvm.internal.impl.utils.DFS.dfs(DFS.java:37)
at kotlin.reflect.jvm.internal.impl.utils.DFS.ifAny(DFS.java:47)
at kotlin.reflect.full.KClasses.isSubclassOf(KClasses.kt:234)
at io.fluidsonic.raptor.DefaultRaptorDIBuilder.validateType(DefaultRaptorDIBuilder.kt:39)
at io.fluidsonic.raptor.DefaultRaptorDIBuilder.provide(DefaultRaptorDIBuilder.kt:20)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1$1.invoke(BsonRaptorFeature.kt:44)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1$1.invoke(BsonRaptorFeature.kt:7)
at io.fluidsonic.raptor.RaptorDIFeatureKt$di$1.invoke(RaptorDIFeature.kt:21)
at io.fluidsonic.raptor.RaptorDIFeatureKt$di$1.invoke(RaptorDIFeature.kt)
at io.fluidsonic.raptor.DefaultRaptorComponentRegistry$RegistrationSet.configure(DefaultRaptorComponentRegistry.kt:177)
at io.fluidsonic.raptor.RaptorComponentRegistryKt.configure(RaptorComponentRegistry.kt:29)
at io.fluidsonic.raptor.RaptorDIFeatureKt.di(RaptorDIFeature.kt:20)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1.invoke(BsonRaptorFeature.kt:21)
at io.fluidsonic.raptor.BsonRaptorFeature$beginConfiguration$1.invoke(BsonRaptorFeature.kt:7)
at io.fluidsonic.raptor.RaptorFeatureInstallCheckScopeKt$ifInstalled$$inlined$with$lambda$1.invoke(RaptorFeatureInstallCheckScope.kt:14)
at io.fluidsonic.raptor.RaptorFeatureInstallCheckScopeKt$ifInstalled$$inlined$with$lambda$1.invoke(RaptorFeatureInstallCheckScope.kt)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.applyLazyFeatureConfigurations(DefaultRaptorRootComponent.kt:28)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.install(DefaultRaptorRootComponent.kt:67)
at io.fluidsonic.raptor.RaptorQuickstartFeature.beginConfiguration(RaptorQuickstartFeature.kt:13)
at io.fluidsonic.raptor.DefaultRaptorRootComponent.install(DefaultRaptorRootComponent.kt:64)
at edis.MainRaptorKt$mainRaptor$1.invoke(MainRaptor.kt:12)
at edis.MainRaptorKt$mainRaptor$1.invoke(MainRaptor.kt)
at io.fluidsonic.raptor.RaptorKt.raptor(Raptor.kt:25)
at edis.MainRaptorKt.mainRaptor(MainRaptor.kt:9)
at edis.MainKt.main(Main.kt:64)
at edis.MainKt$$$main.invoke(Unknown Source)
at kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsJvmKt$createCoroutineUnintercepted$$inlined$createCoroutineFromSuspendFunction$IntrinsicsKt__IntrinsicsJvmKt$1.invokeSuspend(IntrinsicsJvm.kt:205)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.coroutines.ContinuationKt.startCoroutine(Continuation.kt:115)
at kotlin.coroutines.jvm.internal.RunSuspendKt.runSuspend(RunSuspend.kt:19)
at edis.MainKt.main(Main.kt)
The text was updated successfully, but these errors were encountered:
Partially solved via #2331. The reflection API is large, and it would be difficult to ensure that all the cases are covered, so, given that simple examples work at least, it's probably better to roll out the partial solution and fix other issues as they surface.
I'm closing this issue for now, but feel free to reopen it in case some other false positives arise.
Uh oh!
There was an error while loading. Please reload this page.
CoroutinesBlockHoundIntegration
should probably add exceptions for blocking calls caused by Kotlin reflection API:The text was updated successfully, but these errors were encountered: