mirror of
https://github.com/isar/libmdbx.git
synced 2025-12-19 18:12:21 +08:00
mdbx: rework functions for meta-pages, split-off non-volatile, more const.
This commit is contained in:
@@ -935,8 +935,8 @@ static void usage(char *prog) {
|
||||
exit(EXIT_INTERRUPTED);
|
||||
}
|
||||
|
||||
static __inline bool meta_ot(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
uint64_t sign_b, const bool wanna_steady) {
|
||||
static bool meta_ot(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
uint64_t sign_b, const bool wanna_steady) {
|
||||
if (txn_a == txn_b)
|
||||
return SIGN_IS_STEADY(sign_b);
|
||||
|
||||
@@ -946,8 +946,8 @@ static __inline bool meta_ot(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
return txn_a < txn_b;
|
||||
}
|
||||
|
||||
static __inline bool meta_eq(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
uint64_t sign_b) {
|
||||
static bool meta_eq(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
uint64_t sign_b) {
|
||||
if (!txn_a || txn_a != txn_b)
|
||||
return false;
|
||||
|
||||
@@ -957,7 +957,7 @@ static __inline bool meta_eq(txnid_t txn_a, uint64_t sign_a, txnid_t txn_b,
|
||||
return true;
|
||||
}
|
||||
|
||||
static __inline int meta_recent(const bool wanna_steady) {
|
||||
static int meta_recent(const bool wanna_steady) {
|
||||
if (meta_ot(envinfo.mi_meta0_txnid, envinfo.mi_meta0_sign,
|
||||
envinfo.mi_meta1_txnid, envinfo.mi_meta1_sign, wanna_steady))
|
||||
return meta_ot(envinfo.mi_meta2_txnid, envinfo.mi_meta2_sign,
|
||||
@@ -971,7 +971,7 @@ static __inline int meta_recent(const bool wanna_steady) {
|
||||
: 0;
|
||||
}
|
||||
|
||||
static __inline int meta_tail(int head) {
|
||||
static int meta_tail(int head) {
|
||||
switch (head) {
|
||||
case 0:
|
||||
return meta_ot(envinfo.mi_meta1_txnid, envinfo.mi_meta1_sign,
|
||||
|
||||
Reference in New Issue
Block a user