Adar Dembo has uploaded this change for review. ( http://gerrit.cloudera.org:8080/8376
Change subject: fs: defer failure from metadata load to bootstrap when data dir is missing ...................................................................... fs: defer failure from metadata load to bootstrap when data dir is missing An upcoming patch adds CLI tool actions to add and remove data directories. When a data dir is removed, all tablets with data on it will fail. Today that failure manifests as a FindOrDie in DataDirGroup::FromPB; we need to make that a little bit more graceful. This patch modifies the DataDirGroup FromPB/CopyToPB methods to return a failure when a data dir is missing. It further changes TabletMetadata to treat such failures as non-fatal, and adds checks to TabletBootstrap so that the failures manifest there instead. No tests in this patch because: 1. Andrew is already working on tablet-level tests for failed disks, and 2. The CLI tool patch adds coverage at the itest-level. Change-Id: I1e8d5697c2bb08287cce11fbdab6fb8d6e37d1ad --- M src/kudu/fs/block_manager-stress-test.cc M src/kudu/fs/block_manager-test.cc M src/kudu/fs/data_dirs-test.cc M src/kudu/fs/data_dirs.cc M src/kudu/fs/data_dirs.h M src/kudu/fs/error_manager.h M src/kudu/fs/log_block_manager-test.cc M src/kudu/tablet/tablet_bootstrap.cc M src/kudu/tablet/tablet_metadata.cc M src/kudu/tserver/tablet_copy_client.cc M src/kudu/tserver/ts_tablet_manager.cc 11 files changed, 128 insertions(+), 70 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/76/8376/1 -- To view, visit http://gerrit.cloudera.org:8080/8376 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I1e8d5697c2bb08287cce11fbdab6fb8d6e37d1ad Gerrit-Change-Number: 8376 Gerrit-PatchSet: 1 Gerrit-Owner: Adar Dembo <a...@cloudera.com>