mdbx: rework functions for meta-pages, split-off non-volatile, more const.

This commit is contained in:
Леонид Юрьев (Leonid Yuriev)
2022-02-09 18:10:08 +03:00
parent ef7b4289c0
commit 2b6fd968d2
3 changed files with 217 additions and 214 deletions

View File

@@ -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,