-
Notifications
You must be signed in to change notification settings - Fork 173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Random Realm crashes #5435
Comments
@anton-plebanovich thanks for reporting this! It looks like an assertion failure, is there an assertion message captured from stderr on these devices that you can share? Getting a reproduction case for this would be ideal, but I understand that may be difficult to obtain. Guessing about the network thread sent to the background sounds promising. Maybe it is an edge case that we have not handled correctly; possibly |
➤ James Stone commented: [~[email protected]] do you have capacity to investigate this? This issue might just go away when we remove the custom websocket implementation as well. |
@ironage Sadly, there is only |
➤ Daniel Tabacaru commented: [~[email protected]] I don't have capacity at the moment. I could investigate it at a later point if it's not too urgent. |
➤ Ian Ward commented: Hi. Going through old support tickets this quarter - has there been any more progress on this ticket? |
➤ michael-wb commented: We had a customer ticket come in HELP-38176 that was closed since the customer never got back to us when requesting debug info to confirm that this is a related task. I had started looking into this - it seems to be a failure that occurs when SSL encryption is enabled, but it is difficult to reproduce. I have been primarily focused on getting Platform Networking across the finish line and will get back to looking at this TR afterwards. |
<h3>Snyk has created this PR to upgrade realm from 11.5.2 to 11.6.0.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **22 days ago**, on 2023-03-23. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>realm</b></summary> <ul> <li> <b>11.6.0</b> - <a href="https://snyk.io/redirect/github/realm/realm-js/releases/tag/v11.6.0">2023-03-23</a></br><h3>Enhancements</h3> <ul> <li>Added configuration option <code>App.baseFilePath</code> which controls where synced Realms and metadata is stored.</li> </ul> <h3>Fixed</h3> <ul> <li>Fix type error when using <code>realm.create</code> in combination with class base models. (since v11.0.0)</li> </ul> <h3>Compatibility</h3> <ul> <li>React Native >= v0.71.0</li> <li>Realm Studio v13.0.0.</li> <li>File format: generates Realms with format v23 (reads and upgrades file format v5 or later for non-synced Realm, upgrades file format v10 or later for synced Realms).</li> </ul> <h3>Internal</h3> <ul> <li>Test</li> </ul> </li> <li> <b>11.5.2</b> - <a href="https://snyk.io/redirect/github/realm/realm-js/releases/tag/v11.5.2">2023-03-16</a></br><h3>Fixed</h3> <ul> <li>Suppress omitting <code>objcMsgsend</code> stubs to ensure backward compatibility with Xcode 13. It can be observed as <code>Undefined symbols for architecture arm64: "_objc_msgSend$allBundles", referenced from: realm::copy_bundled_realm_files() in librealm-js-ios.a(platform.o)</code> when using a React Native app for iOS. (<a href="https://snyk.io/redirect/github/realm/realm-js/issues/5511" data-hovercard-type="issue" data-hovercard-url="/realm/realm-js/issues/5511/hovercard">#5511</a>, since v11.5.1)</li> <li>It is not allowed to specify <code>deleteRealmIfMigrationIsNeeded</code> and sync. This can lead to error messages like <code>Schema validation failed due to the following errors</code>. (<a href="https://snyk.io/redirect/github/realm/realm-js/issues/5548" data-hovercard-type="issue" data-hovercard-url="/realm/realm-js/issues/5548/hovercard">#5548</a>, v10.12.0)</li> <li>Installation will no longer hang when using Node 19. (<a href="https://snyk.io/redirect/github/realm/realm-js/issues/5136" data-hovercard-type="issue" data-hovercard-url="/realm/realm-js/issues/5136/hovercard">#5136</a>, since v10.13.0)</li> <li>Fixed enums which was accidentally exported on the <code>Realm</code> namespace without a backing implementation. (<a href="https://snyk.io/redirect/github/realm/realm-js/pull/5493" data-hovercard-type="pull_request" data-hovercard-url="/realm/realm-js/pull/5493/hovercard">#5493</a>, since v11.0.0)</li> <li>Converting local Realm to synced Realm crashes if an embedded object is null. (<a href="https://snyk.io/redirect/github/realm/realm-js/issues/5389" data-hovercard-type="issue" data-hovercard-url="/realm/realm-js/issues/5389/hovercard">#5389</a>, since v10.13.0)</li> <li>Fixed performance degradation on subqueries. (<a href="https://snyk.io/redirect/github/realm/realm-core/issues/6327" data-hovercard-type="issue" data-hovercard-url="/realm/realm-core/issues/6327/hovercard">realm/realm-core#6327</a>, since v6.0.0)</li> <li>Fixed crash if secure transport returns an error with a non-zero length. It can be observed as <code>Reading failed: Premature end of input</code> in the log. (<a href="https://snyk.io/redirect/github/realm/realm-core/issues/5435" data-hovercard-type="issue" data-hovercard-url="/realm/realm-core/issues/5435/hovercard">realm/realm-core#5435</a>, since v10.0.0)</li> <li>Creating subscriptions with queries having Unicode parameters causes a server error e.g., <code>query from client: "{"Product":"(stringQueryField BEGINSWITH B64\"2KzZhdi52Kpz\" )"}" could not be parsed</code>. (<a href="https://snyk.io/redirect/github/realm/realm-core/issues/6350" data-hovercard-type="issue" data-hovercard-url="/realm/realm-core/issues/6350/hovercard">realm/realm-core#6350</a>, since v10.11.0)</li> </ul> <h3>Compatibility</h3> <ul> <li>React Native >= v0.71.0</li> <li>Atlas App Services.</li> <li>Realm Studio v13.0.0.</li> <li>File format: generates Realms with format v23 (reads and upgrades file format v5 or later for non-synced Realm, upgrades file format v10 or later for synced Realms).</li> </ul> <h3>Internal</h3> <ul> <li>Upgraded Realm Core from v13.4.2 to v13.6.0. (<a href="https://snyk.io/redirect/github/realm/realm-js/issues/5495" data-hovercard-type="issue" data-hovercard-url="/realm/realm-js/issues/5495/hovercard">#5495</a>)</li> <li>All exceptions thrown out of Realm Core are now of type <code>Exception</code>.</li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/realm/realm-js/releases">realm GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>realm</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/5196e76d65c5faffa4246daeb3683ac6d0d17b35">5196e76</a> [11.6.0] Bump version</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/430afad55f3883c210449470788b93cc7dc41cd0">430afad</a> Expose baseFilePath on App configuration (#5572)</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/22977eaf83d21acec6200f636f75e2c99d365085">22977ea</a> Fix Create Call Signature (#5617)</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/832fd6a03d30123e047996005c6c1fc812653048">832fd6a</a> Reenable all tests (#5606)</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/b7245b3c60305baee7a22c35857c71de4fb407ff">b7245b3</a> Disable ccache for node builds (#5602)</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/bf629d375370285c8870b025c704b8a65b008c4f">bf629d3</a> Prepare for vNext (#5567)</li> <li><a href="https://snyk.io/redirect/github/realm/realm-js/commit/46711a59419a87c8a3bf973d155ff8fe9a12818c">46711a5</a> Prepare for 11.5.2 (#5560)</li> </ul> <a href="https://snyk.io/redirect/github/realm/realm-js/compare/d401cbeb41e76d42a45ba5dd4dc0b26eb71cbb9c...5196e76d65c5faffa4246daeb3683ac6d0d17b35">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiJiYmYyNzYyNS0wZWU5LTQ2MDEtODU2MS00Y2Y4YmY2ZGY0MmYiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6ImJiZjI3NjI1LTBlZTktNDYwMS04NTYxLTRjZjhiZjZkZjQyZiJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55/settings/integration?pkg=realm&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) <!--- (snyk:metadata:{"prId":"bbf27625-0ee9-4601-8561-4cf8bf6df42f","prPublicId":"bbf27625-0ee9-4601-8561-4cf8bf6df42f","dependencies":[{"name":"realm","from":"11.5.2","to":"11.6.0"}],"packageManager":"npm","type":"auto","projectUrl":"https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55?utm_source=github&utm_medium=referral&page=upgrade-pr","projectPublicId":"852e6e4f-be96-45c8-b370-1060f5ebee55","env":"prod","prType":"upgrade","vulns":[],"issuesToFix":[],"upgrade":[],"upgradeInfo":{"versionsDiff":1,"publishedDate":"2023-03-23T17:43:34.744Z"},"templateVariants":[],"hasFixes":false,"isMajorUpgrade":false,"isBreakingChange":false,"priorityScoreList":[]}) ---> --------- Co-authored-by: snyk-bot <[email protected]>
How frequently does the bug occur?
Sometimes
Description
We just rarely receive crash reports in the Crashlytics
Stacktrace & log output
The app was in the background for 20 minutes and then received some time to run in the background or was moving to the active state and crashed. One log also had
Reading failed: Premature end of input
andConnection[1]: Connection closed due to error
errors but another one didn't. Not sure if important but alsorealm.refresh()
method was called on two different Sync Realms. Overall, looks like network connection, obviously, becomes broken after app spends too much time in the background and then the app may crash when becoming active:The app tried to open Realm synchronously and crashed, not sure if important but there was also remote function call in parallel:
Can you reproduce the bug?
Not yet
Reproduction Steps
Unknown but for the first crash log it looks related to network connection timeout after leaving from the background
Version
10.25.0 and previous since I have continuous crash reports for 90 days
What SDK flavour are you using?
MongoDB Realm (i.e. Sync, auth, functions)
Are you using encryption?
No, not using encryption
Platform OS and version(s)
iPadOS 15.4.0, iPadOS 15.3.1, iOS 15.4.1, ...
Build environment
The text was updated successfully, but these errors were encountered: