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 11 namespace leveldb {
12 namespace log {
13 14 enum 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 };
25 static const int kMaxRecordType = kLastType;
26 27 static const int kBlockSize = 32768;
28 29 // Header is checksum (4 bytes), length (2 bytes), type (1 byte).
30 static const int kHeaderSize = 4 + 2 + 1;
31 32 } // namespace log
33 } // namespace leveldb
34 35 #endif // STORAGE_LEVELDB_DB_LOG_FORMAT_H_
36