Skip to content
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

Maximum call stack size exceeded on iOS 10 #211

Closed
jgkim opened this issue Sep 20, 2016 · 7 comments
Closed

Maximum call stack size exceeded on iOS 10 #211

jgkim opened this issue Sep 20, 2016 · 7 comments

Comments

@jgkim
Copy link

jgkim commented Sep 20, 2016

When reactotron is used with react-native-router-flux connected to redux on iOS 10, it raises the Maximum call stack size exceeded error, calling _hasBinary of socket.io a lot.

It can be reproduced with the newly created ignite project by changing NavigationRouter.js as the below.

import { Scene, Router as RNRFRouter } from 'react-native-router-flux'
import { connect } from 'react-redux'

[...]

const Router = connect()(RNRFRouter);
@skellock
Copy link
Contributor

Totally struggling with that right now too. I've temporarily turned of logging those commands until I get to the bottom of this. 💩

@jgkim
Copy link
Author

jgkim commented Sep 21, 2016

It seems like this issue is somewhat related to socketio/socket.io#1665. If an object with cyclic object values is serialized, then the Maximum call stack size exceeded error is no longer raised but you can see some warnings saying This synthetic event is reused for performance reasons..

@yinxin630
Copy link

Same issue as this. So how to solve it?

@skellock
Copy link
Contributor

It's because a circular reference is being passed. For example, you're trying to log something that's a react component (for example the props in componentWillReceiveProps) or react native router flux state.

The short term fix is to not log that (I know, not a fix).

The long term fix is for me to write (or find) something that detects circular references and uncircularfy them.

@tsemerad
Copy link
Contributor

@skellock thanks. I upgraded my reactotron-* dependencies (like you suggested in #255), but now the app freezes on launch (at about the same point where the "Maximum call stack size exceeded" warnings were popping up on 1.5.1), taking no user input and requiring me to kill it. Unfortunately, there doesn't appear to be any error or warning message this time. I'm still using the Reactotron desktop client at version 1.5.0 - I'm assuming that's right since a new build wasn't included in the 1.5.2 release?

@skellock
Copy link
Contributor

woah. can you post that as a new issue? if you can, maybe some relevant code to help track it down too. thanks!

@skellock
Copy link
Contributor

1.9 will put this stuff to rest finally.

joshuayoes pushed a commit that referenced this issue Jan 17, 2023
Co-authored-by: Renovate Bot <bot@renovateapp.com>
joshuayoes pushed a commit that referenced this issue Feb 1, 2023
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
silasjmatson pushed a commit that referenced this issue Mar 14, 2023
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants