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.txt 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), type (1 byte), length (2 bytes). 30 static const int kHeaderSize = 4 + 1 + 2; 31 32 } // namespace log 33 } // namespace leveldb 34 35 #endif // STORAGE_LEVELDB_DB_LOG_FORMAT_H_ 36