mdbx: use enums & bool in the C API.

Change-Id: I952f578cceb7d02ade16f545d47245d4d9106441
This commit is contained in:
Leonid Yuriev
2020-08-04 01:06:01 +03:00
parent 3bcf808005
commit ffa10a25d6
15 changed files with 124 additions and 99 deletions

View File

@@ -212,18 +212,20 @@ void maker::setup(const config::actor_params_pod &actor, unsigned actor_id,
assert(actor.keylen_min <= UINT16_MAX);
key_essentials.minlen = (uint16_t)actor.keylen_min;
assert(actor.keylen_max <= UINT32_MAX);
key_essentials.maxlen = std::min(
(uint32_t)actor.keylen_max,
(uint32_t)mdbx_limits_keysize_max(actor.pagesize, key_essentials.flags));
key_essentials.maxlen =
std::min((uint32_t)actor.keylen_max,
(uint32_t)mdbx_limits_keysize_max(
actor.pagesize, MDBX_db_flags_t(key_essentials.flags)));
value_essentials.flags =
actor.table_flags & uint16_t(MDBX_INTEGERDUP | MDBX_REVERSEDUP);
assert(actor.datalen_min <= UINT16_MAX);
value_essentials.minlen = (uint16_t)actor.datalen_min;
assert(actor.datalen_max <= UINT32_MAX);
value_essentials.maxlen = std::min(
(uint32_t)actor.datalen_max,
(uint32_t)mdbx_limits_valsize_max(actor.pagesize, key_essentials.flags));
value_essentials.maxlen =
std::min((uint32_t)actor.datalen_max,
(uint32_t)mdbx_limits_valsize_max(
actor.pagesize, MDBX_db_flags_t(key_essentials.flags)));
if (!actor.keygen.zero_fill) {
key_essentials.flags |= essentials::prng_fill_flag;