MCPcopy Create free account
hub / github.com/ElementsProject/elements / AllEntriesFor

Method AllEntriesFor

src/leveldb/db/db_test.cc:364–404  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

362 }
363
364 std::string AllEntriesFor(const Slice& user_key) {
365 Iterator* iter = dbfull()->TEST_NewInternalIterator();
366 InternalKey target(user_key, kMaxSequenceNumber, kTypeValue);
367 iter->Seek(target.Encode());
368 std::string result;
369 if (!iter->status().ok()) {
370 result = iter->status().ToString();
371 } else {
372 result = "[ ";
373 bool first = true;
374 while (iter->Valid()) {
375 ParsedInternalKey ikey;
376 if (!ParseInternalKey(iter->key(), &ikey)) {
377 result += "CORRUPTED";
378 } else {
379 if (last_options_.comparator->Compare(ikey.user_key, user_key) != 0) {
380 break;
381 }
382 if (!first) {
383 result += ", ";
384 }
385 first = false;
386 switch (ikey.type) {
387 case kTypeValue:
388 result += iter->value().ToString();
389 break;
390 case kTypeDeletion:
391 result += "DEL";
392 break;
393 }
394 }
395 iter->Next();
396 }
397 if (!first) {
398 result += " ";
399 }
400 result += "]";
401 }
402 delete iter;
403 return result;
404 }
405
406 int NumTableFilesAtLevel(int level) {
407 std::string property;

Callers

nothing calls this directly

Calls 11

ParseInternalKeyFunction · 0.85
SeekMethod · 0.45
EncodeMethod · 0.45
statusMethod · 0.45
ToStringMethod · 0.45
ValidMethod · 0.45
keyMethod · 0.45
CompareMethod · 0.45
valueMethod · 0.45
NextMethod · 0.45

Tested by

no test coverage detected