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

Handle large amounts of signal history #11

Open
maxfrigge opened this issue Feb 7, 2016 · 5 comments
Open

Handle large amounts of signal history #11

maxfrigge opened this issue Feb 7, 2016 · 5 comments

Comments

@maxfrigge
Copy link

The state tree becomes quite slow when it keeps history of large amounts of signals. By large amounts I mean over 1k signals. Would be really cool if the debugger could handle these cases too.

The way the debugger works right now is, that it reruns all signals with the previous input to reproduce state when time traveling. This means that you can't just limit the number of signals to keep history for.

I currently see these approaches:

  1. Keep a snapshot of the state every N signals and at some point purge older signals. The debugger could then use the snapshot as a base for all state mutations when rerunning signals.
  2. Use a storage engine to manage the older signals instead of keeping them all in state - this could be local storage, web sql, index db.
  3. A combination of 1 and 2 :)
@christianalfoni
Copy link
Contributor

Adding some notes from hangout:

- Split events
- Baobab problem
- Snapshot
- Do not show inputs and outputs

@christianalfoni
Copy link
Contributor

Will make some suggestions on what we can do here :-)

@maxfrigge
Copy link
Author

Just to make sure. By split events you mean send all controller events (with cleaned payload) to the debugger and then separately send it the signal definition on init?

@christianalfoni
Copy link
Contributor

Actually I did not mean cleaning them, though that is also a good point. Though I am wondering if latest changes has made a huge difference? There were a couple of bad bugs there related to performance :)

@maxfrigge
Copy link
Author

Haven't tried it yet. Will do asap and get back with results.

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

2 participants