mirror of https://github.com/facebook/rocksdb.git
remove dependency on options.h for port_posix.h andport_win.h (#11214)
Summary: The files in `port/`, such as `port_posix.h`, are layering over the system libraries, so shouldn't include the DB-specific files like `options.h`. This PR remove this dependency. # How The reason that `port_posix.h` (or `port_win.h`) include `options.h` is to use `CpuPriority`, as there is a method `SetCpuPriority()` in `port_posix.h` that uses `CpuPriority.` - I think `SetCpuPriority()` make sense to exist in `port_posix.h` as it provides has platform-dependent implementation - `CpuPriority` enum is defined in `env.h`, but used in `rocksdb/include` and `port/`. Hence, let us define `CpuPriority` enum in a common file, say `port_defs.h`, such that both directories `rocksdb/include` and `port/` can include. When we remove this dependency, some other files have compile errors because they can't find definitions, so add header files to resolve # Test make all check -j Pull Request resolved: https://github.com/facebook/rocksdb/pull/11214 Reviewed By: pdillinger Differential Revision: D43196910 Pulled By: guowentian fbshipit-source-id: 70deccb72844cfb08fcc994f76c6ef6df5d55ab9
This commit is contained in:
parent
a72f591825
commit
42d6652ba2
|
@ -9,7 +9,6 @@
|
|||
|
||||
#include "cache/clock_cache.h"
|
||||
|
||||
#include <cassert>
|
||||
#include <functional>
|
||||
#include <numeric>
|
||||
|
||||
|
@ -18,6 +17,7 @@
|
|||
#include "monitoring/perf_context_imp.h"
|
||||
#include "monitoring/statistics.h"
|
||||
#include "port/lang.h"
|
||||
#include "rocksdb/env.h"
|
||||
#include "util/hash.h"
|
||||
#include "util/math.h"
|
||||
#include "util/random.h"
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
|
||||
#include "rocksdb/customizable.h"
|
||||
#include "rocksdb/functor_wrapper.h"
|
||||
#include "rocksdb/port_defs.h"
|
||||
#include "rocksdb/status.h"
|
||||
#include "rocksdb/thread_status.h"
|
||||
|
||||
|
@ -69,13 +70,6 @@ struct ConfigOptions;
|
|||
|
||||
const size_t kDefaultPageSize = 4 * 1024;
|
||||
|
||||
enum class CpuPriority {
|
||||
kIdle = 0,
|
||||
kLow = 1,
|
||||
kNormal = 2,
|
||||
kHigh = 3,
|
||||
};
|
||||
|
||||
// Options while opening a file to read/write
|
||||
struct EnvOptions {
|
||||
// Construct with default Options
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
// 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).
|
||||
//
|
||||
// This file includes the common definitions used in the port/,
|
||||
// the public API (this directory), and other directories
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "rocksdb/rocksdb_namespace.h"
|
||||
|
||||
namespace ROCKSDB_NAMESPACE {
|
||||
|
||||
enum class CpuPriority {
|
||||
kIdle = 0,
|
||||
kLow = 1,
|
||||
kNormal = 2,
|
||||
kHigh = 3,
|
||||
};
|
||||
|
||||
} // namespace ROCKSDB_NAMESPACE
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
#include <thread>
|
||||
|
||||
#include "rocksdb/options.h"
|
||||
#include "rocksdb/port_defs.h"
|
||||
#include "rocksdb/rocksdb_namespace.h"
|
||||
|
||||
// size_t printf formatting named in the manner of C99 standard formatting
|
||||
|
|
|
@ -17,21 +17,22 @@
|
|||
#endif
|
||||
|
||||
#include <windows.h>
|
||||
//^^ <windows.h> should be included first before other system lib
|
||||
#include <intrin.h>
|
||||
#include <malloc.h>
|
||||
#include <process.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <cassert>
|
||||
#include <condition_variable>
|
||||
#include <limits>
|
||||
#include <mutex>
|
||||
#include <string>
|
||||
#include <thread>
|
||||
#include <string.h>
|
||||
#include <mutex>
|
||||
#include <limits>
|
||||
#include <condition_variable>
|
||||
#include <malloc.h>
|
||||
#include <intrin.h>
|
||||
#include <process.h>
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "port/win/win_thread.h"
|
||||
|
||||
#include "rocksdb/options.h"
|
||||
#include "rocksdb/port_defs.h"
|
||||
|
||||
#undef min
|
||||
#undef max
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "db/lookup_key.h"
|
||||
#include "db/merge_context.h"
|
||||
#include "rocksdb/env.h"
|
||||
#include "rocksdb/options.h"
|
||||
#include "rocksdb/statistics.h"
|
||||
#include "rocksdb/types.h"
|
||||
#include "util/async_file_reader.h"
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#pragma once
|
||||
|
||||
#include <algorithm>
|
||||
#include <cassert>
|
||||
|
||||
#include "port/port.h"
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <cassert>
|
||||
#include <cstddef>
|
||||
#include <thread>
|
||||
#include <utility>
|
||||
|
|
|
@ -36,6 +36,8 @@ using DMutexLock = std::lock_guard<folly::DistributedMutex>;
|
|||
|
||||
#else
|
||||
|
||||
#include <mutex>
|
||||
|
||||
#include "port/port.h"
|
||||
|
||||
namespace ROCKSDB_NAMESPACE {
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include <unordered_map>
|
||||
|
||||
#include "port/port.h"
|
||||
#include "rocksdb/env.h"
|
||||
#include "rocksdb/file_checksum.h"
|
||||
#include "rocksdb/status.h"
|
||||
#include "util/coding.h"
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include <assert.h>
|
||||
|
||||
#include <atomic>
|
||||
#include <functional>
|
||||
#include <mutex>
|
||||
#include <thread>
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
#include "util/random.h"
|
||||
|
||||
#include <limits.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
|
|
Loading…
Reference in New Issue