Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Relational DB support for ParamStore (#326)
* WIP: Refactoring persistence out of ParamStore * WIP: Refactoring persistence out of ParamStore * Refactoring commit() and checkout() * WIP: Cont'd refactoring TinyDB persistence out of InProcessParamStore impl. * list_values() refactored to use search_commits() (by key) * Refactoring continued * Down to 4 failing tests. Hoorah! * Fixing migration tests * Removed `checkout(move_by)` functionality * Tidied up in_process_param_store.py. Migration code move to migrations.py * Removed self.__is_dirty * Persistence ABC * Organized persistence classes under params/persistence dir * Bringing in SqlAlchemy model for paramstore persistence * Moving persistence files into sub-dirs (tindyb, sqlalchemy) * Simplifying persistence class names * Cont'd refactoring of params package structure * SqlAlchemy Commit class renamed CommitTable * Metadata is now a dataclass * Implemented SqlAlchemyPersistence.get_commit() * SqlAlchemyPersistence.commit() * Fixing broken tests * SqlAlchemyPersistence.search_commits() * Integrated SqlAlchemyPersistence into InProcessParamStore * Workaround for saving commit timestamps as pd.Timestamp * woot! All param_store tests are green for both TinyDB and SqlAlchemy * Commit and Metadata timestamps changed from int to pd.Timestamp * SqlAlchemyPersistence load_temp() and save_temp() * New prop for Commit: local_timestamp * Removed ParamStore ABC * InProcessParamStore class renamed to ParamStore * Moved ParamStore to entropylab.pipeline.params * WIP: migrations of PS JSON 0.2->0.3 * Revert "WIP: migrations of PS JSON 0.2->0.3" This reverts commit 217fd9b. * Migration from ParamStore JSON 0.2 to 0.3 * Alembic migration to migrate ParamStore JSON from v0.2 to v0.3 * Linting and formatting * Moved param_store tests to the right folder * ParamStore now tries to read path/url from settings if not passed as args * ParamStore now creates DB schema if url points to empty DB * Setting up Alembic migrations for ParamStore SqlAlchemy Persistence * Initial Alembic migration for ParamStore * Updated README file for Alembic migrations * ParamStore SqlAlchemyPersistence now stamps new DBs with head rev * Linting and fixing imports
- Loading branch information