]> git.sesse.net Git - plocate/blobdiff - db.h
Release plocate 1.1.22.
[plocate] / db.h
diff --git a/db.h b/db.h
index ca8b3ea74ae513a16a6bb9ed42a4eccdd9ea40a0..28bf84d9df60a6a003618931854e9b6fc36c3b5d 100644 (file)
--- a/db.h
+++ b/db.h
@@ -5,12 +5,28 @@
 
 struct Header {
        char magic[8];  // "\0plocate";
-       uint32_t version;  // 0.
+       uint32_t version;  // 2 is the current version.
        uint32_t hashtable_size;
        uint32_t extra_ht_slots;
        uint32_t num_docids;
        uint64_t hash_table_offset_bytes;
        uint64_t filename_index_offset_bytes;
+
+       // Version 1 and up only.
+       uint32_t max_version;  // Nominally 1 or 2, but can be increased if more features are added in a backward-compatible way.
+       uint32_t zstd_dictionary_length_bytes;
+       uint64_t zstd_dictionary_offset_bytes;
+
+       // Only if max_version >= 2, and only relevant for updatedb.
+       uint64_t directory_data_length_bytes;
+       uint64_t directory_data_offset_bytes;
+       uint64_t next_zstd_dictionary_length_bytes;
+       uint64_t next_zstd_dictionary_offset_bytes;
+       uint64_t conf_block_length_bytes;
+       uint64_t conf_block_offset_bytes;
+
+       // Only if max_version >= 2.
+       bool check_visibility;
 };
 
 struct Trigram {