1// Copyright (c) 2011 The LevelDB Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file. See the AUTHORS file for names of contributors.
4//
5// Log format information shared by reader and writer.
6// See ../doc/log_format.md for more detail.
7
8#ifndef STORAGE_LEVELDB_DB_LOG_FORMAT_H_
9#define STORAGE_LEVELDB_DB_LOG_FORMAT_H_
10
11namespace leveldb {
12namespace log {
13
14enum RecordType {
15 // Zero is reserved for preallocated files
16 kZeroType = 0,
17
18 kFullType = 1,
19
20 // For fragments
21 kFirstType = 2,
22 kMiddleType = 3,
23 kLastType = 4
24};
25static const int kMaxRecordType = kLastType;
26
27static const int kBlockSize = 32768;
28
29// Header is checksum (4 bytes), length (2 bytes), type (1 byte).
30static const int kHeaderSize = 4 + 2 + 1;
31
32} // namespace log
33} // namespace leveldb
34
35#endif // STORAGE_LEVELDB_DB_LOG_FORMAT_H_
36