b010116d82
Summary: Re-use metadata for reading Compression Dictionary on BlockBased table open, this saves two reads from disk. This helps to our 999 percentile in 5.6.1 where prefetch buffer is not present. Closes https://github.com/facebook/rocksdb/pull/3354 Differential Revision: D6695753 Pulled By: ajkr fbshipit-source-id: bb8acd9e9e66e65b89c548ab8940570ae360333c
32 lines
1.1 KiB
C++
32 lines
1.1 KiB
C++
// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
|
|
// This source code is licensed under both the GPLv2 (found in the
|
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
// (found in the LICENSE.Apache file in the root directory).
|
|
|
|
#pragma once
|
|
|
|
#include "rocksdb/status.h"
|
|
#include "rocksdb/iterator.h"
|
|
|
|
namespace rocksdb {
|
|
|
|
class InternalIterator;
|
|
class BlockHandle;
|
|
|
|
// Seek to the properties block.
|
|
// If it successfully seeks to the properties block, "is_found" will be
|
|
// set to true.
|
|
Status SeekToPropertiesBlock(InternalIterator* meta_iter, bool* is_found);
|
|
|
|
// Seek to the compression dictionary block.
|
|
// If it successfully seeks to the properties block, "is_found" will be
|
|
// set to true.
|
|
Status SeekToCompressionDictBlock(InternalIterator* meta_iter, bool* is_found,
|
|
BlockHandle* block_handle);
|
|
|
|
// TODO(andrewkr) should not put all meta block in table_properties.h/cc
|
|
Status SeekToRangeDelBlock(InternalIterator* meta_iter, bool* is_found,
|
|
BlockHandle* block_handle);
|
|
|
|
} // namespace rocksdb
|