X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=db.h;h=28bf84d9df60a6a003618931854e9b6fc36c3b5d;hb=fd6198891d6fd9642effc0843fef6f23b991af3e;hp=dfdc0d58a36d5f2a964b4442191a9b88a04303d5;hpb=94cd9258309ac4316632b0376cb92b04397e789f;p=plocate diff --git a/db.h b/db.h index dfdc0d5..28bf84d 100644 --- a/db.h +++ b/db.h @@ -5,11 +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 {