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/09/14 03:27:14 UTC

[2/2] kudu git commit: rename suicide_on_eio flag to crash_on_eio

rename suicide_on_eio flag to crash_on_eio

The name `suicide_on_eio` seems a bit controversial/insensitive. As we
move forward in documenting its usage with disk failures, it's probably
best rename it.

Change-Id: I6c83156865b0f8ac80a20701558119ace6c05399
Reviewed-on: http://gerrit.cloudera.org:8080/7994
Reviewed-by: Adar Dembo <ad...@cloudera.com>
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/eed74ee6
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/eed74ee6
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/eed74ee6

Branch: refs/heads/master
Commit: eed74ee6c640221b050fe188b5473f95366ac0e2
Parents: 6fef9ca
Author: Andrew Wong <aw...@cloudera.com>
Authored: Thu Sep 7 01:54:37 2017 -0700
Committer: Adar Dembo <ad...@cloudera.com>
Committed: Thu Sep 14 03:26:50 2017 +0000

----------------------------------------------------------------------
 docs/release_notes.adoc                          |  2 +-
 src/kudu/fs/block_manager-test.cc                |  4 ++--
 src/kudu/fs/data_dirs-test.cc                    |  4 ++--
 src/kudu/fs/fs_manager-test.cc                   |  6 +++---
 src/kudu/fs/log_block_manager-test.cc            |  4 ++--
 src/kudu/integration-tests/disk_failure-itest.cc |  2 +-
 src/kudu/util/env-test.cc                        |  4 ++--
 src/kudu/util/env_posix.cc                       | 10 +++++-----
 8 files changed, 18 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/docs/release_notes.adoc
----------------------------------------------------------------------
diff --git a/docs/release_notes.adoc b/docs/release_notes.adoc
index 9547186..d033e35 100644
--- a/docs/release_notes.adoc
+++ b/docs/release_notes.adoc
@@ -66,7 +66,7 @@
   startup. This feature is experimental; by default, Kudu will crash if it
   experiences a disk failure. When enabled, tablets with any data on the failed
   disk will not be opened and will be replicated as needed. To enable this, set
-  the `--suicide_on_eio` flag to `false`. Additionally, there is a configurable
+  the `--crash_on_eio` flag to `false`. Additionally, there is a configurable
   tradeoff between a newly added tablet's tolerance to disk failures and its
   parallelization of I/O via the `--fs_target_data_dirs_per_tablet` flag.
   Tablets that are spread across fewer disks are less likely to be affected by a

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/fs/block_manager-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/fs/block_manager-test.cc b/src/kudu/fs/block_manager-test.cc
index 91fd210..0ffd69b 100644
--- a/src/kudu/fs/block_manager-test.cc
+++ b/src/kudu/fs/block_manager-test.cc
@@ -76,7 +76,7 @@ DECLARE_int32(fs_data_dirs_full_disk_cache_seconds);
 DECLARE_int32(fs_target_data_dirs_per_tablet);
 DECLARE_string(block_manager);
 DECLARE_double(env_inject_eio);
-DECLARE_bool(suicide_on_eio);
+DECLARE_bool(crash_on_eio);
 
 // Generic block manager metrics.
 METRIC_DECLARE_gauge_uint64(block_manager_blocks_open_reading);
@@ -870,7 +870,7 @@ TYPED_TEST(BlockManagerTest, TestMetadataOkayDespiteFailure) {
   FLAGS_log_container_preallocate_bytes = 8 * 1024;
 
   // Force some file operations to fail.
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   FLAGS_env_inject_eio = 0.1;
 
   // Compact log block manager metadata aggressively at startup; injected

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/fs/data_dirs-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/fs/data_dirs-test.cc b/src/kudu/fs/data_dirs-test.cc
index 8f22778..c6dd144 100644
--- a/src/kudu/fs/data_dirs-test.cc
+++ b/src/kudu/fs/data_dirs-test.cc
@@ -50,7 +50,7 @@ using std::vector;
 using std::unique_ptr;
 using strings::Substitute;
 
-DECLARE_bool(suicide_on_eio);
+DECLARE_bool(crash_on_eio);
 DECLARE_double(env_inject_eio);
 DECLARE_int32(fs_data_dirs_full_disk_cache_seconds);
 DECLARE_int32(fs_target_data_dirs_per_tablet);
@@ -395,7 +395,7 @@ TEST_F(DataDirManagerTest, TestOpenWithFailedDirs) {
       DataDirManagerOptions(), &dd_manager_));
 
   // Kill the first non-metadata directory.
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   FLAGS_env_inject_eio = 1.0;
   FLAGS_env_inject_eio_globs = JoinPathSegments(test_roots_[1], "**");
 

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/fs/fs_manager-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/fs/fs_manager-test.cc b/src/kudu/fs/fs_manager-test.cc
index 9612826..beba6f1 100644
--- a/src/kudu/fs/fs_manager-test.cc
+++ b/src/kudu/fs/fs_manager-test.cc
@@ -58,7 +58,7 @@ using std::unordered_set;
 using std::vector;
 using strings::Substitute;
 
-DECLARE_bool(suicide_on_eio);
+DECLARE_bool(crash_on_eio);
 DECLARE_double(env_inject_eio);
 DECLARE_string(env_inject_eio_globs);
 DECLARE_string(umask);
@@ -271,7 +271,7 @@ TEST_F(FsManagerTestBase, TestCreateWithFailedDirs) {
   // canonicalization by failing the dirname.
   vector<string> data_roots = JoinPathSegmentsV(data_paths, "root");
 
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   FLAGS_env_inject_eio = 1.0;
 
   // Fail a directory, avoiding the metadata directory.
@@ -296,7 +296,7 @@ TEST_F(FsManagerTestBase, TestOpenWithFailedDirs) {
   ASSERT_OK(fs_manager()->CreateInitialFileSystemLayout());
 
   // Now fail one of the directories.
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   FLAGS_env_inject_eio = 1.0;
   FLAGS_env_inject_eio_globs = JoinPathSegments(Substitute("$0,$0", data_paths[1]), "**");
   ReinitFsManager(wal_path, data_roots);

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/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 9401758..a69f026 100644
--- a/src/kudu/fs/log_block_manager-test.cc
+++ b/src/kudu/fs/log_block_manager-test.cc
@@ -72,7 +72,7 @@ using std::vector;
 using strings::Substitute;
 
 DECLARE_bool(cache_force_single_shard);
-DECLARE_bool(suicide_on_eio);
+DECLARE_bool(crash_on_eio);
 DECLARE_double(env_inject_eio);
 DECLARE_double(log_container_excess_space_before_cleanup_fraction);
 DECLARE_double(log_container_live_metadata_before_compact_ratio);
@@ -1329,7 +1329,7 @@ TEST_F(LogBlockManagerTest, TestOpenWithFailedDirectories) {
   bm_.reset(CreateBlockManager(nullptr));
 
   // Fail one of the directories, chosen randomly.
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   FLAGS_env_inject_eio = 1;
   int failed_idx = Random(SeedRandom()).Next() % kNumDirs;
   FLAGS_env_inject_eio_globs = JoinPathSegments(test_dirs[failed_idx], "**");

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/integration-tests/disk_failure-itest.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/disk_failure-itest.cc b/src/kudu/integration-tests/disk_failure-itest.cc
index cfa337d..a59f4a5 100644
--- a/src/kudu/integration-tests/disk_failure-itest.cc
+++ b/src/kudu/integration-tests/disk_failure-itest.cc
@@ -89,7 +89,7 @@ TEST_F(DiskFailureITest, TestFailDuringServerStartup) {
   vector<string> extra_flags = {
       Substitute("--env_inject_eio_globs=$0", JoinPathSegments(failed_dir, "**")),
       "--env_inject_eio=1.0",
-      "--suicide_on_eio=false",
+      "--crash_on_eio=false",
   };
   ts->mutable_flags()->insert(ts->mutable_flags()->begin(), extra_flags.begin(), extra_flags.end());
   ts->Shutdown();

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/util/env-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/util/env-test.cc b/src/kudu/util/env-test.cc
index a6d4294..6c30dce 100644
--- a/src/kudu/util/env-test.cc
+++ b/src/kudu/util/env-test.cc
@@ -66,7 +66,7 @@
 #include "kudu/util/test_util.h"
 
 DECLARE_bool(never_fsync);
-DECLARE_bool(suicide_on_eio);
+DECLARE_bool(crash_on_eio);
 DECLARE_double(env_inject_eio);
 DECLARE_int32(env_inject_short_read_bytes);
 DECLARE_int32(env_inject_short_write_bytes);
@@ -1046,7 +1046,7 @@ TEST_F(TestEnv, TestGetExtentMap) {
 
 TEST_F(TestEnv, TestInjectEIO) {
   // Use two files to fail with.
-  FLAGS_suicide_on_eio = false;
+  FLAGS_crash_on_eio = false;
   const string kTestRWPath1 = GetTestPath("test_env_rw_file1");
   unique_ptr<RWFile> rw1;
   ASSERT_OK(env_->NewRWFile(kTestRWPath1, &rw1));

http://git-wip-us.apache.org/repos/asf/kudu/blob/eed74ee6/src/kudu/util/env_posix.cc
----------------------------------------------------------------------
diff --git a/src/kudu/util/env_posix.cc b/src/kudu/util/env_posix.cc
index 3d45c13..9dd5e2b 100644
--- a/src/kudu/util/env_posix.cc
+++ b/src/kudu/util/env_posix.cc
@@ -73,8 +73,8 @@
 #include <linux/falloc.h>
 #include <linux/fiemap.h>
 #include <linux/fs.h>
-#include <linux/kernel.h>
 #include <linux/magic.h>
+#include <linux/sysinfo.h>
 #include <sys/ioctl.h>
 #include <sys/sysinfo.h>
 #include <sys/vfs.h>  // IWYU pragma: keep
@@ -168,12 +168,12 @@ DEFINE_bool(env_use_ioctl_hole_punch_on_xfs, true,
 TAG_FLAG(env_use_ioctl_hole_punch_on_xfs, advanced);
 TAG_FLAG(env_use_ioctl_hole_punch_on_xfs, experimental);
 
-DEFINE_bool(suicide_on_eio, true,
+DEFINE_bool(crash_on_eio, true,
             "Kill the process if an I/O operation results in EIO. If false, "
             "I/O resulting in EIOs will return the status IOError and leave "
             "error-handling up to the caller.");
-TAG_FLAG(suicide_on_eio, advanced);
-TAG_FLAG(suicide_on_eio, experimental);
+TAG_FLAG(crash_on_eio, advanced);
+TAG_FLAG(crash_on_eio, experimental);
 
 DEFINE_bool(never_fsync, false,
             "Never fsync() anything to disk. This is used by certain test cases to "
@@ -308,7 +308,7 @@ Status IOError(const std::string& context, int err_number) {
     case EOPNOTSUPP:
       return Status::NotSupported(context, ErrnoToString(err_number), err_number);
     case EIO:
-      if (FLAGS_suicide_on_eio) {
+      if (FLAGS_crash_on_eio) {
         // TODO(awong): This is very, very coarse-grained. A more comprehensive
         // approach is described in KUDU-616.
         LOG(FATAL) << "Fatal I/O error, context: " << context;