google / google/leveldb

Question about the format comments in Add and Put methods of Memtable.

Open
#1,201 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
39.4k
Forks
8.2k
PR merge metrics
No merged PRs in 30d

Description

Hello, Recently I am learning leveldb by reading its source code. When I saw this function fallow:

~~~c++
void MemTable::Add(SequenceNumber s, ValueType type, const Slice& key,
const Slice& value) {
// Format of an entry is concatenation of:
// key_size : varint32 of internal_key.size()
// key bytes : char[internal_key.size()]
// tag : uint64((sequence << 8) | type)
// value_size : varint32 of value.size()
// value bytes : char[value.size()]

~~~

I have a question about this comments of key bytes format. Shouldn't it' s size be the `user_key` 's size which equal to `internal_key.size() - 8`? Why this comment say its size is the size of the` internal_key`?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.