David Ribeiro Alves has posted comments on this change. Change subject: env: add RWFile::GetExtentMap for analyzing file extents ......................................................................
Patch Set 1: (10 comments) http://gerrit.cloudera.org:8080/#/c/6583/1/src/kudu/util/env-test.cc File src/kudu/util/env-test.cc: PS1, Line 896: LOG(INFO) how big can this get? maybe VLOG? PS1, Line 908: uint64_t found_offset = 0; : for (const auto& e : extents) { : if (e.second >= (fs_block_size * 3)) { : found_offset = e.first + fs_block_size; : break; : } : } : if (found_offset == 0) { : LOG(INFO) << "Couldn't find extent to split, skipping this part of the test"; : return; : } how likely is this to happen? are we sure we won't be skipping this test most of the time? PS1, Line 934: LOG(INFO) maybe VLOG? http://gerrit.cloudera.org:8080/#/c/6583/1/src/kudu/util/env.h File src/kudu/util/env.h: PS1, Line 587: // If the underlying filesystem does not support extents, map entries : // represent runs of adjacent fixed-size filesystem blocks instead. well in the apple case this does nothing, right? maybe elaborate a bit more? PS1, Line 589: typedef std::map<uint64_t, uint64_t> ExtentMap; I like this way of typedeffing method arguments, maybe we should add this to the guidelines or something http://gerrit.cloudera.org:8080/#/c/6583/1/src/kudu/util/env_posix.cc File src/kudu/util/env_posix.cc: PS1, Line 732: TRACE_EVENT1("io", "PosixRWFile::GetExtentMap", "path", filename_); why is this traceable? do we get extent maps online? PS1, Line 764: LOG(WARNING) << Substitute( : "Unexpected extent found at offset $0", fme[i].fe_logical); log fatal/log error? is the data returned by this method still useful if this happens? PS1, Line 767: bool inserted = InsertIfNotPresent(&extents, : fme[i].fe_logical, : fme[i].fe_length); we can get repeated extents? if not InsertOrDie? PS1, Line 771: // Two extents at the same logical offset? Shouldn't be possible. : LOG(WARNING) << Substitute( : "Multiple extents found at offset $0. Ignoring", : fme[i].fe_logical); same comment as the case above PS1, Line 776: \n why the \n? -- To view, visit http://gerrit.cloudera.org:8080/6583 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I35bd1bdb9e1a839af2ab95ea73b79217c1f4a2b3 Gerrit-PatchSet: 1 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: David Ribeiro Alves <dral...@apache.org> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Tidy Bot Gerrit-Reviewer: Todd Lipcon <t...@apache.org> Gerrit-HasComments: Yes