Open gfrancischini opened 8 months ago
➤ PM Bot commented:
Jira ticket: RJS-2784
@gfrancischini Thank you for reporting.
The issue is similar to https://github.com/realm/realm-js/issues/6558, and we are investigating.
@gfrancischini I have a PR up which I think will fix the issue: #6612
Hi Kneth, thanks for the update. It seems that the change is only on JS side right?
// Clear the internal state to prevent crashes when reloading on React Native
binding.RealmCoordinator.clearAllCaches();
binding.App.clearCachedApps();
I will give a try
@kneth We have tried hot reload this time and the app is still crashing for us with latest version of realm 12.7.1.
Note: It does not crashes normally though for the first time.
@vatsal-gadhiya-searce Sorry to hear. I'll reopen the issue and we need to investigate further. If you can share a stack trace, we will appreciate it.
@kneth here repo realmDemo reproducible
https://github.com/realm/realm-js/assets/159114096/d0aed733-b221-4649-ae65-075f08b3a594
It seems to me we need to add a cleanup of connection state listeners, the same way we clean up other listeners passed to core, as part of the cleanup we do here: https://github.com/realm/realm-js/blob/56112c7351b9d4a5abdb6904bfd2ac14e61266cb/packages/realm/src/platform/react-native/index.ts#L28-L30
More specifically, we should expose a method on the SyncSession
in Core (similiar to unregister_connection_change_callback) to remove all listeners from the underlying vector holding references to connection listener callbacks.
I'm finding this exact same issue on iOS since migrating to v12
I'm still having this issue on android on 12.12.1.
You can use this repo to reproduce the issue: https://github.com/Spring-Global/realm-react-native-sample/tree/realm-crash-callback
➤ danieltabacaru commented:
[~kenneth.geisshirt@mongodb.com] Is anyone taking over from Gagik? Apparently the fix in https://github.com/realm/realm-core/pull/7963 does not fully fix the crashes, so it'd be very helpful to get a repro.
@danieltabacaru Maybe a combination of https://github.com/realm/realm-js/pull/6824 and the core fix?
@kraenhansen is probably the best one to take over.
➤ danieltabacaru commented:
[~kenneth.geisshirt@mongodb.com] Gagik tried that, but the race is still there.
How frequently does the bug occur?
Always
Description
The react native application is crashing when there is an active syncSession.addConnectionNotification and the app gets reloaded
Stacktrace & log output
Can you reproduce the bug?
Yes, always
Reproduction Steps
Using this branch: https://github.com/Spring-Global/realm-react-native-sample/tree/realm-crash-callback
Version
realm@12.6.2
What services are you using?
Atlas Device Sync
Are you using encryption?
No
Platform OS and version(s)
Android - Emulator API 34
Build environment
Which debugger for React Native: ..
Cocoapods version
No response