mdbx: truncate clk-file when DB closed in sync-state.

Change-Id: I2e2438606118e3aa3fa9d60811fea99994403d32
This commit is contained in:
Leonid Yuriev
2020-05-20 13:31:04 +03:00
parent 86a4085bf9
commit a2bdbc97dc
2 changed files with 73 additions and 32 deletions

View File

@@ -477,8 +477,10 @@ MDBX_INTERNAL_FUNC int __cold mdbx_lck_destroy(MDBX_env *env,
mdbx_assert(env, rc == 0);
if (rc == 0) {
const bool synced = env->me_lck_mmap.lck->mti_unsynced_pages == 0;
mdbx_munmap(&env->me_lck_mmap);
rc = ftruncate(env->me_lfd, 0) ? errno : 0;
if (synced)
rc = ftruncate(env->me_lfd, 0) ? errno : 0;
}
mdbx_jitter4testing(false);