-
Notifications
You must be signed in to change notification settings - Fork 31
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
Command History gets really slow when >1000 items #325
Comments
- We were mutating objects within the state, violating the immutability principle. - Clone any object that we were mutating. - Cleaned up some of the code. - All tests pass - Tested by running the steps in the description of deephaven#325, also tested importing a CSV and giving it the same name as a prior object. Old objects were updated correctly. - Fixes deephaven#325
When deephaven-core has persistence, we could implement command history server side rather than storing in the browser locally (with PouchDB). However, that persistence is not currently roadmapped so is not coming any time soon. In the meantime, we should look at what is causing the performance to be so slow with just a few thousand items. I find it surprising that this can't be handled quickly within the browsers local storage. |
Investigate why it is slow, then decide whether we need to just truncate the CommandHistory at some time. |
Added logic to "prune" db if it gets too large [deephaven#325]
I've tested this with 72,000 total records in the PouchDB (70K marked as deleted + 2-2.5K active). When 2,000 non-deleted records are present, I bulk insert 500 records. This gets the count up to 2,500 documents. If I push 1 more, the pruning behavior kicks in and marks the oldest 501 as deleted resulting in 2,000 active documents. Fixes #325
Description
When there are lots of items in the command history (more than 1000) it gets really slow when scrolling
Steps to reproduce
Expected results
2. Able to see command history quickly
Actual results
2. Shows a blank screen when scrolling, takes a few seconds for the information to appear
The text was updated successfully, but these errors were encountered: