-
Notifications
You must be signed in to change notification settings - Fork 80
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
fix: Clean up how objects are managed when they are fetched #4909
Commits on Dec 1, 2023
-
fix: Handle exported objects fetches more correctly
- Previously, exported objects were not handling their fetched objects correctly - Tables were not using copies, only widgets were - The parent ticket was not being released in many cases (TreeTable, PartitonedTable, PandasTable) - Refactored so exported objects always follow the same path - Just call connection.getObject, which always creates a new ticket for the object - Still need to close the widget so it closes the exported objects - Test by adding debug logging for SessionState: ```py import jpy logger = jpy.get_type('org.slf4j.LoggerFactory').getLogger('io.deephaven.server.session.SessionState') jpy.cast(logger, jpy.get_type('ch.qos.logback.classic.Logger')).setLevel(jpy.get_type('ch.qos.logback.classic.Level').DEBUG) ```
Configuration menu - View commit details
-
Copy full SHA for f48b18f - Browse repository at this point
Copy the full SHA f48b18fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 58aeab4 - Browse repository at this point
Copy the full SHA 58aeab4View commit details -
- Now it doesn't need to do the extra round trip
Configuration menu - View commit details
-
Copy full SHA for 6f77c64 - Browse repository at this point
Copy the full SHA 6f77c64View commit details -
WIP need to finish and clean it up
- Have the exported object "own" the ticket until it is taken from it
Configuration menu - View commit details
-
Copy full SHA for 75ce4fb - Browse repository at this point
Copy the full SHA 75ce4fbView commit details
Commits on Dec 2, 2023
-
fix: Clean up how objects are managed when they are fetched
- Clean up memory leak in JsPartitionedTable, JsFigure, PandasTable with widgets not being closed after being used - Add a `takeTicket` method to JsWidgetExportedObject to make it clear when ownership of the ticket has been passed on - Close exported objects that are still owned when closing a widget - Tested using the steps and scripts provided in the ticket, as well as testing with creating some tables and opening/closing them in the UI - Fixes deephaven#4903
Configuration menu - View commit details
-
Copy full SHA for f8d8737 - Browse repository at this point
Copy the full SHA f8d8737View commit details -
Configuration menu - View commit details
-
Copy full SHA for 732938a - Browse repository at this point
Copy the full SHA 732938aView commit details
Commits on Dec 4, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 91e9adf - Browse repository at this point
Copy the full SHA 91e9adfView commit details -
Update web/client-api/src/main/java/io/deephaven/web/client/api/Worke…
…rConnection.java Co-authored-by: Colin Alworth <colin@vertispan.com>
Configuration menu - View commit details
-
Copy full SHA for 108936a - Browse repository at this point
Copy the full SHA 108936aView commit details -
Apply suggestions from code review
Co-authored-by: Colin Alworth <colin@vertispan.com>
Configuration menu - View commit details
-
Copy full SHA for cbc0ae3 - Browse repository at this point
Copy the full SHA cbc0ae3View commit details -
Configuration menu - View commit details
-
Copy full SHA for ee5ef03 - Browse repository at this point
Copy the full SHA ee5ef03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8532cd1 - Browse repository at this point
Copy the full SHA 8532cd1View commit details
Commits on Dec 7, 2023
-
Configuration menu - View commit details
-
Copy full SHA for ba041a5 - Browse repository at this point
Copy the full SHA ba041a5View commit details
Commits on Dec 8, 2023
-
- Can release the ticket of a widget automatically if the server closes the object - no way to reconnect (currently) - Remove unnecessary closes
Configuration menu - View commit details
-
Copy full SHA for 59085d9 - Browse repository at this point
Copy the full SHA 59085d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 81ec321 - Browse repository at this point
Copy the full SHA 81ec321View commit details -
Configuration menu - View commit details
-
Copy full SHA for c9e36c9 - Browse repository at this point
Copy the full SHA c9e36c9View commit details -
Update web/client-api/src/main/java/io/deephaven/web/client/api/Worke…
…rConnection.java Co-authored-by: Colin Alworth <colin@vertispan.com>
Configuration menu - View commit details
-
Copy full SHA for 73172d3 - Browse repository at this point
Copy the full SHA 73172d3View commit details -
Update web/client-api/src/main/java/io/deephaven/web/client/api/widge…
…t/JsWidget.java Co-authored-by: Colin Alworth <colin@vertispan.com>
Configuration menu - View commit details
-
Copy full SHA for a1add7f - Browse repository at this point
Copy the full SHA a1add7fView commit details -
- Made many methods private instead of public - Renamed methods to `getExported*` to make it clear they are for server-side exports - Changed default method of `JsWidgetExportedObject.fetch` so this is not a breaking change
Configuration menu - View commit details
-
Copy full SHA for 4b27d13 - Browse repository at this point
Copy the full SHA 4b27d13View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7b97ff5 - Browse repository at this point
Copy the full SHA 7b97ff5View commit details -
- JsTreeTable was using the ticket from the widget directly, which doesn't work now if the widget releases it's ticket when the stream disconnects (fetch-only widgets) - Need to export the table as an exportedObject so we don't release it entirely - Will need Colin to review, this seems a little strange.
Configuration menu - View commit details
-
Copy full SHA for 901ad90 - Browse repository at this point
Copy the full SHA 901ad90View commit details