Andrew Wong has posted comments on this change.

Change subject: open FS layout in presence of disk failure
......................................................................


Patch Set 3:

(12 comments)

http://gerrit.cloudera.org:8080/#/c/7784/3//COMMIT_MSG
Commit Message:

PS3, Line 15: failsto
> fails to
Done


PS3, Line 15: all each
> just "each"
Done


PS3, Line 15: failsto
> fails to
Done


PS3, Line 15: all
> s/all//
Done


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/block_manager_util.h
File src/kudu/fs/block_manager_util.h:

PS3, Line 57: not OK()
> 1. Why not just return an error?
1. Errors here would be ignored anyway. By adding this to the contract, we 
don't have to dirty the call-site with disk-handling code and we can keep the 
error handling (i.e. setting health_status_) internal.

2. Done


PS3, Line 88: Status
> nit: const Status& ?
Done


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/data_dirs-test.cc
File src/kudu/fs/data_dirs-test.cc:

PS3, Line 244:   ASSERT_DEATH({
             :     dd_manager_->MarkDataDirFailed(kNumDirs - 1);
             :   }, ".*All data dirs have failed");
> I still don't like this change; I prefer that "library code" like the Direc
Done


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/data_dirs.cc
File src/kudu/fs/data_dirs.cc:

Line 385:       return Status::IOError("Could not create directory manager with 
disks failed");
> Maybe include root.second in the error message?
Done


Line 607:         MarkDataDirFailed(uuid_idx, refresh_status.ToString());
> As future cleanup, it would be nice if MarkDataDirFailed() took a Status ra
Fair point. I'll add a TODO in MarkDataDirFailed.


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/data_dirs.h
File src/kudu/fs/data_dirs.h:

PS3, Line 53: typedef std::pair<std::string, Status> CanonicalizedRoot;
> I think it would be easier to understand the code that uses this if it was 
Done


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/fs_manager.h
File src/kudu/fs/fs_manager.h:

PS3, Line 302: Returned values
> This comment is a bit confusing. I think it would make more sense to say it
Done


http://gerrit.cloudera.org:8080/#/c/7784/3/src/kudu/fs/log_block_manager.cc
File src/kudu/fs/log_block_manager.cc:

Line 1592:     if (dd_manager_->IsDataDirFailed(uuid_idx)) {
> If we stored the status passed to us in MarkDataDirFailed, we could return 
Added TODOs here and in MarkDataDirFailed(). I also wouldn't mind putting them 
in this patch, but for now, TODOs.


-- 
To view, visit http://gerrit.cloudera.org:8080/7784
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib2a1c824526ed52a6b90ddfbc735cecc4c491118
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Andrew Wong <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: David Ribeiro Alves <[email protected]>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <[email protected]>
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: Yes

Reply via email to