ldb_tdb: Warn when reindexing is done
authorMatthieu Patou <mat@matws.net>
Wed, 2 Jan 2013 04:57:25 +0000 (20:57 -0800)
committerAndrew Bartlett <abartlet@samba.org>
Mon, 20 May 2013 13:47:32 +0000 (15:47 +0200)
Signed-off-by: Matthieu Patou <mat@matws.net>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Mon May 20 15:47:33 CEST 2013 on sn-devel-104

lib/ldb/ldb_tdb/ldb_tdb.c
lib/ldb/ldb_tdb/ldb_tdb.h

index 4fb151622aa12f19a78884bbc52678cb890c2d45..30c58f5ee362b94669a195022f48d7f4993d94b3 100644 (file)
@@ -229,7 +229,13 @@ static int ltdb_modified(struct ldb_module *module, struct ldb_dn *dn)
 
        if (ldb_dn_is_special(dn) &&
            (ldb_dn_check_special(dn, LTDB_INDEXLIST) ||
-            ldb_dn_check_special(dn, LTDB_ATTRIBUTES)) ) {
+            ldb_dn_check_special(dn, LTDB_ATTRIBUTES)) )
+       {
+               if (ltdb->warn_reindex) {
+                       ldb_debug(ldb_module_get_ctx(module),
+                               LDB_DEBUG_ERROR, "Reindexing %s due to modification on %s",
+                               tdb_name(ltdb->tdb), ldb_dn_get_linearized(dn));
+               }
                ret = ltdb_reindex(module);
        }
 
@@ -1565,6 +1571,10 @@ static int ltdb_connect(struct ldb_context *ldb, const char *url,
                ltdb->warn_unindexed = true;
        }
 
+       if (getenv("LDB_WARN_REINDEX")) {
+               ltdb->warn_reindex = true;
+       }
+
        ltdb->sequence_number = 0;
 
        module = ldb_module_new(ldb, ldb, "ldb_tdb backend", &ltdb_ops);
index b9aa36caaa78afec498caae4ffa7422df8903b8c..35218000eb4bb6a5334b9a6701b22ec92a960d52 100644 (file)
@@ -32,6 +32,7 @@ struct ltdb_private {
        int read_lock_count;
 
        bool warn_unindexed;
+       bool warn_reindex;
 };
 
 struct ltdb_context {