Merge branch 'ps/ref-storage-migration'
A new command has been added to migrate a repository that uses the files backend for its ref storage to use the reftable backend, with limitations. * ps/ref-storage-migration: builtin/refs: new command to migrate ref storage formats refs: implement logic to migrate between ref storage formats refs: implement removal of ref storages worktree: don't store main worktree twice reftable: inline `merged_table_release()` refs/files: fix NULL pointer deref when releasing ref store refs/files: extract function to iterate through root refs refs/files: refactor `add_pseudoref_and_head_entries()` refs: allow to skip creation of reflog entries refs: pass storage format to `ref_store_init()` explicitly refs: convert ref storage format to an enum setup: unset ref storage when reinitializing repository version
This commit is contained in:
@ -278,10 +278,8 @@ static int reftable_stack_reload_once(struct reftable_stack *st, char **names,
|
||||
|
||||
new_tables = NULL;
|
||||
st->readers_len = new_readers_len;
|
||||
if (st->merged) {
|
||||
merged_table_release(st->merged);
|
||||
if (st->merged)
|
||||
reftable_merged_table_free(st->merged);
|
||||
}
|
||||
if (st->readers) {
|
||||
reftable_free(st->readers);
|
||||
}
|
||||
@ -987,10 +985,8 @@ static int stack_write_compact(struct reftable_stack *st,
|
||||
|
||||
done:
|
||||
reftable_iterator_destroy(&it);
|
||||
if (mt) {
|
||||
merged_table_release(mt);
|
||||
if (mt)
|
||||
reftable_merged_table_free(mt);
|
||||
}
|
||||
reftable_ref_record_release(&ref);
|
||||
reftable_log_record_release(&log);
|
||||
st->stats.entries_written += entries;
|
||||
|
Reference in New Issue
Block a user