The Wire · Showcase
REACT FLIGHT FIXES MAIN-THREAD STALLS FROM DEBUG BLOAT
By RepoJournal · Filed · About Meta
React's Flight server was freezing the main thread when serializing large debug strings, and the fix just shipped.
The culprit: Flight's client parser was synchronously decoding multi-megabyte debug chunks, and React DevTools was then stringify-ing the same values to build property descriptions, both blocking the main thread [1]. This matters because anyone shipping Server Components with large console logs, resolved promises, or complex props could see janky interactions. The fix is already merged [2], so grab it in your next React upgrade. On the native side, React Native is in full kotlin migration mode: UIViewOperationQueue [5] and BridgeReactContext [6] both flipped from Java in mechanical conversions with zero functional changes. The team also added a critical safety test for RuntimeExecutor post-shutdown behavior [7], ensuring it won't crash when work is scheduled after the React instance dies. Minor cleanup landed too: removed dead RCTTurboModuleInteropBridgeProxy code [3] and fixed duplicated words in comments across the codebase [4].
Action items
- → Update React to the latest patch to pick up Flight debug string fix facebook/react [plan]
- → Review your Server Components for large debug payloads if you're on older React versions facebook/react [monitor]
- → Track React Native's Kotlin migration progress; no action needed yet facebook/react-native [monitor]
References
- [1] [Flight] Avoid main-thread stalls from large debug strings ↗ facebook/react
- [2] [Flight] Avoid main-thread stalls from large debug strings (#36570) facebook/react
- [3] Remove unused RCTTurboModuleInteropBridgeProxy code (#57002) facebook/react-native
- [4] Generated from a GitHub Pull Request. Run 'jf sync' on this diff to load the correct commit data. (#56985) facebook/react-native
- [5] Migrate `UIViewOperationQueue` from Java to Kotlin (#56942) facebook/react-native
- [6] Migrate `BridgeReactContext` from Java to Kotlin (#56940) facebook/react-native
- [7] Add unit test for RuntimeExecutor post-shutdown safety (#56995) facebook/react-native
FAQ
- What changed in Meta on May 30, 2026?
- React's Flight server was freezing the main thread when serializing large debug strings, and the fix just shipped.
- What should Meta teams do about it?
- Update React to the latest patch to pick up Flight debug string fix • Review your Server Components for large debug payloads if you're on older React versions • Track React Native's Kotlin migration progress; no action needed yet
- Which Meta repositories shipped on May 30, 2026?
- facebook/react, facebook/react-native