You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: add info about MutexLockWithTimeout exception (#691)
## 📜 Description
Added info about `MutexLockWithTimeout` exception and the way to resolve
it.
## 💡 Motivation and Context
This is the best thing I can do at the moment - just mention that the
problem exist and recommend to enable feature flag.
Closes#687#683#640
## 📢 Changelog
<!-- High level overview of important changes -->
<!-- For example: fixed status bar manipulation; added new types
declarations; -->
<!-- If your changes don't affect one of platform/language below - then
remove this platform/language -->
### Docs
- added new section in troubleshoot page;
## 🤔 How Has This Been Tested?
Tested via preview.
## 📸 Screenshots (if appropriate):
<img width="996" alt="image"
src="https://github.com/user-attachments/assets/2fb05243-d14a-4941-8ec7-2350069af3ae">
## 📝 Checklist
- [x] CI successfully passed
- [x] I added new mocks and corresponding unit-tests if library API was
changed
Copy file name to clipboardExpand all lines: docs/docs/troubleshooting.md
+19Lines changed: 19 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -66,3 +66,22 @@ Since part of this library is written using `swift` language - your project need
66
66
Sometimes you may see that animation performance is poor. If you are using `sentry@5` make sure `enableStallTracking` is disabled (i. e. `enableStallTracking: false`) or upgrade to `sentry@6`,
67
67
68
68
See [this issue](https://github.com/kirillzyusko/react-native-keyboard-controller/issues/641) for more details.
69
+
70
+
## `MutexLockWithTimeout` C++ exception
71
+
72
+
This exception is thrown when you are trying to use `KeyboardProvider` or `KeyboardAwareScrollView` on Android with the new architecture enabled. A top of stacktrace will look like this:
73
+
74
+
```bash
75
+
NonPI::MutexLockWithTimeout at line 384 within libc
76
+
offset 726000) (std::__ndk1::mutex::lock at line 12 within split_config.arm64_v8a.apk
77
+
offset c01000) (facebook::react::Binding::schedulerDidFinishTransaction at line 84 within split_config.arm64_v8a.apk
78
+
offset c01000) (facebook::react::Scheduler::uiManagerDidFinishTransaction at line 68 within split_config.arm64_v8a.apk
79
+
offset c01000) (facebook::react::UIManager::shadowTreeDidFinishTransaction const at line 64 within split_config.arm64_v8a.apk
80
+
offset c01000) (facebook::react::ShadowTree::mount const at line 348 within split_config.arm64_v8a.apk
81
+
offset c01000) (facebook::react::ShadowTree::tryCommit const at line 2612 within split_config.arm64_v8a.apk
82
+
```
83
+
84
+
You have two ways to fix this problem:
85
+
86
+
- enable`allowRecursiveCommitsWithSynchronousMountOnAndroid` feature flag (see [react-native-reanimated#6418](https://github.com/software-mansion/react-native-reanimated/issues/6418#issuecomment-2296107100) and [react-native-keyboard-controller](https://github.com/kirillzyusko/react-native-keyboard-controller/issues/687))
87
+
- upgrade to `[email protected]+` (starting from this version this flag is enabled by default).
Copy file name to clipboardExpand all lines: docs/versioned_docs/version-1.14.0/troubleshooting.md
+19Lines changed: 19 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -66,3 +66,22 @@ Since part of this library is written using `swift` language - your project need
66
66
Sometimes you may see that animation performance is poor. If you are using `sentry@5` make sure `enableStallTracking` is disabled (i. e. `enableStallTracking: false`) or upgrade to `sentry@6`,
67
67
68
68
See [this issue](https://github.com/kirillzyusko/react-native-keyboard-controller/issues/641) for more details.
69
+
70
+
## `MutexLockWithTimeout` C++ exception
71
+
72
+
This exception is thrown when you are trying to use `KeyboardProvider` or `KeyboardAwareScrollView` on Android with the new architecture enabled. A top of stacktrace will look like this:
73
+
74
+
```bash
75
+
NonPI::MutexLockWithTimeout at line 384 within libc
76
+
offset 726000) (std::__ndk1::mutex::lock at line 12 within split_config.arm64_v8a.apk
77
+
offset c01000) (facebook::react::Binding::schedulerDidFinishTransaction at line 84 within split_config.arm64_v8a.apk
78
+
offset c01000) (facebook::react::Scheduler::uiManagerDidFinishTransaction at line 68 within split_config.arm64_v8a.apk
79
+
offset c01000) (facebook::react::UIManager::shadowTreeDidFinishTransaction const at line 64 within split_config.arm64_v8a.apk
80
+
offset c01000) (facebook::react::ShadowTree::mount const at line 348 within split_config.arm64_v8a.apk
81
+
offset c01000) (facebook::react::ShadowTree::tryCommit const at line 2612 within split_config.arm64_v8a.apk
82
+
```
83
+
84
+
You have two ways to fix this problem:
85
+
86
+
- enable`allowRecursiveCommitsWithSynchronousMountOnAndroid` feature flag (see [react-native-reanimated#6418](https://github.com/software-mansion/react-native-reanimated/issues/6418#issuecomment-2296107100) and [react-native-keyboard-controller](https://github.com/kirillzyusko/react-native-keyboard-controller/issues/687))
87
+
- upgrade to `[email protected]+` (starting from this version this flag is enabled by default).
0 commit comments