You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by ad...@apache.org on 2017/06/24 02:52:56 UTC

[2/2] kudu git commit: Revert "KUDU-2052: disable hole repunching at startup on xfs filesystems"

Revert "KUDU-2052: disable hole repunching at startup on xfs filesystems"

With the proper fix for KUDU-2052 ready, we no longer need this workaround.

This reverts commit 410763afa61252fa8c7125f66429bad602db795a.

Change-Id: Ie36750f419574441c6e5d9dd10a0558eef8cdbe9
Reviewed-on: http://gerrit.cloudera.org:8080/7280
Reviewed-by: Todd Lipcon <to...@apache.org>
Tested-by: Kudu Jenkins


Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/c96d6680
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/c96d6680
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/c96d6680

Branch: refs/heads/master
Commit: c96d6680b004bdbec16b05b9ba21dc7314fa270c
Parents: ca8ed1d
Author: Adar Dembo <ad...@cloudera.com>
Authored: Fri Jun 23 16:36:51 2017 -0700
Committer: Adar Dembo <ad...@cloudera.com>
Committed: Sat Jun 24 02:52:36 2017 +0000

----------------------------------------------------------------------
 src/kudu/fs/log_block_manager-test.cc |  4 ----
 src/kudu/fs/log_block_manager.cc      | 14 +-------------
 src/kudu/tools/tool_action_fs.cc      |  6 ------
 3 files changed, 1 insertion(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/c96d6680/src/kudu/fs/log_block_manager-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/fs/log_block_manager-test.cc b/src/kudu/fs/log_block_manager-test.cc
index 334db10..f3f1cfe 100644
--- a/src/kudu/fs/log_block_manager-test.cc
+++ b/src/kudu/fs/log_block_manager-test.cc
@@ -46,7 +46,6 @@ using strings::Substitute;
 
 DECLARE_int64(block_manager_max_open_files);
 DECLARE_bool(cache_force_single_shard);
-DECLARE_bool(log_block_manager_disable_hole_repunching_on_xfs);
 DECLARE_double(log_container_excess_space_before_cleanup_fraction);
 DECLARE_double(log_container_live_metadata_before_compact_ratio);
 DECLARE_int64(log_container_max_blocks);
@@ -939,9 +938,6 @@ TEST_F(LogBlockManagerTest, TestRepairUnpunchedBlocks) {
   // preallocation buffer.
   FLAGS_log_container_preallocate_bytes = 0;
 
-  // Disable the KUDU-2052 workaround for the test.
-  FLAGS_log_block_manager_disable_hole_repunching_on_xfs = false;
-
   // Create one container.
   unique_ptr<WritableBlock> block;
   ASSERT_OK(bm_->CreateBlock(test_block_opts_, &block));

http://git-wip-us.apache.org/repos/asf/kudu/blob/c96d6680/src/kudu/fs/log_block_manager.cc
----------------------------------------------------------------------
diff --git a/src/kudu/fs/log_block_manager.cc b/src/kudu/fs/log_block_manager.cc
index 516f5e0..bc2ae7c 100644
--- a/src/kudu/fs/log_block_manager.cc
+++ b/src/kudu/fs/log_block_manager.cc
@@ -96,13 +96,6 @@ DEFINE_bool(log_block_manager_test_hole_punching, true,
 TAG_FLAG(log_block_manager_test_hole_punching, advanced);
 TAG_FLAG(log_block_manager_test_hole_punching, unsafe);
 
-DEFINE_bool(log_block_manager_disable_hole_repunching_on_xfs, true,
-            "Whether to disable hole repunching at startup of full containers "
-            "on XFS filesystems that consume excess space. This is a "
-            "workaround for KUDU-2052.");
-TAG_FLAG(log_block_manager_disable_hole_repunching_on_xfs, advanced);
-TAG_FLAG(log_block_manager_disable_hole_repunching_on_xfs, unsafe);
-
 METRIC_DEFINE_gauge_uint64(server, log_block_manager_bytes_under_management,
                            "Bytes Under Management",
                            kudu::MetricUnit::kBytes,
@@ -2005,12 +1998,7 @@ void LogBlockManager::OpenDataDir(DataDir* dir,
         // If the container is to be deleted outright, don't bother repunching
         // its blocks. The report entry remains, however, so it's clear that
         // there was a space discrepancy.
-        //
-        // KUDU-2052: hole punching is generally skipped on XFS due to
-        // pathologically slow fallocate() behavior.
-        if (container->live_blocks() &&
-            (dir->fs_type() != DataDirFsType::XFS ||
-             !FLAGS_log_block_manager_disable_hole_repunching_on_xfs)) {
+        if (container->live_blocks()) {
           need_repunching.insert(need_repunching.end(),
                                  dead_blocks.begin(), dead_blocks.end());
         }

http://git-wip-us.apache.org/repos/asf/kudu/blob/c96d6680/src/kudu/tools/tool_action_fs.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tools/tool_action_fs.cc b/src/kudu/tools/tool_action_fs.cc
index 615e88c..fc4ef59 100644
--- a/src/kudu/tools/tool_action_fs.cc
+++ b/src/kudu/tools/tool_action_fs.cc
@@ -72,12 +72,6 @@ using tablet::TabletMetadata;
 namespace {
 
 Status Check(const RunnerContext& /*context*/) {
-  // The symptom of KUDU-2052 is pathological slowness; we can tolerate that
-  // when checking the filesystem from the CLI.
-  CHECK_NE("", google::SetCommandLineOptionWithMode(
-      "log_block_manager_disable_hole_repunching_on_xfs", "false",
-      google::FlagSettingMode::SET_FLAGS_DEFAULT));
-
   FsManagerOpts opts;
   opts.read_only = !FLAGS_repair;
   FsManager fs_manager(Env::Default(), opts);