summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTim Beale <timbeale@catalyst.net.nz>2019-07-30 16:40:55 +1200
committerKarolin Seeger <kseeger@samba.org>2019-08-26 07:06:18 +0000
commit1c2f1bd04abbedb3cfb31bb4a0ee4292c21dacc4 (patch)
tree54ee614a905f5b03dbefd97ffbca0fbd58e550e1 /lib
parent6de3d8f7ce0f97810515b81f4da1a7cc1eb4a241 (diff)
downloadsamba-1c2f1bd04abbedb3cfb31bb4a0ee4292c21dacc4.tar.gz
ldb: Log pack format in user-friendly way
The "format 0x26011968" log confused me (and I'm a developer). We can subtract the base offset from the pack format to get a more user-friendly number, e.g. v0 (not actually used), v1, v2, etc. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14059 Signed-off-by: Tim Beale <timbeale@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Garming Sam <garming@catalyst.net.nz> (cherry picked from commit 5fee9388422e259c2a56e4dccbf44d22ba426ca3)
Diffstat (limited to 'lib')
-rw-r--r--lib/ldb/ldb_key_value/ldb_kv_index.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/lib/ldb/ldb_key_value/ldb_kv_index.c b/lib/ldb/ldb_key_value/ldb_kv_index.c
index eb84a790e00..27454d3f734 100644
--- a/lib/ldb/ldb_key_value/ldb_kv_index.c
+++ b/lib/ldb/ldb_key_value/ldb_kv_index.c
@@ -3526,6 +3526,18 @@ static int re_index(struct ldb_kv_private *ldb_kv,
return 0;
}
+/*
+ * Convert the 4-byte pack format version to a number that's slightly
+ * more intelligible to a user e.g. version 0, 1, 2, etc.
+ */
+static uint32_t displayable_pack_version(uint32_t version) {
+ if (version < LDB_PACKING_FORMAT_NODN) {
+ return version; /* unknown - can't convert */
+ }
+
+ return (version - LDB_PACKING_FORMAT_NODN);
+}
+
static int re_pack(struct ldb_kv_private *ldb_kv,
_UNUSED_ struct ldb_val key,
struct ldb_val val,
@@ -3572,8 +3584,9 @@ static int re_pack(struct ldb_kv_private *ldb_kv,
*/
if ((!ctx->normal_record_seen) && (!ldb_dn_is_special(msg->dn))) {
ldb_debug(ldb, LDB_DEBUG_ALWAYS_LOG,
- "Repacking database with format %#010x",
- ldb_kv->pack_format_version);
+ "Repacking database from v%u to v%u format",
+ displayable_pack_version(ctx->old_version),
+ displayable_pack_version(ldb_kv->pack_format_version));
ctx->normal_record_seen = true;
}