-
Notifications
You must be signed in to change notification settings - Fork 2
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
feat: ImmutableSchema storage engine #18
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ducation/apllo into storage-manager-interface
Closed
* trait *Iter -> trait *Iterator * wip * bump up rustc version * 不要な制約をとった * AbstractTypes -> ImmutableSchemaAbstractTypes * interface層の AbstractTypes は全て StorageEngine に持たせた * apllodb-storage-engine-interface passes tests * wip * wip * wip * TransactionController 消して、全部 SqliteTx に乗せた * ImmutableSchemaTransaction も別にいらん * テストも含めてコンパイル通った 👏 * \dao * \'repo * 'stmt
* NonPKColumn* , PKColumn* の型は too much だったのでなくした * Rowは必ずしもPKを含まない * ImmutableRow が NonPK, PK 分けなくなった
…のとした (#28) * Version-Revision Resolver の型 * compiles * compiles * compiles * chainはIteratorの関数と被るので名称変更 * VRREntries * probe_vrr_entries の中身を実装 * 不要コード削除 * VersionRepositoryImpl::insert() を VRR 使って書き直した * VTableRepositoryImpl から NaviDao への依存をなくした * VRR を sqlite_tx 配下に * wip: Navi を VRR 配下に * VRREntriesInVersion * from_sqlite_row -> from_sqlite_row_with_apk * wip: #26 をまずやる * wip * type 定義した * wip: 余計なコンパイルエラーは減らしたが、無用なJOINをしている箇所をやっつける必要がある * コンパイルエラーは一旦なくした * to_sql_string の適用範囲を拡げた * 警告除去 * wip: やりたい処理を書いた。コンパイルは通らない * コンパイルも通る * 不要削除 * wip: compiles * NaviCollection不要になった * bugfix: push * get_core -> get_sql_value * get_sql_value returns owned * from_table_and_immutable_row 書いた * bugfix: VRREntriesは、空テーブルをscanするときに0要素になり得る * Err握りつぶしていたのをなくした * bugfix: naviからPK取り忘れてた * PK only のrowを作る箇所、未実装だったので作った * add order should not matter * bugfix: テストするものが間違っていた * fmt * (auto commit) cargo readme > README.md * NaviDao のvisibilityを絞った * (auto commit) cargo readme > README.md * 嘘コメント消した * visibility絞り * VRRのコード、自明なコメントは消したのと、変なところを直した * PKがどうしても含まれちゃうことを明示した Co-authored-by: workflow user <workflow@example.com>
* i32::MAX とか使うためにMSRVを 1.43 にした * (auto commit) cargo readme > README.md * clippy * deadlinkのやつは一旦off * 手元のclippyでは出ないけどCIのclippyで出る警告を修正 * 更に出たclippy * clippyの誤った警告を無視 * app層 Co-authored-by: workflow user <workflow@example.com>
* fixes #30 * SqliteMaster を VTable だけの知識に収められた
* bugfix: SqlValue -> Expression::Constant の変換、NULLのときにバグってたのを修正。テストも追加 * (auto commit) cargo readme > README.md * rerun CI * clippy Co-authored-by: workflow user <workflow@example.com>
* bugfix: SELECTにCDTを印字していた * bugfix: void_projection の条件が逆だった * bugfix: needs to include _navi_rowid in projection * test_insert() works * bugfix: void_projection を NULL として取る処理を忘れてた * bugfix: write back removed value into row if Err * wip * projection 系のデータ構造を作った * wip: Projection* を使い始めた。updateは未実装 * wip * pretty-print * easier to see SQL log * updateのうち、insertしようとしているコードはうまく動いている。DELETEしてないからPK重複でエラー * 流石に紛らわしいので NaviTableName 型をつくった * test_update 通った 👏 * fmt * 未使用関数削除
laysakura
changed the title
ImmutableSchemaストレージエンジン
feat: ImmutableSchema storage engine
May 16, 2021
laysakura
added a commit
that referenced
this pull request
May 16, 2021
Co-authored-by: workflow user <workflow@example.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
機能が限定的ではあるが、QueryProcessorから叩ける程度のストレージエンジンを作った。
ImmutableSchema のコンセプトに則り、VersionやらRevisionやらを積み重ねていくエンジン。
TODO, FIXMEコメントも残っているし、ストレージエンジン自体のドキュメントも整備したいが、QueryProcessorの実装に取り掛かるためにこの段階でmasterにマージする。