/ src / leveldb / db / log_format.h
log_format.h
 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_