20 #include <glog/logging.h>
48 o <<
"<HashCreateLog>" << v.
metadata_ <<
"</HashCreateLog>";
53 o <<
"<HashInsertLogType>"
54 <<
"<key_length_>" << v.
key_length_ <<
"</key_length_>"
56 <<
"<bin_bits_>" << static_cast<int>(v.
bin_bits_) <<
"</bin_bits_>"
60 <<
"</HashInsertLogType>";
65 o <<
"<HashDeleteLogType>"
66 <<
"<key_length_>" << v.
key_length_ <<
"</key_length_>"
68 <<
"<bin_bits_>" << static_cast<int>(v.
bin_bits_) <<
"</bin_bits_>"
70 <<
"</HashDeleteLogType>";
75 o <<
"<HashUpdateLogType>"
76 <<
"<key_length_>" << v.
key_length_ <<
"</key_length_>"
78 <<
"<bin_bits_>" << static_cast<int>(v.
bin_bits_) <<
"</bin_bits_>"
82 <<
"</HashUpdateLogType>";
87 o <<
"<HashOverwriteLog>"
88 <<
"<key_length_>" << v.
key_length_ <<
"</key_length_>"
90 <<
"<bin_bits_>" << static_cast<int>(v.
bin_bits_) <<
"</bin_bits_>"
95 <<
"</HashOverwriteLog>";
uint32_t StorageId
Unique ID for storage.
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
uint8_t bin_bits_
this is not strictly needed here, but helps a bit.
void apply_storage(Engine *engine, StorageId storage_id)
std::ostream & operator<<(std::ostream &o, const HashCombo &v)
Declares common log types for all (or at least multiple) storage types.
Declares all log types used in this storage type.
Log type of hash-storage's update operation.
Database engine object that holds all resources and provides APIs.
Write only first few bytes to stream.
Log type of hash-storage's insert operation.
Log type of hash-storage's overwrite operation.
Convenient way of writing hex integers to stream.
HashValue hash_
Hash value of the key.
Base type for CREATE STORAGE operation.
#define ASSERT_ND(x)
A warning-free wrapper macro of assert() that has no performance effect in release mode even when 'x'...
Log type of hash-storage's delete operation.
Log type of CREATE HASH STORAGE operation.