-
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
Move Script Cache Clearing to Dagger #5436
Move Script Cache Clearing to Dagger #5436
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems "OK". I assume that in a multi-ScriptSession
world, though, we would want to do this its own module that we force to run before we bind a session?
I believe we would first need to stop conflating "class created for script" (specifically for groovy) and "class created for formulas" - the QueryCompiler also writes to this dir, which is I believe how this ended up mattering. I still don't understand why moving this call slightly earlier makes a difference though, since DeephavenApiServer.run() is already called by EmbeddedServer.start()? |
Reframing this slightly, I think we probably want one dir per startup (since the dir is for the QueryCompiler), and multiple groovy sessions either should stop using that directory, or start using specific packages so they don't stomp on each other. Python doesn't use this dir directly at all. Note that we still have the problem of starting two servers even in "different directories" since we default to a user directory rather than invocation specific - for example |
The QueryCompiler change somehow now requires that the directory is cleared before the sub-directory is created. The simplest solution I could find defers the parent directory clearing to just prior to the session construction.
Fixes #5426