reftable/stack: do not die when fsyncing lock file files
We use `fsync_component_or_die()` when committing an addition to the "tables.list" lock file, which unsurprisingly dies in case the fsync fails. Given that this is part of the reftable library, we should never die and instead let callers handle the error. Adapt accordingly and use `fsync_component()` instead. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
558f6fbeb1
commit
7ee307da1b
@ -674,8 +674,11 @@ int reftable_addition_commit(struct reftable_addition *add)
|
||||
goto done;
|
||||
}
|
||||
|
||||
fsync_component_or_die(FSYNC_COMPONENT_REFERENCE, lock_file_fd,
|
||||
get_tempfile_path(add->lock_file));
|
||||
err = fsync_component(FSYNC_COMPONENT_REFERENCE, lock_file_fd);
|
||||
if (err < 0) {
|
||||
err = REFTABLE_IO_ERROR;
|
||||
goto done;
|
||||
}
|
||||
|
||||
err = rename_tempfile(&add->lock_file, add->stack->list_file);
|
||||
if (err < 0) {
|
||||
|
Reference in New Issue
Block a user