diff --git a/src/IStorage.h b/src/IStorage.h index 196ae8cef..ad956beb6 100644 --- a/src/IStorage.h +++ b/src/IStorage.h @@ -2,6 +2,8 @@ #include #include "sds.h" +#define METADATA_DB_IDENTIFIER "c299fde0-6d42-4ec4-b939-34f680ffe39f" + class IStorageFactory { public: diff --git a/src/storage/rocksdbfactory.cpp b/src/storage/rocksdbfactory.cpp index 7fd41b349..518944b38 100644 --- a/src/storage/rocksdbfactory.cpp +++ b/src/storage/rocksdbfactory.cpp @@ -137,7 +137,9 @@ std::string RocksDBStorageFactory::getTempFolder() IStorage *RocksDBStorageFactory::createMetadataDb() { - return this->create(-1, nullptr, nullptr); + IStorage *metadataDb = this->create(-1, nullptr, nullptr); + metadataDb->insert("KEYDB_METADATA_ID", strlen("KEYDB_METADATA_ID"), (void*)METADATA_DB_IDENTIFIER, strlen(METADATA_DB_IDENTIFIER), false); + return metadataDb; } IStorage *RocksDBStorageFactory::create(int db, key_load_iterator iter, void *privdata) diff --git a/src/storage/teststorageprovider.cpp b/src/storage/teststorageprovider.cpp index 3739c403d..a287397c7 100644 --- a/src/storage/teststorageprovider.cpp +++ b/src/storage/teststorageprovider.cpp @@ -8,7 +8,9 @@ IStorage *TestStorageFactory::create(int, key_load_iterator, void *) IStorage *TestStorageFactory::createMetadataDb() { - return new (MALLOC_LOCAL) TestStorageProvider(); + IStorage *metadataDb = new (MALLOC_LOCAL) TestStorageProvider(); + metadataDb->insert("KEYDB_METADATA_ID", strlen("KEYDB_METADATA_ID"), (void*)METADATA_DB_IDENTIFIER, strlen(METADATA_DB_IDENTIFIER), false); + return metadataDb; } const char *TestStorageFactory::name() const