realm-core icon indicating copy to clipboard operation
realm-core copied to clipboard

Invalid top array size (ref: 2224064, array size: 655360) file size: 0

Open BlueCobold opened this issue 5 months ago • 8 comments

SDK and version

SDK : RealmKotlin Version: 2.2.0 (Core 14.12.0)

Observations

  • How frequent do the crash occur? Rarely
  • Does it happen in production or during dev/test? Production
  • Can the crash be reproduced by you? No
  • Can you provide instructions for how we can reproduce it? No

Crash log / stacktrace

Failed to memory buffer:Invalid top array size (ref: 2224064, array size: 655360) file size: 0, read lock size: none, read lock version: none: java.lang.IllegalStateException: [RLM_ERR_INVALID_DATABASE]: Failed to open Realm file at path "....": Failed to memory buffer:Invalid top array size (ref: 2224064, array size: 655360) file size: 0, read lock size: none, read lock version: none at io.realm.kotlin.internal.interop.CoreErrorConverter.asThrowable(SourceFile:96) at io.realm.kotlin.internal.interop.realmcJNI.realm_open(Native Method) at io.realm.kotlin.internal.interop.realmc.realm_open(SourceFile:1) at io.realm.kotlin.internal.interop.RealmInterop.realm_open(SourceFile:41) at io.realm.kotlin.internal.ConfigurationImpl.openRealm$lambda$0(SourceFile:18) at io.realm.kotlin.internal.ConfigurationImpl.a(SourceFile:1) at io.realm.kotlin.internal.b.invoke(SourceFile:1) at io.realm.kotlin.internal.interop.NativePointerKt.use(SourceFile:11) at io.realm.kotlin.internal.ConfigurationImpl.openRealm$suspendImpl(SourceFile:20) at io.realm.kotlin.internal.ConfigurationImpl.openRealm(SourceFile:1) at io.realm.kotlin.internal.RealmImpl$1.invokeSuspend(SourceFile:138) at kotlin.coroutines.jvm.internal.a.resumeWith(SourceFile:12) at kotlinx.coroutines.DispatchedTask.run(SourceFile:129) at kotlinx.coroutines.EventLoopImplBase.processNextEvent(SourceFile:82) at kotlinx.coroutines.BlockingCoroutine.joinBlocking(SourceFile:27) at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(SourceFile:77) at kotlinx.coroutines.BuildersKt.runBlocking(SourceFile:1) at io.realm.kotlin.internal.platform.CoroutineUtilsSharedJvmKt.runBlocking(SourceFile:11) at io.realm.kotlin.internal.platform.CoroutineUtilsSharedJvmKt.runBlocking$default(SourceFile:7) at io.realm.kotlin.internal.RealmImpl.\u003cinit\u003e(SourceFile:15) at io.realm.kotlin.internal.RealmImpl.\u003cinit\u003e(SourceFile:1) at io.realm.kotlin.internal.RealmImpl$Companion.create$io_realm_kotlin_library(SourceFile:9) at io.realm.kotlin.Realm$Companion.open(SourceFile:10)

Steps & Code to Reproduce

I sadly do not have the file in question. However, a broken topRef means there are still bugs which make Realm not ACID and a reported file size of 0 means the error message is incorrect as well, because if it was 0 bytes in size, there would not be a readable topRef at all.

BlueCobold avatar Sep 24 '24 08:09 BlueCobold