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

Android Production: "Permission denied" Error with Realm in React Native

Open tharwi opened this issue 1 year ago • 0 comments

How frequently does the bug occur?

Sometimes

Description

We are encountering a fatal exception on some Android production builds (some Samsung devices) when initializing Realm in our React Native app. The error is thrown from the Realm JavaScript engine and originates at line 60 in src/storage/realm/index.ts when calling:

let nextSchemaIndex = Realm.schemaVersion(Realm.defaultPath);

This error does not occur on iOS.

Stacktrace & log output

Fatal Exception: com.facebook.react.common.JavascriptException: Error: Exception in HostFunction: Permission denied, js engine: hermes, stack:
/Users/Projects/MobileApp/src/storage/realm/index.ts:60:<global>
/Users/Projects/MobileApp/node_modules/metro-runtime/src/polyfills/require.js:273:loadModuleImplementation
/Users/Projects/MobileApp/node_modules/metro-runtime/src/polyfills/require.js:173:guardedLoadModule
/Users/Projects/MobileApp/node_modules/metro-runtime/src/polyfills/require.js:89:metroRequire
/Users/Projects/MobileApp/src/storage/realm/actions/profile.ts:13:ProfileActions.getAllActiveProfiles
/Users/Projects/MobileApp/src/hooks/useLastAddedProfile.ts:32:InteractionManager.runAfterInteractions$argument_0
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Interaction/TaskQueue.js:115:processNext
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Interaction/InteractionManager.js:196:_processUpdate
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Core/Timers/JSTimers.js:247:_allocateCallback$argument_0
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Core/Timers/JSTimers.js:111:_callTimer
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Core/Timers/JSTimers.js:161:_callReactNativeMicrotasksPass
/Users/Projects/MobileApp/node_modules/react-native/Libraries/Core/Timers/JSTimers.js:415:callReactNativeMicrotasks
/Users/Projects/MobileApp/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:393:__callReactNativeMicrotasks
/Users/Projects/MobileApp/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:132:__guard$argument_0
/Users/Projects/MobileApp/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:368:__guard
/Users/Projects/MobileApp/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:131:flushedQueue
    at com.facebook.react.modules.core.ExceptionsManagerModule.reportException(ExceptionsManagerModule.java:65)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
    at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:146)
    at com.facebook.jni.NativeRunnable.run(NativeRunnable.java)
    at android.os.Handler.handleCallback(Handler.java:938)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:27)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:233)
    at java.lang.Thread.run(Thread.java:920)

Can you reproduce the bug?

No

Reproduction Steps

No response

Version

11.10.2

What services are you using?

Local Database only

Are you using encryption?

No

Platform OS and version(s)

Android 13, Android 14

Build environment

Which debugger for React Native: ..

Cocoapods version

No response

tharwi avatar Mar 20 '25 08:03 tharwi