You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2017/08/21 21:03:53 UTC
[06/14] kudu git commit: [iwyu] first pass
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/tls_socket.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/tls_socket.h b/src/kudu/security/tls_socket.h
index dec55ec..761e5a5 100644
--- a/src/kudu/security/tls_socket.h
+++ b/src/kudu/security/tls_socket.h
@@ -17,12 +17,16 @@
#pragma once
-#include "kudu/security/openssl_util.h"
+#include <cstdint>
+#include <memory>
+
+#include "kudu/gutil/port.h"
+#include "kudu/security/openssl_util.h" // IWYU pragma: keep
#include "kudu/util/net/socket.h"
#include "kudu/util/status.h"
-struct ssl_st;
-typedef ssl_st SSL;
+struct iovec;
+typedef struct ssl_st SSL;
namespace kudu {
namespace security {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/token-test.cc b/src/kudu/security/token-test.cc
index 564587e..173b81b 100644
--- a/src/kudu/security/token-test.cc
+++ b/src/kudu/security/token-test.cc
@@ -27,6 +27,8 @@
#include "kudu/security/token_signer.h"
#include "kudu/security/token_signing_key.h"
#include "kudu/security/token_verifier.h"
+#include "kudu/util/make_shared.h"
+#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
DECLARE_int32(tsk_num_rsa_bits);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_signer.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_signer.cc b/src/kudu/security/token_signer.cc
index a60d116..fd1f017 100644
--- a/src/kudu/security/token_signer.cc
+++ b/src/kudu/security/token_signer.cc
@@ -18,6 +18,7 @@
#include "kudu/security/token_signer.h"
#include <algorithm>
+#include <cstdint>
#include <map>
#include <memory>
#include <mutex>
@@ -26,10 +27,12 @@
#include <vector>
#include <gflags/gflags.h>
+#include <glog/logging.h>
+#include "kudu/gutil/integral_types.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/gutil/walltime.h"
-#include "kudu/security/openssl_util.h"
+#include "kudu/security/crypto.h"
#include "kudu/security/token.pb.h"
#include "kudu/security/token_signing_key.h"
#include "kudu/security/token_verifier.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_signer.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_signer.h b/src/kudu/security/token_signer.h
index 3714b90..df1e3eb 100644
--- a/src/kudu/security/token_signer.h
+++ b/src/kudu/security/token_signer.h
@@ -25,6 +25,7 @@
#include <gtest/gtest_prod.h>
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/util/rw_mutex.h"
namespace kudu {
@@ -32,10 +33,8 @@ class Status;
namespace security {
class SignedTokenPB;
-class TokenSigner;
class TokenSigningPrivateKey;
class TokenSigningPrivateKeyPB;
-class TokenSigningPublicKeyPB;
class TokenVerifier;
// Class responsible for managing Token Signing Keys (TSKs) and signing tokens.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_signing_key.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_signing_key.cc b/src/kudu/security/token_signing_key.cc
index 3808cc8..38d49c6 100644
--- a/src/kudu/security/token_signing_key.cc
+++ b/src/kudu/security/token_signing_key.cc
@@ -24,6 +24,7 @@
#include <glog/logging.h>
#include "kudu/security/crypto.h"
+#include "kudu/security/openssl_util.h"
#include "kudu/security/token.pb.h"
#include "kudu/util/status.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_signing_key.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_signing_key.h b/src/kudu/security/token_signing_key.h
index 3a85b33..67ecf95 100644
--- a/src/kudu/security/token_signing_key.h
+++ b/src/kudu/security/token_signing_key.h
@@ -16,14 +16,15 @@
// under the License.
#pragma once
+#include <cstdint>
#include <memory>
#include <string>
#include <gtest/gtest_prod.h>
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/security/crypto.h"
-#include "kudu/security/openssl_util.h"
#include "kudu/security/token.pb.h"
#include "kudu/util/status.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_verifier.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_verifier.cc b/src/kudu/security/token_verifier.cc
index 8f3d5ad..50ddef0 100644
--- a/src/kudu/security/token_verifier.cc
+++ b/src/kudu/security/token_verifier.cc
@@ -18,8 +18,11 @@
#include "kudu/security/token_verifier.h"
#include <algorithm>
+#include <iterator>
#include <mutex>
+#include <ostream>
#include <string>
+#include <utility>
#include <vector>
#include "kudu/gutil/map-util.h"
@@ -28,6 +31,7 @@
#include "kudu/security/token_signing_key.h"
#include "kudu/util/locks.h"
#include "kudu/util/logging.h"
+#include "kudu/util/status.h"
using std::lock_guard;
using std::string;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/token_verifier.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/token_verifier.h b/src/kudu/security/token_verifier.h
index be7936c..8b07f4c 100644
--- a/src/kudu/security/token_verifier.h
+++ b/src/kudu/security/token_verifier.h
@@ -16,13 +16,19 @@
// under the License.
#pragma once
+#include <cstdint>
#include <map>
+#include <memory>
#include <vector>
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/util/rw_mutex.h"
namespace kudu {
+
+class Status;
+
namespace security {
class SignedTokenPB;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/x509_check_host.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/x509_check_host.cc b/src/kudu/security/x509_check_host.cc
index ce59138..4f54ca1 100644
--- a/src/kudu/security/x509_check_host.cc
+++ b/src/kudu/security/x509_check_host.cc
@@ -11,14 +11,12 @@
// of the functions are for the most part the same except where mentioned in special
// comments. Explicit casts were also added to bypass compilation errors.
-#include <stdio.h>
-#include <ctype.h>
#include <string.h>
-#include <strings.h>
-#include <openssl/bn.h>
-#include <openssl/conf.h>
-#include <openssl/err.h>
+#include <openssl/asn1.h>
+#include <openssl/crypto.h>
+#include <openssl/obj_mac.h>
+#include <openssl/x509.h>
#include <openssl/x509v3.h>
#include "kudu/security/x509_check_host.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/security/x509_check_host.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/x509_check_host.h b/src/kudu/security/x509_check_host.h
index e388b11..d2d5af9 100644
--- a/src/kudu/security/x509_check_host.h
+++ b/src/kudu/security/x509_check_host.h
@@ -13,8 +13,10 @@
#define X509_CHECK_HOST_H
#include <stdlib.h>
+// IWYU pragma: no_include <openssl/x509.h>
+// IWYU pragma: no_include "openssl/x509.h"
-#include <openssl/x509.h>
+typedef struct x509_st X509;
/* Flags for X509_check_* functions */
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/default-path-handlers.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/default-path-handlers.cc b/src/kudu/server/default-path-handlers.cc
index 5090d84..1d53456 100644
--- a/src/kudu/server/default-path-handlers.cc
+++ b/src/kudu/server/default-path-handlers.cc
@@ -19,7 +19,10 @@
#include <sys/stat.h>
+#include <cstddef>
+#include <cstdint>
#include <fstream>
+#include <map>
#include <memory>
#include <sstream>
#include <string>
@@ -27,11 +30,17 @@
#include <boost/algorithm/string.hpp>
#include <boost/algorithm/string/predicate.hpp>
-#include <boost/bind.hpp>
+#include <boost/bind.hpp> // IWYU pragma: keep
+#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+#include <glog/logging.h>
#include <gperftools/malloc_extension.h>
+#include "kudu/gutil/macros.h"
#include "kudu/gutil/map-util.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/human_readable.h"
+#include "kudu/gutil/strings/numbers.h"
#include "kudu/gutil/strings/split.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/server/pprof-path-handlers.h"
@@ -39,12 +48,13 @@
#include "kudu/util/easy_json.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/flags.h"
-#include "kudu/util/histogram.pb.h"
#include "kudu/util/jsonwriter.h"
#include "kudu/util/logging.h"
#include "kudu/util/mem_tracker.h"
#include "kudu/util/metrics.h"
#include "kudu/util/process_memory.h"
+#include "kudu/util/status.h"
+#include "kudu/util/web_callback_registry.h"
using std::ifstream;
using std::string;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/default-path-handlers.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/default-path-handlers.h b/src/kudu/server/default-path-handlers.h
index 818f068..82f3e2b 100644
--- a/src/kudu/server/default-path-handlers.h
+++ b/src/kudu/server/default-path-handlers.h
@@ -18,8 +18,6 @@
#ifndef KUDU_SERVER_DEFAULT_PATH_HANDLERS_H
#define KUDU_SERVER_DEFAULT_PATH_HANDLERS_H
-#include <string>
-
namespace kudu {
class MetricRegistry;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/generic_service.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/generic_service.cc b/src/kudu/server/generic_service.cc
index e7b8e9c..cb74c3d 100644
--- a/src/kudu/server/generic_service.cc
+++ b/src/kudu/server/generic_service.cc
@@ -17,19 +17,26 @@
#include "kudu/server/generic_service.h"
-#include <gflags/gflags.h>
#include <string>
+#include <ostream>
#include <unordered_set>
+#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+#include <glog/logging.h>
+
#include "kudu/clock/clock.h"
#include "kudu/clock/hybrid_clock.h"
#include "kudu/clock/mock_ntp.h"
+#include "kudu/clock/time_service.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/gutil/casts.h"
#include "kudu/gutil/map-util.h"
-#include "kudu/rpc/remote_user.h"
#include "kudu/rpc/rpc_context.h"
#include "kudu/server/server_base.h"
+#include "kudu/server/server_base.pb.h"
#include "kudu/util/debug-util.h"
-#include "kudu/util/debug/leak_annotations.h"
+#include "kudu/util/debug/leak_annotations.h" // IWYU pragma: keep
#include "kudu/util/flag_tags.h"
DECLARE_string(time_source);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/generic_service.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/generic_service.h b/src/kudu/server/generic_service.h
index d3038f2..bfc8704 100644
--- a/src/kudu/server/generic_service.h
+++ b/src/kudu/server/generic_service.h
@@ -18,12 +18,36 @@
#define KUDU_SERVER_GENERIC_SERVICE_H
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/server/server_base.service.h"
+namespace google {
+namespace protobuf {
+class Message;
+}
+}
+
namespace kudu {
+
+namespace rpc {
+class RpcContext;
+}
+
namespace server {
+class CheckLeaksRequestPB;
+class CheckLeaksResponsePB;
+class FlushCoverageRequestPB;
+class FlushCoverageResponsePB;
+class GetStatusRequestPB;
+class GetStatusResponsePB;
class ServerBase;
+class ServerClockRequestPB;
+class ServerClockResponsePB;
+class SetFlagRequestPB;
+class SetFlagResponsePB;
+class SetServerWallClockForTestsRequestPB;
+class SetServerWallClockForTestsResponsePB;
class GenericServiceImpl : public GenericServiceIf {
public:
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/glog_metrics.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/glog_metrics.cc b/src/kudu/server/glog_metrics.cc
index 6294227..9eed622 100644
--- a/src/kudu/server/glog_metrics.cc
+++ b/src/kudu/server/glog_metrics.cc
@@ -16,9 +16,10 @@
// under the License.
#include "kudu/server/glog_metrics.h"
+#include <cstddef>
#include <glog/logging.h>
-#include "kudu/gutil/once.h"
+#include "kudu/gutil/port.h"
#include "kudu/util/metrics.h"
METRIC_DEFINE_counter(server, glog_info_messages,
@@ -33,6 +34,8 @@ METRIC_DEFINE_counter(server, glog_error_messages,
"ERROR-level Log Messages", kudu::MetricUnit::kMessages,
"Number of ERROR-level log messages emitted by the application.");
+struct tm;
+
namespace kudu {
class MetricsSink : public google::LogSink {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/glog_metrics.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/glog_metrics.h b/src/kudu/server/glog_metrics.h
index e9e81a3..9a7bf32 100644
--- a/src/kudu/server/glog_metrics.h
+++ b/src/kudu/server/glog_metrics.h
@@ -17,7 +17,6 @@
#ifndef KUDU_SERVER_GLOG_METRICS_H
#define KUDU_SERVER_GLOG_METRICS_H
-#include "kudu/gutil/macros.h"
#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/ref_counted.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/pprof-path-handlers.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/pprof-path-handlers.cc b/src/kudu/server/pprof-path-handlers.cc
index 7b479af..1efb909 100644
--- a/src/kudu/server/pprof-path-handlers.cc
+++ b/src/kudu/server/pprof-path-handlers.cc
@@ -17,12 +17,17 @@
#include "kudu/server/pprof-path-handlers.h"
-#include <sys/stat.h>
+#include <unistd.h>
+#include <cstdint>
+#include <cstdlib>
#include <fstream>
+#include <map>
#include <string>
+#include <utility>
#include <vector>
+#include <gflags/gflags_declare.h>
#include <glog/logging.h>
#include <gperftools/heap-profiler.h>
#include <gperftools/malloc_extension.h>
@@ -32,14 +37,16 @@
#include "kudu/gutil/strings/numbers.h"
#include "kudu/gutil/strings/split.h"
#include "kudu/gutil/strings/stringpiece.h"
+#include "kudu/gutil/strings/strip.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/gutil/sysinfo.h"
#include "kudu/server/webserver.h"
#include "kudu/util/env.h"
-#include "kudu/util/logging.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/monotime.h"
#include "kudu/util/spinlock_profiling.h"
#include "kudu/util/status.h"
+#include "kudu/util/web_callback_registry.h"
DECLARE_bool(enable_process_lifetime_heap_profiling);
DECLARE_string(heap_profile_path);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/rpc_server-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/rpc_server-test.cc b/src/kudu/server/rpc_server-test.cc
index 2d26791..f6b8a76 100644
--- a/src/kudu/server/rpc_server-test.cc
+++ b/src/kudu/server/rpc_server-test.cc
@@ -24,6 +24,7 @@
#include "kudu/rpc/messenger.h"
#include "kudu/server/rpc_server.h"
#include "kudu/util/net/sockaddr.h"
+#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
using std::shared_ptr;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/rpc_server.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/rpc_server.cc b/src/kudu/server/rpc_server.cc
index a4069f0..8836958 100644
--- a/src/kudu/server/rpc_server.cc
+++ b/src/kudu/server/rpc_server.cc
@@ -15,17 +15,23 @@
// specific language governing permissions and limitations
// under the License.
-#include <list>
+#include <algorithm>
+#include <ostream>
#include <string>
+#include <type_traits>
#include <vector>
#include <gflags/gflags.h>
+#include <glog/logging.h>
#include "kudu/gutil/casts.h"
#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/move.h"
+#include "kudu/gutil/ref_counted.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/rpc/acceptor_pool.h"
#include "kudu/rpc/messenger.h"
+#include "kudu/rpc/rpc_service.h"
#include "kudu/rpc/service_if.h"
#include "kudu/rpc/service_pool.h"
#include "kudu/server/rpc_server.h"
@@ -137,10 +143,10 @@ Status RpcServer::Init(const shared_ptr<Messenger>& messenger) {
Status RpcServer::RegisterService(gscoped_ptr<rpc::ServiceIf> service) {
CHECK(server_state_ == INITIALIZED ||
server_state_ == BOUND) << "bad state: " << server_state_;
- const scoped_refptr<MetricEntity>& metric_entity = messenger_->metric_entity();
string service_name = service->service_name();
scoped_refptr<rpc::ServicePool> service_pool =
- new rpc::ServicePool(std::move(service), metric_entity, options_.service_queue_length);
+ new rpc::ServicePool(std::move(service), messenger_->metric_entity(),
+ options_.service_queue_length);
RETURN_NOT_OK(service_pool->Init(options_.num_service_threads));
RETURN_NOT_OK(messenger_->RegisterService(service_name, service_pool));
return Status::OK();
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/rpc_server.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/rpc_server.h b/src/kudu/server/rpc_server.h
index 8a65825..91c65d7 100644
--- a/src/kudu/server/rpc_server.h
+++ b/src/kudu/server/rpc_server.h
@@ -17,13 +17,15 @@
#ifndef KUDU_RPC_SERVER_H
#define KUDU_RPC_SERVER_H
+#include <cstddef>
+#include <cstdint>
#include <memory>
#include <string>
#include <vector>
#include "kudu/gutil/gscoped_ptr.h"
-#include "kudu/gutil/ref_counted.h"
-#include "kudu/rpc/service_pool.h"
+#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/util/net/sockaddr.h"
#include "kudu/util/status.h"
@@ -33,6 +35,7 @@ namespace rpc {
class AcceptorPool;
class Messenger;
class ServiceIf;
+class ServicePool;
} // namespace rpc
struct RpcServerOptions {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/rpcz-path-handler.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/rpcz-path-handler.cc b/src/kudu/server/rpcz-path-handler.cc
index 373d3e8..48c4f5d 100644
--- a/src/kudu/server/rpcz-path-handler.cc
+++ b/src/kudu/server/rpcz-path-handler.cc
@@ -17,11 +17,12 @@
#include "kudu/server/rpcz-path-handler.h"
+#include <map>
#include <memory>
#include <sstream>
#include <string>
-#include <boost/bind.hpp>
+#include <boost/bind.hpp> // IWYU pragma: keep
#include "kudu/gutil/map-util.h"
#include "kudu/gutil/strings/numbers.h"
@@ -29,6 +30,8 @@
#include "kudu/rpc/rpc_introspection.pb.h"
#include "kudu/rpc/rpcz_store.h"
#include "kudu/server/webserver.h"
+#include "kudu/util/jsonwriter.h"
+#include "kudu/util/web_callback_registry.h"
using kudu::rpc::DumpRunningRpcsRequestPB;
using kudu::rpc::DumpRunningRpcsResponsePB;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/server_base.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/server_base.cc b/src/kudu/server/server_base.cc
index 47c9777..86c3263 100644
--- a/src/kudu/server/server_base.cc
+++ b/src/kudu/server/server_base.cc
@@ -14,32 +14,41 @@
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
+
#include "kudu/server/server_base.h"
+#include <algorithm>
+#include <cstdint>
#include <sstream>
#include <string>
+#include <type_traits>
#include <vector>
#include <boost/algorithm/string/predicate.hpp>
-#include <boost/optional.hpp>
+#include <boost/optional/optional.hpp>
#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+#include <glog/logging.h>
+#include "kudu/clock/clock.h"
#include "kudu/clock/hybrid_clock.h"
#include "kudu/clock/logical_clock.h"
#include "kudu/codegen/compilation_manager.h"
+#include "kudu/common/timestamp.h"
#include "kudu/common/wire_protocol.h"
#include "kudu/common/wire_protocol.pb.h"
#include "kudu/fs/fs_manager.h"
#include "kudu/fs/fs_report.h"
-#include "kudu/gutil/strings/split.h"
+#include "kudu/gutil/move.h"
#include "kudu/gutil/strings/strcat.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/gutil/walltime.h"
#include "kudu/rpc/messenger.h"
#include "kudu/rpc/remote_user.h"
+#include "kudu/rpc/result_tracker.h"
#include "kudu/rpc/rpc_context.h"
+#include "kudu/rpc/service_if.h"
#include "kudu/security/init.h"
-#include "kudu/security/kerberos_util.h"
#include "kudu/server/default-path-handlers.h"
#include "kudu/server/generic_service.h"
#include "kudu/server/glog_metrics.h"
@@ -63,6 +72,7 @@
#include "kudu/util/net/sockaddr.h"
#include "kudu/util/pb_util.h"
#include "kudu/util/rolling_log.h"
+#include "kudu/util/slice.h"
#include "kudu/util/spinlock_profiling.h"
#include "kudu/util/thread.h"
#include "kudu/util/user.h"
@@ -108,6 +118,9 @@ using std::vector;
using strings::Substitute;
namespace kudu {
+
+class HostPortPB;
+
namespace server {
namespace {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/server_base.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/server_base.h b/src/kudu/server/server_base.h
index 7e81c12..11f40c6 100644
--- a/src/kudu/server/server_base.h
+++ b/src/kudu/server/server_base.h
@@ -17,6 +17,7 @@
#ifndef KUDU_SERVER_SERVER_BASE_H
#define KUDU_SERVER_SERVER_BASE_H
+#include <cstdint>
#include <memory>
#include <string>
@@ -24,14 +25,13 @@
#include "kudu/gutil/macros.h"
#include "kudu/gutil/ref_counted.h"
#include "kudu/rpc/messenger.h"
-#include "kudu/rpc/service_if.h"
#include "kudu/security/simple_acl.h"
#include "kudu/server/server_base_options.h"
+#include "kudu/util/countdown_latch.h"
#include "kudu/util/status.h"
namespace kudu {
-class Env;
class FsManager;
class MemTracker;
class MetricEntity;
@@ -49,7 +49,9 @@ class Clock;
} // namespace clock
namespace rpc {
+class ResultTracker;
class RpcContext;
+class ServiceIf;
} // namespace rpc
namespace security {
@@ -58,7 +60,6 @@ class TokenVerifier;
} // namespace security
namespace server {
-struct ServerBaseOptions;
class ServerStatusPB;
// Base class for tablet server and master.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/server_base_options.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/server_base_options.cc b/src/kudu/server/server_base_options.cc
index af70488..06a0c93 100644
--- a/src/kudu/server/server_base_options.cc
+++ b/src/kudu/server/server_base_options.cc
@@ -19,7 +19,9 @@
#include <gflags/gflags.h>
+#include "kudu/gutil/macros.h"
#include "kudu/util/flag_tags.h"
+#include "kudu/util/env.h"
DEFINE_string(server_dump_info_path, "",
"Path into which the server information will be "
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/server_base_options.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/server_base_options.h b/src/kudu/server/server_base_options.h
index 7c665d7..5b13180 100644
--- a/src/kudu/server/server_base_options.h
+++ b/src/kudu/server/server_base_options.h
@@ -17,8 +17,8 @@
#ifndef KUDU_SERVER_SERVER_BASE_OPTIONS_H
#define KUDU_SERVER_SERVER_BASE_OPTIONS_H
+#include <cstdint>
#include <string>
-#include <vector>
#include "kudu/fs/fs_manager.h"
#include "kudu/server/webserver_options.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/tcmalloc_metrics.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/tcmalloc_metrics.cc b/src/kudu/server/tcmalloc_metrics.cc
index e700d2f..d6722b6 100644
--- a/src/kudu/server/tcmalloc_metrics.cc
+++ b/src/kudu/server/tcmalloc_metrics.cc
@@ -16,10 +16,15 @@
// under the License.
#include "kudu/server/tcmalloc_metrics.h"
-#include <boost/bind.hpp>
+#include <cstddef>
+#include <cstdint>
+#include <ostream>
+
#include <glog/logging.h>
#include <gperftools/malloc_extension.h>
+#include "kudu/gutil/bind.h"
+#include "kudu/gutil/bind_helpers.h"
#include "kudu/util/metrics.h"
#ifndef TCMALLOC_ENABLED
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/tracing-path-handlers.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/tracing-path-handlers.cc b/src/kudu/server/tracing-path-handlers.cc
index dc3269c..6d8c3a2 100644
--- a/src/kudu/server/tracing-path-handlers.cc
+++ b/src/kudu/server/tracing-path-handlers.cc
@@ -18,20 +18,23 @@
#include <map>
#include <memory>
-#include <string.h>
+#include <ostream>
#include <string>
#include <utility>
#include <vector>
-#include <boost/bind.hpp>
+
+#include <boost/bind.hpp> // IWYU pragma: keep
+#include <glog/logging.h>
#include <rapidjson/document.h>
-#include <rapidjson/prettywriter.h>
-#include <rapidjson/rapidjson.h>
-#include <rapidjson/stringbuffer.h>
#include "kudu/gutil/strings/escaping.h"
+#include "kudu/server/webserver.h"
#include "kudu/util/debug/trace_event_impl.h"
#include "kudu/util/jsonwriter.h"
+#include "kudu/util/monotime.h"
+#include "kudu/util/status.h"
+#include "kudu/util/web_callback_registry.h"
#include "kudu/util/zlib.h"
using std::map;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/tracing-path-handlers.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/tracing-path-handlers.h b/src/kudu/server/tracing-path-handlers.h
index 402b77e..7e1feef 100644
--- a/src/kudu/server/tracing-path-handlers.h
+++ b/src/kudu/server/tracing-path-handlers.h
@@ -18,10 +18,11 @@
#define KUDU_SERVER_TRACING_PATH_HANDLERS_H
#include "kudu/gutil/macros.h"
-#include "kudu/server/webserver.h"
-#include "kudu/util/status.h"
namespace kudu {
+
+class Webserver;
+
namespace server {
// Web handlers for Chromium tracing.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webserver-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/webserver-test.cc b/src/kudu/server/webserver-test.cc
index 5ea1da9..d8b3ef4 100644
--- a/src/kudu/server/webserver-test.cc
+++ b/src/kudu/server/webserver-test.cc
@@ -17,21 +17,32 @@
#include <memory>
#include <string>
+#include <vector>
#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+#include <glog/logging.h>
#include <gtest/gtest.h>
+#include "kudu/gutil/integral_types.h"
+#include "kudu/gutil/macros.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/gutil/strings/util.h"
-#include "kudu/gutil/stringprintf.h"
#include "kudu/security/test/test_certs.h"
#include "kudu/security/test/test_pass.h"
#include "kudu/server/default-path-handlers.h"
#include "kudu/server/webserver.h"
+#include "kudu/server/webserver_options.h"
#include "kudu/util/curl_util.h"
+#include "kudu/util/env.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/logging.h"
#include "kudu/util/net/sockaddr.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
+#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
using std::string;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webserver.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/webserver.cc b/src/kudu/server/webserver.cc
index b4733c9..9127a10 100644
--- a/src/kudu/server/webserver.cc
+++ b/src/kudu/server/webserver.cc
@@ -14,33 +14,36 @@
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
-#include "kudu/server/webserver.h"
-#include <cstdio>
-#include <signal.h>
+#include "kudu/server/webserver.h"
#include <algorithm>
+#include <csignal>
+#include <cstdint>
+#include <cstdlib>
+#include <cstring>
#include <functional>
#include <map>
+#include <memory>
#include <mutex>
#include <sstream>
#include <string>
+#include <utility>
#include <vector>
-#include <boost/algorithm/string.hpp>
+#include <boost/algorithm/string.hpp> // IWYU pragma: keep
#include <gflags/gflags.h>
#include <glog/logging.h>
#include <mustache.h>
#include <squeasel.h>
+#include "kudu/gutil/macros.h"
#include "kudu/gutil/map-util.h"
#include "kudu/gutil/stl_util.h"
-#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/join.h"
#include "kudu/gutil/strings/numbers.h"
#include "kudu/gutil/strings/split.h"
#include "kudu/gutil/strings/stringpiece.h"
-#include "kudu/gutil/strings/strip.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/security/openssl_util.h"
#include "kudu/util/easy_json.h"
@@ -48,11 +51,12 @@
#include "kudu/util/flag_tags.h"
#include "kudu/util/locks.h"
#include "kudu/util/net/net_util.h"
-#include "kudu/util/path_util.h"
-#include "kudu/util/subprocess.h"
+#include "kudu/util/net/sockaddr.h"
#include "kudu/util/url-coding.h"
#include "kudu/util/version_info.h"
+struct sockaddr_in;
+
#if defined(__APPLE__)
typedef sig_t sighandler_t;
#endif
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webserver.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/webserver.h b/src/kudu/server/webserver.h
index 71201a7..6b7092f 100644
--- a/src/kudu/server/webserver.h
+++ b/src/kudu/server/webserver.h
@@ -17,23 +17,27 @@
#ifndef KUDU_UTIL_WEBSERVER_H
#define KUDU_UTIL_WEBSERVER_H
+#include <algorithm>
#include <iosfwd>
#include <map>
#include <string>
#include <vector>
+#include "kudu/gutil/port.h"
#include "kudu/server/webserver_options.h"
#include "kudu/util/net/sockaddr.h"
#include "kudu/util/rw_mutex.h"
#include "kudu/util/status.h"
#include "kudu/util/web_callback_registry.h"
-struct sq_connection;
-struct sq_request_info;
-struct sq_context;
+struct sq_connection; // IWYU pragma: keep
+struct sq_request_info; // IWYU pragma: keep
+struct sq_context; // IWYU pragma: keep
namespace kudu {
+class EasyJson;
+
// Wrapper class for the Mongoose web server library. Clients may register callback
// methods which produce output for a given URL path
class Webserver : public WebCallbackRegistry {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webserver_options.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/webserver_options.cc b/src/kudu/server/webserver_options.cc
index 81662ef..e25ea2a 100644
--- a/src/kudu/server/webserver_options.cc
+++ b/src/kudu/server/webserver_options.cc
@@ -17,12 +17,14 @@
#include "kudu/server/webserver_options.h"
-#include <cstring>
#include <cstdlib>
+#include <ostream>
#include <string>
#include <gflags/gflags.h>
+#include <glog/logging.h>
+#include "kudu/gutil/macros.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/flag_validators.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webui_util.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/webui_util.cc b/src/kudu/server/webui_util.cc
index 8d5b44a..9b61b70 100644
--- a/src/kudu/server/webui_util.cc
+++ b/src/kudu/server/webui_util.cc
@@ -20,11 +20,14 @@
#include <sstream>
#include <string>
-#include "kudu/gutil/strings/join.h"
-#include "kudu/gutil/map-util.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/schema.h"
+#include "kudu/gutil/ref_counted.h"
#include "kudu/gutil/strings/human_readable.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/server/monitored_task.h"
+#include "kudu/util/compression/compression.pb.h"
+#include "kudu/util/monotime.h"
#include "kudu/util/url-coding.h"
using std::string;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/server/webui_util.h
----------------------------------------------------------------------
diff --git a/src/kudu/server/webui_util.h b/src/kudu/server/webui_util.h
index 8bfbd27..e8761b0 100644
--- a/src/kudu/server/webui_util.h
+++ b/src/kudu/server/webui_util.h
@@ -21,8 +21,8 @@
#include <string>
#include <vector>
-#include "kudu/common/schema.h"
-#include "kudu/gutil/ref_counted.h"
+template <class T>
+class scoped_refptr;
namespace kudu {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/cbtree-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/cbtree-test.cc b/src/kudu/tablet/cbtree-test.cc
index db5243f..7e1c376 100644
--- a/src/kudu/tablet/cbtree-test.cc
+++ b/src/kudu/tablet/cbtree-test.cc
@@ -15,20 +15,28 @@
// specific language governing permissions and limitations
// under the License.
-#include <glog/logging.h>
-#include <gtest/gtest.h>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <string>
#include <thread>
#include <unordered_set>
+#include <vector>
+
+#include <glog/logging.h>
+#include <gtest/gtest.h>
#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/tablet/concurrent_btree.h"
#include "kudu/util/barrier.h"
#include "kudu/util/debug/sanitizer_scopes.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/hexdump.h"
-#include "kudu/util/memory/memory.h"
+#include "kudu/util/memory/arena.h"
#include "kudu/util/memory/overwrite.h"
+#include "kudu/util/slice.h"
#include "kudu/util/stopwatch.h"
-#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
using std::string;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/cfile_set-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/cfile_set-test.cc b/src/kudu/tablet/cfile_set-test.cc
index 4cb3923..7a55c8b 100644
--- a/src/kudu/tablet/cfile_set-test.cc
+++ b/src/kudu/tablet/cfile_set-test.cc
@@ -15,16 +15,44 @@
// specific language governing permissions and limitations
// under the License.
+#include <cstddef>
+#include <cstdint>
#include <memory>
+#include <ostream>
+#include <string>
+#include <vector>
+
+#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
#include <gtest/gtest.h>
#include <glog/logging.h>
+#include "kudu/common/column_materialization_context.h"
+#include "kudu/common/column_predicate.h"
+#include "kudu/common/columnblock.h"
+#include "kudu/common/common.pb.h"
#include "kudu/common/generic_iterators.h"
+#include "kudu/common/iterator.h"
+#include "kudu/common/iterator_stats.h"
+#include "kudu/common/row.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/rowid.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/common/schema.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/integral_types.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/stringprintf.h"
+#include "kudu/gutil/strings/stringpiece.h"
#include "kudu/tablet/cfile_set.h"
-#include "kudu/tablet/diskrowset-test-base.h"
-#include "kudu/tablet/tablet-test-base.h"
+#include "kudu/tablet/diskrowset.h"
+#include "kudu/tablet/tablet-test-util.h"
+#include "kudu/util/auto_release_pool.h"
+#include "kudu/util/bloom_filter.h"
#include "kudu/util/mem_tracker.h"
-#include "kudu/util/test_util.h"
+#include "kudu/util/memory/arena.h"
+#include "kudu/util/status.h"
+#include "kudu/util/test_macros.h"
DECLARE_int32(cfile_default_block_size);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/cfile_set.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/cfile_set.cc b/src/kudu/tablet/cfile_set.cc
index d3715fc..2ac9126 100644
--- a/src/kudu/tablet/cfile_set.cc
+++ b/src/kudu/tablet/cfile_set.cc
@@ -17,27 +17,42 @@
#include <algorithm>
#include <memory>
+#include <ostream>
+#include <utility>
+#include <boost/optional/optional.hpp>
#include <gflags/gflags.h>
#include <glog/logging.h>
#include "kudu/cfile/bloomfile.h"
#include "kudu/cfile/cfile_util.h"
-#include "kudu/cfile/cfile_writer.h"
-#include "kudu/common/scan_spec.h"
#include "kudu/common/column_materialization_context.h"
+#include "kudu/common/columnblock.h"
+#include "kudu/common/encoded_key.h"
+#include "kudu/common/iterator_stats.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
#include "kudu/gutil/dynamic_annotations.h"
#include "kudu/gutil/map-util.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/tablet/diskrowset.h"
#include "kudu/tablet/cfile_set.h"
+#include "kudu/tablet/diskrowset.h"
+#include "kudu/tablet/rowset.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/logging.h"
+#include "kudu/util/slice.h"
DEFINE_bool(consult_bloom_filters, true, "Whether to consult bloom filters on row presence checks");
TAG_FLAG(consult_bloom_filters, hidden);
namespace kudu {
+
+class BlockId;
+class MemTracker;
+
namespace tablet {
using cfile::BloomFileReader;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/cfile_set.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/cfile_set.h b/src/kudu/tablet/cfile_set.h
index 394054e..db05476 100644
--- a/src/kudu/tablet/cfile_set.h
+++ b/src/kudu/tablet/cfile_set.h
@@ -17,30 +17,51 @@
#ifndef KUDU_TABLET_LAYER_BASEDATA_H
#define KUDU_TABLET_LAYER_BASEDATA_H
+#include <algorithm>
+#include <cstddef>
+#include <cstdint>
#include <memory>
#include <string>
#include <vector>
#include <boost/container/flat_map.hpp>
-#include <boost/optional.hpp>
+#include <boost/container/vector.hpp>
+#include <glog/logging.h>
#include <gtest/gtest_prod.h>
-#include "kudu/cfile/bloomfile.h"
#include "kudu/cfile/cfile_reader.h"
#include "kudu/common/iterator.h"
+#include "kudu/common/rowid.h"
#include "kudu/common/schema.h"
+#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/macros.h"
#include "kudu/gutil/map-util.h"
-#include "kudu/tablet/memrowset.h"
+#include "kudu/gutil/port.h"
#include "kudu/tablet/rowset_metadata.h"
-#include "kudu/util/env.h"
-#include "kudu/util/memory/arena.h"
-#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
+
+namespace boost {
+template <class T>
+class optional;
+}
namespace kudu {
+class ColumnMaterializationContext;
+class MemTracker;
+class ScanSpec;
+class SelectionVector;
+struct IteratorStats;
+
+namespace cfile {
+class BloomFileReader;
+}
+
namespace tablet {
+class RowSetKeyProbe;
+struct ProbeStats;
+
// Set of CFiles which make up the base data for a single rowset
//
// All of these files have the same number of rows, and thus the positional
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction-test.cc b/src/kudu/tablet/compaction-test.cc
index fd9ae83..a6e1c6a 100644
--- a/src/kudu/tablet/compaction-test.cc
+++ b/src/kudu/tablet/compaction-test.cc
@@ -16,25 +16,63 @@
// under the License.
#include <algorithm>
+#include <cstdint>
+#include <cstdio>
+#include <cstdlib>
#include <memory>
+#include <numeric>
+#include <ostream>
+#include <string>
+#include <vector>
#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
#include <glog/logging.h>
#include <gtest/gtest.h>
#include "kudu/clock/logical_clock.h"
+#include "kudu/common/common.pb.h"
#include "kudu/common/partial_row.h"
+#include "kudu/common/row.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/rowid.h"
+#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
#include "kudu/consensus/log_anchor_registry.h"
+#include "kudu/consensus/opid.pb.h"
#include "kudu/consensus/opid_util.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/fs/block_manager.h"
#include "kudu/fs/fs_manager.h"
#include "kudu/fs/log_block_manager.h"
+#include "kudu/gutil/casts.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/ref_counted.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/gutil/strings/util.h"
#include "kudu/tablet/compaction.h"
+#include "kudu/tablet/diskrowset.h"
#include "kudu/tablet/local_tablet_writer.h"
+#include "kudu/tablet/memrowset.h"
+#include "kudu/tablet/mutation.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/tablet/rowset.h"
+#include "kudu/tablet/rowset_metadata.h"
+#include "kudu/tablet/tablet-harness.h"
#include "kudu/tablet/tablet-test-util.h"
+#include "kudu/tablet/tablet.h"
+#include "kudu/tablet/tablet.pb.h"
#include "kudu/tablet/tablet_mem_trackers.h"
+#include "kudu/tablet/tablet_metadata.h"
+#include "kudu/util/env.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/make_shared.h"
+#include "kudu/util/memory/arena.h"
+#include "kudu/util/monotime.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
#include "kudu/util/stopwatch.h"
+#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
DEFINE_string(merge_benchmark_input_dir, "",
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction.cc b/src/kudu/tablet/compaction.cc
index 8619c8d..6b5d9eb 100644
--- a/src/kudu/tablet/compaction.cc
+++ b/src/kudu/tablet/compaction.cc
@@ -17,27 +17,46 @@
#include "kudu/tablet/compaction.h"
+#include <cstdint>
#include <deque>
-#include <glog/logging.h>
#include <memory>
+#include <ostream>
#include <string>
+#include <type_traits>
#include <unordered_set>
#include <vector>
+#include <glog/logging.h>
+
#include "kudu/clock/hybrid_clock.h"
-#include "kudu/common/wire_protocol.h"
+#include "kudu/common/generic_iterators.h"
+#include "kudu/common/iterator.h"
+#include "kudu/common/row.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowid.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/common/schema.h"
+#include "kudu/consensus/opid.pb.h"
#include "kudu/consensus/opid_util.h"
+#include "kudu/gutil/casts.h"
#include "kudu/gutil/macros.h"
#include "kudu/gutil/map-util.h"
+#include "kudu/gutil/move.h"
+#include "kudu/gutil/port.h"
#include "kudu/gutil/stl_util.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/cfile_set.h"
#include "kudu/tablet/delta_store.h"
#include "kudu/tablet/delta_tracker.h"
#include "kudu/tablet/diskrowset.h"
+#include "kudu/tablet/memrowset.h"
+#include "kudu/tablet/mutation.h"
+#include "kudu/tablet/mvcc.h"
#include "kudu/tablet/tablet.pb.h"
-#include "kudu/tablet/transactions/write_transaction.h"
#include "kudu/util/debug/trace_event.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/make_shared.h"
+#include "kudu/util/memory/arena.h"
using kudu::clock::HybridClock;
using std::deque;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction.h b/src/kudu/tablet/compaction.h
index 24ea328..38b82f0 100644
--- a/src/kudu/tablet/compaction.h
+++ b/src/kudu/tablet/compaction.h
@@ -17,20 +17,34 @@
#ifndef KUDU_TABLET_COMPACTION_H
#define KUDU_TABLET_COMPACTION_H
+#include <algorithm>
+#include <cstddef>
#include <memory>
#include <mutex>
#include <string>
#include <vector>
-#include "kudu/common/generic_iterators.h"
-#include "kudu/common/iterator.h"
-#include "kudu/tablet/diskrowset.h"
-#include "kudu/tablet/memrowset.h"
+#include <glog/logging.h>
+
+#include "kudu/common/rowblock.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/tablet/rowset.h"
+#include "kudu/util/status.h"
namespace kudu {
+
+class Arena;
+class Schema;
+
namespace tablet {
+
+class DiskRowSet;
+class MemRowSet;
+class Mutation;
+class MvccSnapshot;
+class RollingDiskRowSetWriter;
struct CompactionInputRow;
-class WriteTransactionState;
// Options related to tablet history garbage collection.
class HistoryGcOpts {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction_policy-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction_policy-test.cc b/src/kudu/tablet/compaction_policy-test.cc
index ecc9f3f..587d2f4 100644
--- a/src/kudu/tablet/compaction_policy-test.cc
+++ b/src/kudu/tablet/compaction_policy-test.cc
@@ -15,21 +15,30 @@
// specific language governing permissions and limitations
// under the License.
-#include <glog/stl_logging.h>
-#include <gtest/gtest.h>
+#include <algorithm>
#include <memory>
-#include <unordered_set>
+#include <ostream>
#include <string>
+#include <unordered_set>
+#include <vector>
+
+#include <glog/logging.h>
+#include <glog/stl_logging.h>
+#include <gtest/gtest.h>
#include "kudu/gutil/strings/numbers.h"
#include "kudu/gutil/strings/split.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/util/stopwatch.h"
-#include "kudu/util/test_util.h"
+#include "kudu/tablet/compaction_policy.h"
#include "kudu/tablet/mock-rowsets.h"
#include "kudu/tablet/rowset.h"
#include "kudu/tablet/rowset_tree.h"
-#include "kudu/tablet/compaction_policy.h"
+#include "kudu/util/env.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/path_util.h"
+#include "kudu/util/status.h"
+#include "kudu/util/stopwatch.h"
+#include "kudu/util/test_macros.h"
using std::shared_ptr;
using std::unordered_set;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction_policy.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction_policy.cc b/src/kudu/tablet/compaction_policy.cc
index 93fb7b2..1e7dbf4 100644
--- a/src/kudu/tablet/compaction_policy.cc
+++ b/src/kudu/tablet/compaction_policy.cc
@@ -17,22 +17,23 @@
#include "kudu/tablet/compaction_policy.h"
-#include <glog/logging.h>
-
#include <algorithm>
-#include <utility>
+#include <ostream>
+#include <queue>
#include <string>
+#include <unordered_set>
+#include <utility>
#include <vector>
+#include <gflags/gflags.h>
+#include <glog/logging.h>
+
#include "kudu/gutil/map-util.h"
#include "kudu/gutil/mathlimits.h"
-#include "kudu/tablet/rowset.h"
#include "kudu/tablet/rowset_info.h"
-#include "kudu/tablet/rowset_tree.h"
#include "kudu/tablet/svg_dump.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/knapsack_solver.h"
-#include "kudu/util/slice.h"
#include "kudu/util/status.h"
using std::vector;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/compaction_policy.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/compaction_policy.h b/src/kudu/tablet/compaction_policy.h
index 9b7fcb8..fb0890a 100644
--- a/src/kudu/tablet/compaction_policy.h
+++ b/src/kudu/tablet/compaction_policy.h
@@ -17,21 +17,22 @@
#ifndef KUDU_TABLET_COMPACTION_POLICY_H
#define KUDU_TABLET_COMPACTION_POLICY_H
+#include <cstddef>
+#include <cstdint>
#include <string>
#include <unordered_set>
#include <vector>
#include "kudu/gutil/macros.h"
-#include "kudu/util/slice.h"
+#include "kudu/gutil/port.h"
#include "kudu/util/status.h"
namespace kudu {
namespace tablet {
class RowSet;
-class RowSetTree;
-
class RowSetInfo;
+class RowSetTree;
// A Compaction Policy is responsible for picking which files in a tablet
// should be compacted together.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/composite-pushdown-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/composite-pushdown-test.cc b/src/kudu/tablet/composite-pushdown-test.cc
index 19fd3da..7d164da 100644
--- a/src/kudu/tablet/composite-pushdown-test.cc
+++ b/src/kudu/tablet/composite-pushdown-test.cc
@@ -15,14 +15,34 @@
// specific language governing permissions and limitations
// under the License.
+#include <algorithm>
+#include <cstdint>
+#include <memory>
+#include <string>
+#include <unordered_map>
+#include <vector>
+
+#include <boost/optional/optional.hpp>
#include <glog/logging.h>
#include <gtest/gtest.h>
+#include "kudu/common/column_predicate.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/iterator.h"
+#include "kudu/common/partial_row.h"
+#include "kudu/common/scan_spec.h"
#include "kudu/common/schema.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/stringprintf.h"
+#include "kudu/tablet/local_tablet_writer.h"
+#include "kudu/tablet/tablet-test-util.h"
#include "kudu/tablet/tablet.h"
-#include "kudu/tablet/tablet-test-base.h"
+#include "kudu/util/memory/arena.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
+#include "kudu/util/stopwatch.h"
#include "kudu/util/test_macros.h"
-#include "kudu/util/test_util.h"
using std::string;
using std::vector;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_applier.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_applier.cc b/src/kudu/tablet/delta_applier.cc
index a968122..64cf57a 100644
--- a/src/kudu/tablet/delta_applier.cc
+++ b/src/kudu/tablet/delta_applier.cc
@@ -17,11 +17,14 @@
#include "kudu/tablet/delta_applier.h"
+#include <algorithm>
+#include <ostream>
#include <string>
#include <vector>
+#include <glog/logging.h>
+
#include "kudu/common/column_materialization_context.h"
-#include "kudu/common/iterator.h"
#include "kudu/tablet/delta_store.h"
#include "kudu/util/status.h"
@@ -30,6 +33,12 @@ using std::string;
using std::unique_ptr;
namespace kudu {
+
+class ScanSpec;
+class Schema;
+class SelectionVector;
+struct IteratorStats;
+
namespace tablet {
// Construct. The base_iter and delta_iter should not be Initted.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_applier.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_applier.h b/src/kudu/tablet/delta_applier.h
index 1f2cb01..27e8041 100644
--- a/src/kudu/tablet/delta_applier.h
+++ b/src/kudu/tablet/delta_applier.h
@@ -17,6 +17,7 @@
#ifndef KUDU_TABLET_DELTA_APPLIER_H
#define KUDU_TABLET_DELTA_APPLIER_H
+#include <cstddef>
#include <string>
#include <memory>
#include <vector>
@@ -24,12 +25,19 @@
#include <gtest/gtest_prod.h>
#include "kudu/common/iterator.h"
-#include "kudu/common/schema.h"
#include "kudu/gutil/macros.h"
-#include "kudu/util/status.h"
+#include "kudu/gutil/port.h"
#include "kudu/tablet/cfile_set.h"
+#include "kudu/util/status.h"
namespace kudu {
+
+class ColumnMaterializationContext;
+class ScanSpec;
+class Schema;
+class SelectionVector;
+struct IteratorStats;
+
namespace tablet {
class DeltaIterator;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_compaction-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_compaction-test.cc b/src/kudu/tablet/delta_compaction-test.cc
index c1b500e..2c22955 100644
--- a/src/kudu/tablet/delta_compaction-test.cc
+++ b/src/kudu/tablet/delta_compaction-test.cc
@@ -15,6 +15,10 @@
// specific language governing permissions and limitations
// under the License.
+#include <algorithm>
+#include <cstddef>
+#include <cstdint>
+#include <memory>
#include <string>
#include <vector>
@@ -23,19 +27,27 @@
#include <gtest/gtest.h>
#include "kudu/cfile/cfile_util.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/row_changelist.h"
#include "kudu/common/schema.h"
-#include "kudu/tablet/deltafile.h"
-#include "kudu/tablet/delta_compaction.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/common/types.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/port.h"
#include "kudu/tablet/delta_iterator_merger.h"
-#include "kudu/gutil/strings/util.h"
+#include "kudu/tablet/delta_key.h"
+#include "kudu/tablet/delta_stats.h"
+#include "kudu/tablet/delta_store.h"
+#include "kudu/tablet/deltafile.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
#include "kudu/util/test_macros.h"
-#include "kudu/util/stopwatch.h"
#include "kudu/util/test_util.h"
-#include "kudu/util/env.h"
-#include "kudu/util/env_util.h"
-#include "kudu/util/path_util.h"
-#include "kudu/util/status.h"
-#include "kudu/util/auto_release_pool.h"
DEFINE_int32(num_rows, 2100, "the first row to update");
DEFINE_int32(num_delta_files, 3, "number of delta files");
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_compaction.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_compaction.cc b/src/kudu/tablet/delta_compaction.cc
index ee110af..bdefa0a 100644
--- a/src/kudu/tablet/delta_compaction.cc
+++ b/src/kudu/tablet/delta_compaction.cc
@@ -17,24 +17,37 @@
#include "kudu/tablet/delta_compaction.h"
-#include <algorithm>
#include <map>
+#include <ostream>
#include <string>
+#include <utility>
#include <vector>
+#include <glog/logging.h>
+
#include "kudu/common/generic_iterators.h"
-#include "kudu/gutil/stl_util.h"
-#include "kudu/gutil/strings/join.h"
+#include "kudu/common/iterator.h"
+#include "kudu/common/row.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/rowid.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
+#include "kudu/gutil/casts.h"
+#include "kudu/gutil/map-util.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/gutil/strings/strcat.h"
-#include "kudu/common/columnblock.h"
-#include "kudu/cfile/cfile_reader.h"
#include "kudu/tablet/cfile_set.h"
#include "kudu/tablet/compaction.h"
#include "kudu/tablet/delta_key.h"
-#include "kudu/tablet/deltamemstore.h"
+#include "kudu/tablet/delta_stats.h"
+#include "kudu/tablet/delta_tracker.h"
+#include "kudu/tablet/deltafile.h"
#include "kudu/tablet/multi_column_writer.h"
+#include "kudu/tablet/mutation.h"
#include "kudu/tablet/mvcc.h"
+#include "kudu/tablet/rowset_metadata.h"
+#include "kudu/util/memory/arena.h"
using std::shared_ptr;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_compaction.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_compaction.h b/src/kudu/tablet/delta_compaction.h
index 6f0b788..4397804 100644
--- a/src/kudu/tablet/delta_compaction.h
+++ b/src/kudu/tablet/delta_compaction.h
@@ -17,24 +17,29 @@
#ifndef KUDU_TABLET_DELTA_COMPACTION_H
#define KUDU_TABLET_DELTA_COMPACTION_H
+#include <cstddef>
#include <memory>
#include <string>
-#include <unordered_map>
-#include <utility>
#include <vector>
-#include "kudu/cfile/cfile_writer.h"
+#include "kudu/common/schema.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/tablet/compaction.h"
-#include "kudu/tablet/deltafile.h"
+#include "kudu/tablet/delta_store.h"
+#include "kudu/util/status.h"
namespace kudu {
+class FsManager;
+
namespace tablet {
class CFileSet;
-class DeltaMemStore;
-class DeltaKey;
+class DeltaFileWriter;
+class DeltaTracker;
class MultiColumnWriter;
+class RowSetMetadataUpdate;
// Handles major delta compaction: applying deltas to specific columns
// of a DiskRowSet, writing out an updated DiskRowSet without re-writing the
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_iterator_merger.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_iterator_merger.cc b/src/kudu/tablet/delta_iterator_merger.cc
index d19aa62..b287fda 100644
--- a/src/kudu/tablet/delta_iterator_merger.cc
+++ b/src/kudu/tablet/delta_iterator_merger.cc
@@ -19,14 +19,22 @@
#include <algorithm>
-#include "kudu/gutil/strings/join.h"
-#include "kudu/gutil/strings/strcat.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/tablet/deltafile.h"
+#include "kudu/tablet/delta_key.h"
namespace kudu {
+
+class Arena;
+class ColumnBlock;
+class Schema;
+class SelectionVector;
+struct ColumnId;
+
namespace tablet {
+class Mutation;
+class MvccSnapshot;
+
using std::shared_ptr;
using std::string;
using std::unique_ptr;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_iterator_merger.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_iterator_merger.h b/src/kudu/tablet/delta_iterator_merger.h
index 139cdd4..2d77400 100644
--- a/src/kudu/tablet/delta_iterator_merger.h
+++ b/src/kudu/tablet/delta_iterator_merger.h
@@ -17,18 +17,30 @@
#ifndef KUDU_TABLET_DELTA_ITERATOR_MERGER_H
#define KUDU_TABLET_DELTA_ITERATOR_MERGER_H
+#include <cstddef>
#include <string>
#include <memory>
#include <vector>
+#include "kudu/common/rowid.h"
+#include "kudu/gutil/port.h"
#include "kudu/tablet/delta_store.h"
+#include "kudu/util/status.h"
namespace kudu {
+class Arena;
+class ColumnBlock;
class ScanSpec;
+class Schema;
+class SelectionVector;
+struct ColumnId;
namespace tablet {
+class Mutation;
+class MvccSnapshot;
+
// DeltaIterator that simply combines together other DeltaIterators,
// applying deltas from each in order.
class DeltaIteratorMerger : public DeltaIterator {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_key.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_key.cc b/src/kudu/tablet/delta_key.cc
index 879e4bd..0fed0c8 100644
--- a/src/kudu/tablet/delta_key.cc
+++ b/src/kudu/tablet/delta_key.cc
@@ -15,10 +15,13 @@
// specific language governing permissions and limitations
// under the License.
-#include "kudu/tablet/delta_key.h"
+#include <ostream>
#include <glog/logging.h>
+#include "kudu/tablet/delta_key.h"
+#include "kudu/util/logging.h"
+
namespace kudu {
namespace tablet {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_key.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_key.h b/src/kudu/tablet/delta_key.h
index 68ca198..1beddc1 100644
--- a/src/kudu/tablet/delta_key.h
+++ b/src/kudu/tablet/delta_key.h
@@ -20,13 +20,16 @@
#include <string>
#include "kudu/common/rowid.h"
-#include "kudu/gutil/endian.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/gutil/port.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/tablet/mvcc.h"
-#include "kudu/util/logging.h"
+#include "kudu/util/slice.h"
#include "kudu/util/status.h"
namespace kudu {
+
+class faststring;
+
namespace tablet {
// The type of the delta.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_stats.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_stats.cc b/src/kudu/tablet/delta_stats.cc
index a3ffbee..0db1343 100644
--- a/src/kudu/tablet/delta_stats.cc
+++ b/src/kudu/tablet/delta_stats.cc
@@ -16,13 +16,18 @@
// under the License.
#include "kudu/tablet/delta_stats.h"
+#include <cstdint>
+#include <ostream>
#include <utility>
#include <vector>
+#include <glog/logging.h>
+
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/schema.h"
#include "kudu/gutil/strings/join.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/tablet.pb.h"
-#include "kudu/util/bitmap.h"
using strings::Substitute;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_stats.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_stats.h b/src/kudu/tablet/delta_stats.h
index a5213c0..1d5a134 100644
--- a/src/kudu/tablet/delta_stats.h
+++ b/src/kudu/tablet/delta_stats.h
@@ -17,21 +17,20 @@
#ifndef KUDU_TABLET_DELTA_STATS_H
#define KUDU_TABLET_DELTA_STATS_H
-#include <glog/logging.h>
-#include <boost/function.hpp>
-
+#include <cstdint>
#include <set>
-#include <stdint.h>
#include <string>
#include <unordered_map>
-#include "kudu/gutil/atomicops.h"
+#include "kudu/common/schema.h" // IWYU pragma: keep
+#include "kudu/common/timestamp.h"
#include "kudu/gutil/map-util.h"
-#include "kudu/common/row_changelist.h"
-#include "kudu/tablet/mvcc.h"
+#include "kudu/util/status.h"
namespace kudu {
+class RowChangeList;
+
namespace tablet {
class DeltaStatsPB;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_store.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_store.cc b/src/kudu/tablet/delta_store.cc
index 6eaa307..8c9f0a3 100644
--- a/src/kudu/tablet/delta_store.cc
+++ b/src/kudu/tablet/delta_store.cc
@@ -18,10 +18,20 @@
#include "kudu/tablet/delta_store.h"
#include <algorithm>
+#include <cstdlib>
+#include <glog/logging.h>
+
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/strcat.h"
#include "kudu/gutil/strings/substitute.h"
+#include "kudu/tablet/delta_stats.h"
#include "kudu/tablet/deltafile.h"
+#include "kudu/util/memory/arena.h"
namespace kudu {
namespace tablet {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_store.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_store.h b/src/kudu/tablet/delta_store.h
index 564d33f..9f5416b 100644
--- a/src/kudu/tablet/delta_store.h
+++ b/src/kudu/tablet/delta_store.h
@@ -17,28 +17,33 @@
#ifndef KUDU_TABLET_DELTA_STORE_H
#define KUDU_TABLET_DELTA_STORE_H
+#include <cstddef>
+#include <cstdint>
#include <memory>
#include <string>
#include <vector>
-#include "kudu/common/columnblock.h"
-#include "kudu/common/schema.h"
-#include "kudu/util/status.h"
-#include "kudu/tablet/mutation.h"
-#include "kudu/tablet/mvcc.h"
+#include "kudu/common/rowid.h"
#include "kudu/tablet/delta_key.h"
-#include "kudu/tablet/delta_stats.h"
-#include "kudu/tablet/tablet_metadata.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
namespace kudu {
+class Arena;
+class ColumnBlock;
class ScanSpec;
+class Schema;
class SelectionVector;
+struct ColumnId;
namespace tablet {
-class DeltaIterator;
class DeltaFileWriter;
+class DeltaIterator;
+class DeltaStats;
+class Mutation;
+class MvccSnapshot;
// Interface for the pieces of the system that track deltas/updates.
// This is implemented by DeltaMemStore and by DeltaFileReader.
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_tracker.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_tracker.cc b/src/kudu/tablet/delta_tracker.cc
index cbaaff2..6e3fa88 100644
--- a/src/kudu/tablet/delta_tracker.cc
+++ b/src/kudu/tablet/delta_tracker.cc
@@ -17,25 +17,47 @@
#include "kudu/tablet/delta_tracker.h"
-#include <boost/range/adaptor/reversed.hpp>
-#include <glog/stl_logging.h>
+#include <algorithm>
#include <mutex>
+#include <ostream>
#include <set>
-#include <utility>
+#include <string>
+#include <boost/range/adaptor/reversed.hpp>
+#include <glog/logging.h>
+#include <glog/stl_logging.h>
+
+#include "kudu/cfile/cfile_util.h"
+#include "kudu/common/iterator.h"
+#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
+#include "kudu/gutil/basictypes.h"
+#include "kudu/gutil/casts.h"
#include "kudu/gutil/strings/join.h"
-#include "kudu/gutil/strings/strip.h"
#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/delta_applier.h"
-#include "kudu/tablet/delta_compaction.h"
#include "kudu/tablet/delta_iterator_merger.h"
+#include "kudu/tablet/delta_stats.h"
#include "kudu/tablet/delta_store.h"
#include "kudu/tablet/deltafile.h"
-#include "kudu/tablet/diskrowset.h"
+#include "kudu/tablet/deltamemstore.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/tablet/rowset.h"
+#include "kudu/tablet/rowset_metadata.h"
#include "kudu/tablet/tablet.pb.h"
+#include "kudu/tablet/tablet_metadata.h"
+#include "kudu/util/logging.h"
#include "kudu/util/status.h"
+#include "kudu/util/make_shared.h"
+#include "kudu/util/monotime.h"
namespace kudu {
+
+class RowChangeList;
+
namespace tablet {
using cfile::ReaderOptions;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/delta_tracker.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/delta_tracker.h b/src/kudu/tablet/delta_tracker.h
index 3c66230..b576011 100644
--- a/src/kudu/tablet/delta_tracker.h
+++ b/src/kudu/tablet/delta_tracker.h
@@ -17,39 +17,56 @@
#ifndef KUDU_TABLET_DELTATRACKER_H
#define KUDU_TABLET_DELTATRACKER_H
-#include <gtest/gtest_prod.h>
+#include <cstddef>
+#include <cstdint>
#include <memory>
#include <string>
#include <vector>
-#include "kudu/common/iterator.h"
+#include <gtest/gtest_prod.h>
+
#include "kudu/common/rowid.h"
-#include "kudu/consensus/metadata.pb.h"
+#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/macros.h"
#include "kudu/tablet/cfile_set.h"
+#include "kudu/tablet/delta_key.h"
#include "kudu/tablet/delta_store.h"
#include "kudu/tablet/tablet_mem_trackers.h"
#include "kudu/util/atomic.h"
+#include "kudu/util/locks.h"
+#include "kudu/util/mutex.h"
#include "kudu/util/status.h"
namespace kudu {
-class MemTracker;
+class BlockId;
+class ColumnwiseIterator;
+class MonoTime;
+class RowChangeList;
+class Schema;
+class Timestamp;
+struct ColumnId;
namespace consensus {
class OpId;
}
+namespace fs {
+class WritableBlock;
+}
+
namespace log {
class LogAnchorRegistry;
}
namespace tablet {
-class DeltaMemStore;
class DeltaFileReader;
+class DeltaMemStore;
+class MvccSnapshot;
class OperationResultPB;
-class MemStoreTargetPB;
+class RowSetMetadata;
+class RowSetMetadataUpdate;
struct ProbeStats;
// The DeltaTracker is the part of a DiskRowSet which is responsible for
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltafile-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltafile-test.cc b/src/kudu/tablet/deltafile-test.cc
index 6bedbb1..ab524a6 100644
--- a/src/kudu/tablet/deltafile-test.cc
+++ b/src/kudu/tablet/deltafile-test.cc
@@ -15,18 +15,43 @@
// specific language governing permissions and limitations
// under the License.
+#include <algorithm>
+#include <cstddef>
+#include <cstdint>
#include <memory>
+#include <ostream>
+#include <string>
+#include <vector>
#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+#include <glog/logging.h>
#include <gtest/gtest.h>
#include "kudu/cfile/cfile_util.h"
+#include "kudu/common/columnblock.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/rowid.h"
#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/fs/block_manager.h"
#include "kudu/fs/fs-test-util.h"
-#include "kudu/gutil/strings/strcat.h"
+#include "kudu/fs/fs_manager.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/port.h"
+#include "kudu/tablet/delta_key.h"
+#include "kudu/tablet/delta_stats.h"
#include "kudu/tablet/delta_store.h"
-#include "kudu/tablet/delta_tracker.h"
#include "kudu/tablet/deltafile.h"
+#include "kudu/tablet/mutation.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/memory/arena.h"
+#include "kudu/util/status.h"
+#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
DECLARE_int32(deltafile_default_block_size);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltafile.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltafile.cc b/src/kudu/tablet/deltafile.cc
index f96903e..9a822fa 100644
--- a/src/kudu/tablet/deltafile.cc
+++ b/src/kudu/tablet/deltafile.cc
@@ -17,24 +17,38 @@
#include "kudu/tablet/deltafile.h"
-#include <arpa/inet.h>
+#include <algorithm>
#include <memory>
+#include <ostream>
#include <string>
-#include "kudu/common/wire_protocol.h"
+#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
+
#include "kudu/cfile/binary_plain_block.h"
-#include "kudu/cfile/block_encodings.h"
#include "kudu/cfile/block_handle.h"
#include "kudu/cfile/cfile_reader.h"
+#include "kudu/cfile/cfile_util.h"
#include "kudu/cfile/cfile_writer.h"
+#include "kudu/common/columnblock.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/scan_spec.h"
+#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/common/types.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/mathlimits.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/tablet/mutation.h"
#include "kudu/tablet/mvcc.h"
-#include "kudu/util/coding-inl.h"
+#include "kudu/tablet/tablet.pb.h"
#include "kudu/util/compression/compression_codec.h"
#include "kudu/util/flag_tags.h"
-#include "kudu/util/hexdump.h"
+#include "kudu/util/memory/arena.h"
#include "kudu/util/pb_util.h"
#include "kudu/util/trace.h"
@@ -55,6 +69,8 @@ using std::vector;
namespace kudu {
+class MemTracker;
+
using cfile::BinaryPlainBlockDecoder;
using cfile::BlockPointer;
using cfile::CFileReader;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltafile.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltafile.h b/src/kudu/tablet/deltafile.h
index ada35a5..43c5301 100644
--- a/src/kudu/tablet/deltafile.h
+++ b/src/kudu/tablet/deltafile.h
@@ -17,37 +17,61 @@
#ifndef KUDU_TABLET_DELTAFILE_H
#define KUDU_TABLET_DELTAFILE_H
+#include <cstddef>
+#include <cstdint>
#include <deque>
#include <memory>
#include <string>
#include <vector>
+#include <glog/logging.h>
+
+#include "kudu/cfile/binary_plain_block.h"
#include "kudu/cfile/block_handle.h"
+#include "kudu/cfile/block_pointer.h"
#include "kudu/cfile/cfile_reader.h"
#include "kudu/cfile/cfile_writer.h"
#include "kudu/cfile/index_btree.h"
-#include "kudu/common/columnblock.h"
-#include "kudu/common/schema.h"
-#include "kudu/fs/block_id.h"
+#include "kudu/common/rowid.h"
#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/macros.h"
-#include "kudu/tablet/deltamemstore.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/delta_key.h"
-#include "kudu/tablet/tablet.pb.h"
+#include "kudu/tablet/delta_stats.h"
+#include "kudu/tablet/delta_store.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/once.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
namespace kudu {
+class Arena;
+class BlockId;
+class ColumnBlock;
+class FsManager;
+class MemTracker;
+class RowChangeList;
class ScanSpec;
+class Schema;
+class SelectionVector;
+struct ColumnId;
namespace cfile {
-class BinaryPlainBlockDecoder;
+struct ReaderOptions;
} // namespace cfile
+namespace fs {
+class ReadableBlock;
+class ScopedWritableBlockCloser;
+class WritableBlock;
+} // namespace fs
+
namespace tablet {
-class DeltaFileIterator;
-class DeltaKey;
+class Mutation;
template<DeltaType Type>
struct ApplyingVisitor;
template<DeltaType Type>
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltamemstore-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltamemstore-test.cc b/src/kudu/tablet/deltamemstore-test.cc
index a523c31..6b77da6 100644
--- a/src/kudu/tablet/deltamemstore-test.cc
+++ b/src/kudu/tablet/deltamemstore-test.cc
@@ -15,21 +15,50 @@
// specific language governing permissions and limitations
// under the License.
-#include <gtest/gtest.h>
+#include <algorithm>
+#include <cstdint>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
#include <memory>
-#include <stdlib.h>
+#include <ostream>
+#include <string>
#include <unordered_set>
+#include <utility>
+#include <vector>
+
+#include <gflags/gflags.h>
+#include <glog/logging.h>
+#include <gtest/gtest.h>
+#include "kudu/clock/clock.h"
#include "kudu/clock/logical_clock.h"
+#include "kudu/common/columnblock.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/row_changelist.h"
#include "kudu/common/schema.h"
-#include "kudu/consensus/consensus.pb.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/common/types.h"
+#include "kudu/consensus/log_anchor_registry.h"
+#include "kudu/consensus/opid.pb.h"
#include "kudu/consensus/opid_util.h"
+#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
#include "kudu/gutil/casts.h"
#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/ref_counted.h"
+#include "kudu/tablet/delta_stats.h"
+#include "kudu/tablet/delta_store.h"
#include "kudu/tablet/deltafile.h"
#include "kudu/tablet/deltamemstore.h"
#include "kudu/tablet/mutation.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/mem_tracker.h"
+#include "kudu/util/memory/arena.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
#include "kudu/util/stopwatch.h"
#include "kudu/util/test_macros.h"
#include "kudu/util/test_util.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltamemstore.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltamemstore.cc b/src/kudu/tablet/deltamemstore.cc
index 3cd9939..d929fa8 100644
--- a/src/kudu/tablet/deltamemstore.cc
+++ b/src/kudu/tablet/deltamemstore.cc
@@ -15,17 +15,29 @@
// specific language governing permissions and limitations
// under the License.
+#include <cstring>
+#include <ostream>
#include <utility>
-#include "kudu/consensus/consensus.pb.h"
+#include <glog/logging.h>
+
+#include "kudu/common/columnblock.h"
+#include "kudu/common/row.h"
+#include "kudu/common/row_changelist.h"
+#include "kudu/common/rowblock.h"
+#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/common/types.h"
+#include "kudu/consensus/opid.pb.h"
#include "kudu/gutil/port.h"
+#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/deltafile.h"
#include "kudu/tablet/deltamemstore.h"
-#include "kudu/tablet/delta_tracker.h"
+#include "kudu/tablet/mutation.h"
#include "kudu/tablet/mvcc.h"
-#include "kudu/tablet/tablet.h"
-#include "kudu/util/hexdump.h"
-#include "kudu/util/mem_tracker.h"
+#include "kudu/util/debug-util.h"
+#include "kudu/util/memcmpable_varint.h"
+#include "kudu/util/memory/memory.h"
#include "kudu/util/status.h"
namespace kudu {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/deltamemstore.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/deltamemstore.h b/src/kudu/tablet/deltamemstore.h
index 240f3c6..228e6a5 100644
--- a/src/kudu/tablet/deltamemstore.h
+++ b/src/kudu/tablet/deltamemstore.h
@@ -17,37 +17,51 @@
#ifndef KUDU_TABLET_DELTAMEMSTORE_H
#define KUDU_TABLET_DELTAMEMSTORE_H
+#include <cstddef>
+#include <cstdint>
#include <deque>
-#include <gtest/gtest_prod.h>
#include <memory>
#include <string>
#include <vector>
-#include "kudu/common/columnblock.h"
-#include "kudu/common/rowblock.h"
-#include "kudu/common/schema.h"
+#include <gtest/gtest_prod.h>
+
+#include "kudu/common/rowid.h"
#include "kudu/consensus/log_anchor_registry.h"
#include "kudu/gutil/atomicops.h"
#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
#include "kudu/tablet/concurrent_btree.h"
#include "kudu/tablet/delta_key.h"
-#include "kudu/tablet/delta_tracker.h"
#include "kudu/tablet/delta_stats.h"
+#include "kudu/tablet/delta_store.h"
#include "kudu/tablet/mvcc.h"
#include "kudu/util/atomic.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/memory/arena.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
namespace kudu {
+class ColumnBlock;
class MemTracker;
+class MemoryTrackingBufferAllocator;
class RowChangeList;
+class ScanSpec;
+class Schema;
+class SelectionVector;
+class Timestamp;
+struct ColumnId;
+
+namespace consensus {
+class OpId;
+}
namespace tablet {
class DeltaFileWriter;
-class DeltaStats;
-class DMSIterator;
class Mutation;
struct DMSTreeTraits : public btree::BTreeTraits {
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/diskrowset-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/diskrowset-test.cc b/src/kudu/tablet/diskrowset-test.cc
index 4520af0..67ce374 100644
--- a/src/kudu/tablet/diskrowset-test.cc
+++ b/src/kudu/tablet/diskrowset-test.cc
@@ -15,20 +15,49 @@
// specific language governing permissions and limitations
// under the License.
+#include <algorithm>
+#include <cstdint>
+#include <memory>
+#include <ostream>
+#include <string>
+#include <type_traits>
+#include <unordered_set>
+#include <vector>
+
#include <gflags/gflags.h>
+#include <gflags/gflags_declare.h>
#include <glog/logging.h>
#include <gtest/gtest.h>
-#include <memory>
-#include <time.h>
+#include "kudu/clock/clock.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/iterator.h"
#include "kudu/common/row.h"
+#include "kudu/common/row_changelist.h"
#include "kudu/common/schema.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/fs/block_id.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/move.h"
+#include "kudu/gutil/ref_counted.h"
#include "kudu/gutil/stringprintf.h"
-#include "kudu/tablet/delta_compaction.h"
-#include "kudu/tablet/diskrowset.h"
+#include "kudu/gutil/strings/stringpiece.h"
+#include "kudu/tablet/compaction.h"
+#include "kudu/tablet/delta_key.h"
+#include "kudu/tablet/delta_store.h"
+#include "kudu/tablet/delta_tracker.h"
+#include "kudu/tablet/deltamemstore.h"
#include "kudu/tablet/diskrowset-test-base.h"
+#include "kudu/tablet/diskrowset.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/tablet/rowset.h"
+#include "kudu/tablet/rowset_metadata.h"
#include "kudu/tablet/tablet-test-util.h"
-#include "kudu/util/env.h"
+#include "kudu/tablet/tablet.h"
+#include "kudu/tablet/tablet.pb.h"
+#include "kudu/util/bloom_filter.h"
+#include "kudu/util/faststring.h"
+#include "kudu/util/slice.h"
#include "kudu/util/status.h"
#include "kudu/util/stopwatch.h"
#include "kudu/util/test_macros.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/diskrowset.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/diskrowset.cc b/src/kudu/tablet/diskrowset.cc
index d63aab2..f4f015b 100644
--- a/src/kudu/tablet/diskrowset.cc
+++ b/src/kudu/tablet/diskrowset.cc
@@ -20,31 +20,41 @@
#include <algorithm>
#include <map>
#include <mutex>
-#include <utility>
+#include <ostream>
#include <vector>
-#include <boost/optional.hpp>
+#include <boost/optional/optional.hpp>
+#include <gflags/gflags.h>
#include <glog/logging.h>
#include <glog/stl_logging.h>
#include "kudu/cfile/bloomfile.h"
+#include "kudu/cfile/cfile_util.h"
#include "kudu/cfile/cfile_writer.h"
-#include "kudu/cfile/type_encodings.h"
#include "kudu/common/generic_iterators.h"
#include "kudu/common/iterator.h"
+#include "kudu/common/rowblock.h"
#include "kudu/common/schema.h"
-#include "kudu/consensus/log_anchor_registry.h"
+#include "kudu/common/timestamp.h"
+#include "kudu/common/types.h"
+#include "kudu/fs/fs_manager.h"
#include "kudu/gutil/gscoped_ptr.h"
-#include "kudu/gutil/stl_util.h"
#include "kudu/tablet/cfile_set.h"
#include "kudu/tablet/compaction.h"
#include "kudu/tablet/delta_compaction.h"
+#include "kudu/tablet/delta_stats.h"
#include "kudu/tablet/delta_store.h"
+#include "kudu/tablet/deltafile.h"
#include "kudu/tablet/multi_column_writer.h"
+#include "kudu/tablet/mutation.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/util/compression/compression.pb.h"
#include "kudu/util/debug/trace_event.h"
#include "kudu/util/flag_tags.h"
#include "kudu/util/locks.h"
#include "kudu/util/logging.h"
+#include "kudu/util/monotime.h"
+#include "kudu/util/slice.h"
#include "kudu/util/status.h"
DEFINE_int32(tablet_delta_store_minor_compact_max, 1000,
@@ -62,6 +72,11 @@ DEFINE_int32(default_composite_key_index_block_size_bytes, 4096,
TAG_FLAG(default_composite_key_index_block_size_bytes, experimental);
namespace kudu {
+
+namespace consensus {
+class OpId;
+}
+
namespace tablet {
using cfile::BloomFileWriter;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/diskrowset.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/diskrowset.h b/src/kudu/tablet/diskrowset.h
index c32155e..919e8fc 100644
--- a/src/kudu/tablet/diskrowset.h
+++ b/src/kudu/tablet/diskrowset.h
@@ -22,37 +22,54 @@
#ifndef KUDU_TABLET_DISKROWSET_H_
#define KUDU_TABLET_DISKROWSET_H_
-#include <gtest/gtest_prod.h>
+#include <cstddef>
+#include <cstdint>
#include <memory>
#include <mutex>
#include <string>
#include <vector>
-#include "kudu/common/row.h"
+#include <glog/logging.h>
+#include <gtest/gtest_prod.h>
+
+#include "kudu/common/common.pb.h"
+#include "kudu/common/rowid.h"
#include "kudu/common/schema.h"
+#include "kudu/fs/block_id.h"
#include "kudu/fs/block_manager.h"
+#include "kudu/fs/fs_manager.h"
+#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/macros.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/strings/substitute.h"
#include "kudu/tablet/delta_key.h"
-#include "kudu/tablet/rowset_metadata.h"
+#include "kudu/tablet/delta_tracker.h"
#include "kudu/tablet/rowset.h"
+#include "kudu/tablet/rowset_metadata.h"
#include "kudu/tablet/tablet_mem_trackers.h"
-#include "kudu/util/atomic.h"
+#include "kudu/tablet/tablet_metadata.h"
#include "kudu/util/bloom_filter.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/locks.h"
-#include "kudu/util/mem_tracker.h"
+#include "kudu/util/status.h"
namespace kudu {
-class FsManager;
-class MemTracker;
+class MonoTime;
class RowBlock;
class RowChangeList;
+class RowwiseIterator;
+class Timestamp;
namespace cfile {
class BloomFileWriter;
class CFileWriter;
}
+namespace consensus {
+class OpId;
+}
+
namespace log {
class LogAnchorRegistry;
}
@@ -60,12 +77,13 @@ class LogAnchorRegistry;
namespace tablet {
class CFileSet;
+class CompactionInput;
class DeltaFileWriter;
class DeltaStats;
-class DeltaTracker;
class HistoryGcOpts;
class MultiColumnWriter;
class Mutation;
+class MvccSnapshot;
class OperationResultPB;
class DiskRowSetWriter {
@@ -261,7 +279,6 @@ class RollingDiskRowSetWriter {
////////////////////////////////////////////////////////////
class MajorDeltaCompaction;
-class RowSetColumnUpdater;
class DiskRowSet : public RowSet {
public:
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/lock_manager-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/lock_manager-test.cc b/src/kudu/tablet/lock_manager-test.cc
index e61e127..5522640 100644
--- a/src/kudu/tablet/lock_manager-test.cc
+++ b/src/kudu/tablet/lock_manager-test.cc
@@ -16,15 +16,25 @@
// under the License.
#include <algorithm>
-#include <glog/logging.h>
-#include <gtest/gtest.h>
+#include <cstdint>
#include <memory>
#include <mutex>
+#include <ostream>
+#include <string>
#include <vector>
-#include "kudu/gutil/gscoped_ptr.h"
+#include <gflags/gflags.h>
+#include <glog/logging.h>
+#include <gtest/gtest.h>
+
+#include "kudu/gutil/macros.h"
+#include "kudu/gutil/ref_counted.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/tablet/lock_manager.h"
#include "kudu/util/env.h"
+#include "kudu/util/make_shared.h"
+#include "kudu/util/slice.h"
+#include "kudu/util/status.h"
#include "kudu/util/stopwatch.h"
#include "kudu/util/test_util.h"
#include "kudu/util/thread.h"
@@ -39,6 +49,9 @@ DEFINE_int32(num_iterations, 1000, "number of iterations per client thread");
namespace kudu {
namespace tablet {
+class LockEntry;
+class TransactionState;
+
static const TransactionState* kFakeTransaction =
reinterpret_cast<TransactionState*>(0xdeadbeef);
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/lock_manager.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/lock_manager.cc b/src/kudu/tablet/lock_manager.cc
index 2bd2b88..5b18135 100644
--- a/src/kudu/tablet/lock_manager.cc
+++ b/src/kudu/tablet/lock_manager.cc
@@ -17,17 +17,23 @@
#include "kudu/tablet/lock_manager.h"
-#include <glog/logging.h>
+#include <cstdint>
#include <mutex>
-#include <semaphore.h>
+#include <ostream>
#include <string>
+#include <glog/logging.h>
+
+#include "kudu/gutil/atomicops.h"
#include "kudu/gutil/dynamic_annotations.h"
#include "kudu/gutil/gscoped_ptr.h"
#include "kudu/gutil/hash/city.h"
+#include "kudu/gutil/port.h"
#include "kudu/gutil/walltime.h"
+#include "kudu/util/faststring.h"
#include "kudu/util/locks.h"
#include "kudu/util/logging.h"
+#include "kudu/util/monotime.h"
#include "kudu/util/semaphore.h"
#include "kudu/util/trace.h"
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/lock_manager.h
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/lock_manager.h b/src/kudu/tablet/lock_manager.h
index 731a897..27e9af5 100644
--- a/src/kudu/tablet/lock_manager.h
+++ b/src/kudu/tablet/lock_manager.h
@@ -17,13 +17,13 @@
#ifndef KUDU_TABLET_LOCK_MANAGER_H
#define KUDU_TABLET_LOCK_MANAGER_H
+#include <cstddef>
+
#include "kudu/gutil/macros.h"
-#include "kudu/gutil/move.h"
#include "kudu/util/slice.h"
namespace kudu { namespace tablet {
-class LockManager;
class LockTable;
class LockEntry;
class TransactionState;
http://git-wip-us.apache.org/repos/asf/kudu/blob/0f6dcf83/src/kudu/tablet/major_delta_compaction-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/major_delta_compaction-test.cc b/src/kudu/tablet/major_delta_compaction-test.cc
index a3e4299..e97d6e7 100644
--- a/src/kudu/tablet/major_delta_compaction-test.cc
+++ b/src/kudu/tablet/major_delta_compaction-test.cc
@@ -15,23 +15,32 @@
// specific language governing permissions and limitations
// under the License.
-#include <gflags/gflags.h>
-#include <glog/logging.h>
-#include <gtest/gtest.h>
+#include <algorithm>
+#include <cstdint>
#include <memory>
+#include <ostream>
+#include <string>
#include <unordered_set>
+#include <vector>
+
+#include <glog/logging.h>
+#include <gtest/gtest.h>
-#include "kudu/clock/logical_clock.h"
-#include "kudu/common/generic_iterators.h"
+#include "kudu/common/common.pb.h"
+#include "kudu/common/iterator.h"
#include "kudu/common/partial_row.h"
+#include "kudu/common/schema.h"
+#include "kudu/gutil/gscoped_ptr.h"
+#include "kudu/gutil/port.h"
+#include "kudu/gutil/stringprintf.h"
#include "kudu/gutil/strings/substitute.h"
-#include "kudu/gutil/strings/util.h"
-#include "kudu/tablet/cfile_set.h"
-#include "kudu/tablet/delta_compaction.h"
-#include "kudu/tablet/diskrowset-test-base.h"
#include "kudu/tablet/local_tablet_writer.h"
+#include "kudu/tablet/mvcc.h"
+#include "kudu/tablet/rowset.h"
#include "kudu/tablet/tablet-test-util.h"
-#include "kudu/util/test_util.h"
+#include "kudu/tablet/tablet.h"
+#include "kudu/util/status.h"
+#include "kudu/util/test_macros.h"
using std::shared_ptr;
using std::string;