Merge branch 'ps/pack-refs-auto' into jt/reftable-geometric-compaction
* ps/pack-refs-auto: builtin/gc: pack refs when using `git maintenance run --auto` builtin/gc: forward git-gc(1)'s `--auto` flag when packing refs t6500: extract objects with "17" prefix builtin/gc: move `struct maintenance_run_opts` builtin/pack-refs: introduce new "--auto" flag builtin/pack-refs: release allocated memory refs/reftable: expose auto compaction via new flag refs: remove `PACK_REFS_ALL` flag refs: move `struct pack_refs_opts` to where it's used t/helper: drop pack-refs wrapper refs/reftable: print errors on compaction failure reftable/stack: gracefully handle failed auto-compaction due to locks reftable/stack: use error codes when locking fails during compaction reftable/error: discern locked/outdated errors reftable/stack: fix error handling in `reftable_stack_init_addition()`
This commit is contained in:
@ -1203,9 +1203,16 @@ static int reftable_be_pack_refs(struct ref_store *ref_store,
|
||||
if (!stack)
|
||||
stack = refs->main_stack;
|
||||
|
||||
ret = reftable_stack_compact_all(stack, NULL);
|
||||
if (ret)
|
||||
if (opts->flags & PACK_REFS_AUTO)
|
||||
ret = reftable_stack_auto_compact(stack);
|
||||
else
|
||||
ret = reftable_stack_compact_all(stack, NULL);
|
||||
if (ret < 0) {
|
||||
ret = error(_("unable to compact stack: %s"),
|
||||
reftable_error_str(ret));
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = reftable_stack_clean(stack);
|
||||
if (ret)
|
||||
goto out;
|
||||
|
Reference in New Issue
Block a user