Cleanup storage integration and write pending batches on shutdown #76
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The integration used by AnyVar to store, retrieve and query VRS objects should be provided an opportunity to complete pending work, shutdown and clean up when an AnyVar worker is shutdown. The FastAPI provides lifespan events that can be used for this purpose.
The changes simply make the
close()
method part of the_Storage
API definition and then call the method when the shutdown occurs. Implementations of theclose()
already existed for both the PostgreSQL and Snowflake storage implementations.The existing startup event handler was moved to a new lifespan method and the call to
close()
added to the lifespan method. Event handlers have been deprecated in favor of lifespan.See also #66