pr-539/hanwen/reftable-v6
tagged this
18 Feb 08:43
This adds the reftable library, and hooks it up as a ref backend. Feedback wanted: * spots marked with XXX in the Git source code. * how to write a unittest script? From the command-line, it works; inside the test framework, it says: fatal: could not open '/usr/local/google/home/hanwen/vc/git/t/trash directory.t0031-reftable/.git/refs/heads' for writing: Is a directory ie. the files backend already initialized. * what is a good test strategy? Could we have a CI flavor where we flip the default to reftable, and see how it fares? v6 * implement reflog expiry. v7 * support SHA256 as version 2 of the format. Han-Wen Nienhuys (5): refs.h: clarify reflog iteration order create .git/refs in files-backend.c refs: document how ref_iterator_advance_fn should handle symrefs Add reftable library Reftable support for git-core .../technical/repository-version.txt | 7 + Makefile | 24 +- builtin/clone.c | 4 +- builtin/init-db.c | 57 +- cache.h | 4 +- refs.c | 20 +- refs.h | 8 +- refs/files-backend.c | 6 + refs/refs-internal.h | 6 + refs/reftable-backend.c | 971 +++++++++++++++ reftable/LICENSE | 31 + reftable/README.md | 19 + reftable/VERSION | 11 + reftable/basics.c | 196 +++ reftable/basics.h | 37 + reftable/block.c | 413 ++++++ reftable/block.h | 71 ++ reftable/blocksource.h | 20 + reftable/bytes.c | 0 reftable/config.h | 1 + reftable/constants.h | 25 + reftable/dump.c | 97 ++ reftable/file.c | 97 ++ reftable/iter.c | 229 ++++ reftable/iter.h | 56 + reftable/merged.c | 290 +++++ reftable/merged.h | 34 + reftable/pq.c | 114 ++ reftable/pq.h | 34 + reftable/reader.c | 718 +++++++++++ reftable/reader.h | 52 + reftable/record.c | 1107 +++++++++++++++++ reftable/record.h | 79 ++ reftable/reftable.h | 405 ++++++ reftable/slice.c | 199 +++ reftable/slice.h | 39 + reftable/stack.c | 984 +++++++++++++++ reftable/stack.h | 40 + reftable/system.h | 59 + reftable/tree.c | 66 + reftable/tree.h | 24 + reftable/writer.c | 630 ++++++++++ reftable/writer.h | 46 + reftable/zlib-compat.c | 92 ++ repository.c | 2 + repository.h | 3 + setup.c | 12 +- 47 files changed, 7407 insertions(+), 32 deletions(-) create mode 100644 refs/reftable-backend.c create mode 100644 reftable/LICENSE create mode 100644 reftable/README.md create mode 100644 reftable/VERSION create mode 100644 reftable/basics.c create mode 100644 reftable/basics.h create mode 100644 reftable/block.c create mode 100644 reftable/block.h create mode 100644 reftable/blocksource.h create mode 100644 reftable/bytes.c create mode 100644 reftable/config.h create mode 100644 reftable/constants.h create mode 100644 reftable/dump.c create mode 100644 reftable/file.c create mode 100644 reftable/iter.c create mode 100644 reftable/iter.h create mode 100644 reftable/merged.c create mode 100644 reftable/merged.h create mode 100644 reftable/pq.c create mode 100644 reftable/pq.h create mode 100644 reftable/reader.c create mode 100644 reftable/reader.h create mode 100644 reftable/record.c create mode 100644 reftable/record.h create mode 100644 reftable/reftable.h create mode 100644 reftable/slice.c create mode 100644 reftable/slice.h create mode 100644 reftable/stack.c create mode 100644 reftable/stack.h create mode 100644 reftable/system.h create mode 100644 reftable/tree.c create mode 100644 reftable/tree.h create mode 100644 reftable/writer.c create mode 100644 reftable/writer.h create mode 100644 reftable/zlib-compat.c base-commit: e68e29171cc2d6968902e0654b5687fbe1ccb903 Submitted-As: https://lore.kernel.org/git/pull.539.v6.git.1582015420.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.539.git.1579808479.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.539.v2.git.1580134944.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.539.v3.git.1580848060.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.539.v4.git.1581029756.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.539.v5.git.1581344060.gitgitgadget@gmail.com
Assets 2
-
2020-02-18T08:43:40Z -
2020-02-18T08:43:40Z - Loading