mirror of
https://github.com/isar/libmdbx.git
synced 2025-02-03 15:00:51 +08:00
test: temporary crutch.
This commit is contained in:
parent
b94e761d73
commit
3a166e1970
@ -252,8 +252,16 @@ typedef struct MDBX_meta {
|
|||||||
#define MDBX_DATASIGN_NONE 0u
|
#define MDBX_DATASIGN_NONE 0u
|
||||||
#define MDBX_DATASIGN_WEAK 1u
|
#define MDBX_DATASIGN_WEAK 1u
|
||||||
volatile uint64_t mm_datasync_sign;
|
volatile uint64_t mm_datasync_sign;
|
||||||
|
|
||||||
|
#define MDBX_TEMPORARY_CRUTCH FIXME
|
||||||
|
#ifndef MDBX_TEMPORARY_CRUTCH
|
||||||
#define SIGN_IS_WEAK(sign) ((sign) == MDBX_DATASIGN_WEAK)
|
#define SIGN_IS_WEAK(sign) ((sign) == MDBX_DATASIGN_WEAK)
|
||||||
#define SIGN_IS_STEADY(sign) ((sign) > MDBX_DATASIGN_WEAK)
|
#define SIGN_IS_STEADY(sign) ((sign) > MDBX_DATASIGN_WEAK)
|
||||||
|
#else
|
||||||
|
#define SIGN_IS_WEAK(sign) (false && (sign) == MDBX_DATASIGN_WEAK)
|
||||||
|
#define SIGN_IS_STEADY(sign) (true || (sign) > MDBX_DATASIGN_WEAK)
|
||||||
|
#endif /* FIXME: MDBX_TEMPORARY_CRUTCH */
|
||||||
|
|
||||||
#define META_IS_WEAK(meta) SIGN_IS_WEAK((meta)->mm_datasync_sign)
|
#define META_IS_WEAK(meta) SIGN_IS_WEAK((meta)->mm_datasync_sign)
|
||||||
#define META_IS_STEADY(meta) SIGN_IS_STEADY((meta)->mm_datasync_sign)
|
#define META_IS_STEADY(meta) SIGN_IS_STEADY((meta)->mm_datasync_sign)
|
||||||
volatile mdbx_canary mm_canary;
|
volatile mdbx_canary mm_canary;
|
||||||
|
@ -3223,11 +3223,13 @@ static int __cold mdbx_read_header(MDBX_env *env, MDBX_meta *meta) {
|
|||||||
return MDBX_VERSION_MISMATCH;
|
return MDBX_VERSION_MISMATCH;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef MDBX_TEMPORARY_CRUTCH
|
||||||
/* LY: check signature as a checksum */
|
/* LY: check signature as a checksum */
|
||||||
if (META_IS_STEADY(m) && m->mm_datasync_sign != mdbx_meta_sign(m)) {
|
if (META_IS_STEADY(m) && m->mm_datasync_sign != mdbx_meta_sign(m)) {
|
||||||
mdbx_debug("steady-meta[%u] has invalid checksum", offset);
|
mdbx_debug("steady-meta[%u] has invalid checksum", offset);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
#endif /* FIXME: MDBX_TEMPORARY_CRUTCH */
|
||||||
|
|
||||||
if (mdbx_meta_lt(meta, m)) {
|
if (mdbx_meta_lt(meta, m)) {
|
||||||
*meta = *m;
|
*meta = *m;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user