ldb: Explain why an entry can vanish from the index
authorAndrew Bartlett <abartlet@samba.org>
Mon, 28 May 2018 02:12:52 +0000 (14:12 +1200)
committerKarolin Seeger <kseeger@samba.org>
Tue, 26 Jun 2018 07:19:16 +0000 (09:19 +0200)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
(cherry picked from commit 9e143ee9b9f7be53c193cee3153f64c4dedc07e9)

lib/ldb/ldb_tdb/ldb_index.c

index 6da64cfa4ce26c7e470181a8def0de22e10f0ca0..3a1aa23aa7eaa7d7a9b3fd305e4920ab0bd281e0 100644 (file)
@@ -1626,7 +1626,12 @@ static int ltdb_index_filter(struct ltdb_private *ltdb,
                                      LDB_UNPACK_DATA_FLAG_NO_DATA_ALLOC|
                                      LDB_UNPACK_DATA_FLAG_NO_VALUES_ALLOC);
                if (ret == LDB_ERR_NO_SUCH_OBJECT) {
-                       /* the record has disappeared? yes, this can happen */
+                       /*
+                        * the record has disappeared? yes, this can
+                        * happen if the entry is deleted by something
+                        * operating in the callback (not another
+                        * process, as we have a read lock)
+                        */
                        talloc_free(msg);
                        continue;
                }