15 static std::string PrintContents(WriteBatch* b) {
17 MemTable*
mem =
new MemTable(
cmp);
22 Iterator* iter = mem->NewIterator();
23 for (iter->SeekToFirst(); iter->Valid(); iter->Next()) {
24 ParsedInternalKey ikey;
29 state.append(ikey.user_key.ToString());
31 state.append(iter->value().ToString());
36 state.append(
"Delete(");
37 state.append(ikey.user_key.ToString());
47 state.append(
"ParseError()");
49 state.append(
"CountMismatch()");
74 PrintContents(&batch));
87 PrintContents(&batch));
118 int main(
int argc,
char** argv) {
static void SetContents(WriteBatch *batch, const Slice &contents)
const char * data() const
static void SetSequence(WriteBatch *batch, SequenceNumber seq)
bool ParseInternalKey(const Slice &internal_key, ParsedInternalKey *result)
void Delete(const Slice &key)
static Slice Contents(const WriteBatch *batch)
TEST(CorruptionTest, Recovery)
int main(int argc, char **argv)
static void Append(WriteBatch *dst, const WriteBatch *src)
static Status InsertInto(const WriteBatch *batch, MemTable *memtable)
static SequenceNumber Sequence(const WriteBatch *batch)
const Comparator * BytewiseComparator()
static int Count(const WriteBatch *batch)
void Put(const Slice &key, const Slice &value)
std::string NumberToString(uint64_t num)