realm-js: Realm-JS and RealmSwift integration in a React Native application doesn't work when compiled with Xcode 9.

Hi, We are writing a brownfield React Native application wherein we need realm-js as well as RealmSwift integration. It worked till date with realm-js version 1.3.1 and RealmSwift version 2.7.0. But when we are trying to migrate to Xcode 9, we are getting below mentioned runtime error logs. If you could help us on the same.

Error logs

`table.cpp:2665: [realm-core-2.6.0] Assertion failed: dynamic_cast<Parent*>(array_parent) 0 MyApp 0x00000001101ac55f _ZN5realm4utilL18terminate_internalERNSt3__118basic_stringstreamIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE + 40 1 MyApp 0x00000001101ac920 _ZN5realm4util9terminateEPKcS2_lOSt16initializer_listINS0_9PrintableEE + 445 2 MyApp 0x00000001102610a7 _ZNK5realm5Table20get_parent_table_ptrEPm + 183 3 MyApp 0x000000010ff157ed _ZNK5realm5Table12bump_versionEb + 221 4 MyApp 0x000000011025f923 _ZN5realm5Table16insert_empty_rowEmm + 103 5 MyApp 0x000000011005a445 _ZN5realm5Table13add_empty_rowEm + 69 6 MyApp 0x000000011005964a _ZN5realm6Object6createIPK13OpaqueJSValuePK15OpaqueJSContextEES0_T0_NSt3__110shared_ptrINS_5RealmEEERKNS_12ObjectSchemaET_b + 1370 7 MyApp 0x0000000110103740 _ZN5realm2js10RealmClassINS_3jsc5TypesEE6createEPK15OpaqueJSContextP13OpaqueJSValueS9_mPKPKS8_RNS0_11ReturnValueIS3_EE + 1152 8 MyApp 0x00000001100d2065 ZN5realm2js4wrapIXadL_ZNS0_10RealmClassINS_3jsc5TypesEE6createEPK15OpaqueJSContextP13OpaqueJSValueSA_mPKPKS9_RNS0_11ReturnValueIS4_EEEEEESC_S8_SA_SA_mSE_PSC

  • 101 9 JavaScriptCore 0x0000000116ee84e5 _ZN3JSC19APICallbackFunction4callINS_18JSCallbackFunctionEEExPNS_9ExecStateE + 501 10 JavaScriptCore 0x0000000116ff7d01 _ZN3JSC5LLInt9setUpCallEPNS_9ExecStateEPNS_11InstructionENS_22CodeSpecializationKindENS_7JSValueEPNS_17LLIntCallLinkInfoE + 577 11 JavaScriptCore 0x0000000117000f7d llint_entry + 27269 12 JavaScriptCore 0x0000000116ffa310 vmEntryToJavaScript + 304 13 JavaScriptCore 0x0000000116e8b2ef _ZN3JSC7JITCode7executeEPNS_2VMEPNS_14ProtoCallFrameE + 127 14 JavaScriptCore 0x0000000116e51981 _ZN3JSC11Interpreter11executeCallEPNS_9ExecStateEPNS_8JSObjectENS_8CallTypeERKNS_8CallDataENS_7JSValueERKNS_7ArgListE + 433 15 JavaScriptCore 0x0000000116b429a2 _ZN3JSC12profiledCallEPNS_9ExecStateENS_15ProfilingReasonENS_7JSValueENS_8CallTypeERKNS_8CallDataES3_RKNS_7ArgListE + 178 16 JavaScriptCore 0x0000000116f4c3bd JSObjectCallAsFunction + 461 17 MyApp 0x000000010ff52529 ZN5realm2js8FunctionINS_3jsc5TypesEE4callEPK15OpaqueJSContextRKP13OpaqueJSValueSB_mPKPKS8 + 89 18 MyApp 0x0000000110104a0b _ZN5realm2js10RealmClassINS_3jsc5TypesEE5writeEPK15OpaqueJSContextP13OpaqueJSValueS9_mPKPKS8_RNS0_11ReturnValueIS3_EE + 331 19 MyApp 0x00000001100d23f5 ZN5realm2js4wrapIXadL_ZNS0_10RealmClassINS_3jsc5TypesEE5writeEPK15OpaqueJSContextP13OpaqueJSValueSA_mPKPKS9_RNS0_11ReturnValueIS4_EEEEEESC_S8_SA_SA_mSE_PSC + 101 20 JavaScriptCore 0x0000000116ee84e5 _ZN3JSC19APICallbackFunction4callINS_18JSCallbackFunctionEEExPNS_9ExecStateE + 501 21 JavaScriptCore 0x0000000116ff7d01 _ZN3JSC5LLInt9setUpCallEPNS_9ExecStateEPNS_11InstructionENS_22CodeSpecializationKindENS_7JSValueEPNS_17LLIntCallLinkInfoE + 577 22 JavaScriptCore 0x0000000117000f7d llint_entry + 27269 23 JavaScriptCore 0x00000001170012c6 llint_entry + 28110 24 JavaScriptCore 0x00000001170012c6 llint_entry + 28110 25 JavaScriptCore 0x0000000117000f8b llint_entry + 27283 26 JavaScriptCore 0x00000001170012c6 llint_entry + 28110 27 ??? 0x00000587e50acfcf 0x0 + 6081221414863 28 ??? 0x00000587e50aa53d 0x0 + 6081221403965 29 JavaScriptCore 0x0000000117000f8b llint_entry + 27283 30 JavaScriptCore 0x0000000116ffa310 vmEntryToJavaScript + 304 31 JavaScriptCore 0x0000000116e8b2ef _ZN3JSC7JITCode7executeEPNS_2VMEPNS_14ProtoCallFrameE + 127 32 JavaScriptCore 0x0000000116e515b3 _ZN3JSC11Interpreter14executeProgramERKNS_10SourceCodeEPNS_9ExecStateEPNS_8JSObjectE + 13075 33 JavaScriptCore 0x0000000116b9f13f _ZN3JSC8evaluateEPNS_9ExecStateERKNS_10SourceCodeENS_7JSValueERN3WTF8NakedPtrINS_9ExceptionEEE + 303 34 JavaScriptCore 0x0000000116ee65d0 JSEvaluateScript + 432 35 MyApp 0x000000010fb0e691 _ZL24executeApplicationScript12TaggedScriptP5NSURLP20RCTPerformanceLoggerP15OpaqueJSContext + 1873 36 MyApp 0x000000010fb18470 __64-[RCTJSCExecutor executeApplicationScript:sourceURL:onComplete:]_block_invoke + 496 37 MyApp 0x000000010fb187df -[RCTJSCExecutor executeBlockOnJavaScriptQueue:] + 335 38 Foundation 0x000000011434b948 __NSThreadPerformPerform + 334 39 CoreFoundation 0x000000011565a2b1 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17 40 CoreFoundation 0x00000001156f9d31 __CFRunLoopDoSource0 + 81 41 CoreFoundation 0x000000011563ec19 __CFRunLoopDoSources0 + 185 42 CoreFoundation 0x000000011563e1ff __CFRunLoopRun + 1279 43 CoreFoundation 0x000000011563da89 CFRunLoopRunSpecific + 409 44 MyApp 0x000000010fb0c989 ﹍[RCTJSCExecutor runRunLoopThread]﹍ 489 45 Foundation 0x00000001143138ac NSThread__start + 1197 46 libsystem_pthread.dylib 0x000000011bc2593b _pthread_body + 180 47 libsystem_pthread.dylib 0x000000011bc25887 _pthread_body + 0 48 libsystem_pthread.dylib 0x000000011bc2508d thread_start + 13 IMPORTANT: if you see this error, please send this log to help@realm.io.`
    1. Version of Realm and Tooling

Please suggest if any other workaround is available.

  • Realm JS SDK Version: 1.3.1
  • RealmSwift SDK Version: 2.7.0
  • Node or React Native: 0.44.2
  • Client OS & Version: iOS 10.x, iOS 11.x
  • Which debugger for React Native: Chrome

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Reactions: 4
  • Comments: 32 (13 by maintainers)

Most upvoted comments

Hi @rajeshdongre I was having this issue you have described and have managed to fix it in my project. I am using RealmSwift 3.20.0 and RealmJS 3.4.2. RealmJS as of 3.4.0 includes a podspec which allows you to do a pod install instead of manually linking. I assume this means that the core issue causing this error is a linking issue.

@kneth Any updates?

Version 2.1.0 tries to improve the situation with Xcode 9. Please upgrade.

@rajeshdongre Looks like Google is blocking emails if you attached zip files. I better stop asking people to send us files but ask them to provide a link to the file 😄

@kneth Thank you for your quick response. Answer to your first question is Yes. We were using above mentioned Realm-JS SDK and RealmSwift versions for our brownfield application with Xcode 8. I will share a sample application which will resemble our existing application over help@realm.io.