RangeError: Maximum call stack size exceeded (native stack depth)
fluiddot opened this issue ยท 4 comments
fluiddot commented
This issue is a follow-up to this comment.
This crash is produced by different stack traces:
JETPACK-ANDROID-HTT
How to reproduce it
๐ Under investigation...
Symbolicated stack trace
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/browser/index.js:268:defineGetter$argument_2
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/browser/index.js:274:defineGetter$argument_2
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:654:Node.prototype.cloneNode
gutenberg/packages/rich-text/src/create.js:366:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:392:Array.from.forEach$argument_0
gutenberg/packages/rich-text/src/create.js:368:collapseWhiteSpace
gutenberg/packages/rich-text/src/create.js:133:RichTextData.fromHTMLElement
gutenberg/packages/blocks/src/api/matchers.js:53:<anonymous>
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:280:parseWithAttributeSchema
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:155:getBlockAttribute
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:304:Object.entries.map$argument_0
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:301:getBlockAttributes
gutenberg/packages/blocks/src/api/parser/index.js:234:parseRawBlock
gutenberg/packages/blocks/src/api/parser/index.js:312:grammarParse.reduce$argument_0
gutenberg/packages/blocks/src/api/parser/index.js:311:parse
gutenberg/packages/edit-post/src/editor.native.js:168:Editor#render
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:4729:finishClassComponent
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:4700:updateClassComponent
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7866:beginWork$1
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7304:performUnitOfWork
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7297:workLoopSync
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7279:renderRootSync
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:6975:performSyncWorkOnRoot
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:2145:flushSyncCallbacks
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:6650:scheduleUpdateOnFiber
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:8423:updateContainer
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:8584:exports.render
gutenberg/node_modules/react-native/Libraries/ReactNative/RendererImplementation.js:35:renderElement
gutenberg/node_modules/react-native/Libraries/ReactNative/renderApplication.js:96:renderApplication
gutenberg/node_modules/react-native/Libraries/ReactNative/AppRegistry.js:120:runnables.appKey.run
gutenberg/node_modules/react-native/Libraries/ReactNative/AppRegistry.js:214:runApplication
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:427:__callFunction
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:113:__guard$argument_0
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:368:__guard
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:112:callFunctionReturnFlushedQueue
JETPACK-ANDROID-HTM
How to reproduce it
๐ Under investigation...
Symbolicated stack trace
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:136:Array.from.forEach$argument_0
gutenberg/packages/blocks/src/api/raw-handling/utils.js:135:deepFilterNodeList
gutenberg/packages/blocks/src/api/raw-handling/utils.js:164:deepFilterHTML
gutenberg/packages/blocks/src/api/raw-handling/paste-handler.js:119:pasteHandler
gutenberg/packages/block-editor/src/components/rich-text/index.native.js:436:onPaste
gutenberg/packages/block-editor/src/components/rich-text/native/index.native.js:537:RichText#onPaste
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:22:invokeGuardedCallbackImpl
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:40:invokeGuardedCallback
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:53:invokeGuardedCallbackAndCatchFirstError
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:73:executeDispatch
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:1125:executeDispatchesAndReleaseTopLevel
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:361:forEachAccumulated
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:1160:batchedUpdates$argument_0
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:8457:batchedUpdatesImpl
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:1106:batchedUpdates
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:1137:_receiveRootNodeIDEvent
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:1178:ReactNativePrivateInterface.RCTEventEmitter.register$argument_0.receiveEvent
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:427:__callFunction
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:113:__guard$argument_0
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:368:__guard
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:112:callFunctionReturnFlushedQueue
JETPACK-ANDROID-HSV
How to reproduce it
๐ Under investigation...
Symbolicated stack trace
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/browser/index.js:268:defineGetter$argument_2
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:1367:filterByTagName
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:48:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:52:reducer
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:44:visit
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:57:mapDOMNodes
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:37:<anonymous>
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:207:NodeList.prototype._update
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:185:NodeList
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/level1/core.js:1375:inheritFrom$argument_2.getElementsByTagName
gutenberg/node_modules/jsdom-jscore-rn/lib/builtins/nwmatcher/src/nwmatcher-noqsa.js:881:select
gutenberg/node_modules/jsdom-jscore-rn/lib/builtins/nwmatcher/src/nwmatcher-noqsa.js:798:first
gutenberg/node_modules/jsdom-jscore-rn/lib/jsdom/selectors/index.js:29:dom.Element.prototype.querySelector
gutenberg/packages/blocks/src/api/matchers.js:51:<anonymous>
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:280:parseWithAttributeSchema
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:155:getBlockAttribute
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:304:Object.entries.map$argument_0
gutenberg/packages/blocks/src/api/parser/get-block-attributes.js:301:getBlockAttributes
gutenberg/packages/blocks/src/api/parser/index.js:234:parseRawBlock
gutenberg/packages/blocks/src/api/parser/index.js:227:normalizedBlock.innerBlocks.map$argument_0
gutenberg/packages/blocks/src/api/parser/index.js:227:parseRawBlock
gutenberg/packages/blocks/src/api/parser/index.js:312:grammarParse.reduce$argument_0
gutenberg/packages/blocks/src/api/parser/index.js:311:parse
gutenberg/packages/edit-post/src/editor.native.js:168:Editor#render
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:4729:finishClassComponent
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:4700:updateClassComponent
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7866:beginWork$1
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7304:performUnitOfWork
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7297:workLoopSync
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:7279:renderRootSync
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:6975:performSyncWorkOnRoot
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:2145:flushSyncCallbacks
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:6650:scheduleUpdateOnFiber
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:8423:updateContainer
gutenberg/node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js:8584:exports.render
gutenberg/node_modules/react-native/Libraries/ReactNative/RendererImplementation.js:35:renderElement
gutenberg/node_modules/react-native/Libraries/ReactNative/renderApplication.js:96:renderApplication
gutenberg/node_modules/react-native/Libraries/ReactNative/AppRegistry.js:120:runnables.appKey.run
gutenberg/node_modules/react-native/Libraries/ReactNative/AppRegistry.js:214:runApplication
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:427:__callFunction
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:113:__guard$argument_0
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:368:__guard
gutenberg/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:112:callFunctionReturnFlushedQueue
fluiddot commented
So far there are only two user sessions that can be explored, however, only one of them produced a crash when testing. The post content of the user session explored was massive, with several hundreds of blocks nested each other. In fact, the same content crashed when using the web browser.
Until we get more events and new user sessions, I'd put the investigations on hold.
sentry-io commented
Sentry issue: JETPACK-ANDROID-HTT
sentry-io commented
Sentry issue: JETPACK-ANDROID-HTM
sentry-io commented
Sentry issue: JETPACK-ANDROID-HSV