Hello Alexey Serbin, Kudu Jenkins, Bankim Bhavsar, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/17636 to look at the new patch set (#5). Change subject: [master] allow setting BlockCacheMetrics twice ...................................................................... [master] allow setting BlockCacheMetrics twice In some cases, the way we call Cache::SetMetrics() isn't threadsafe. Typically, we only call this once per cache, but this can be a useful call to repeat, e.g. if we're constructing a new server that instantiates its own metric entity but uses the same cache. This usually doesn't happen since most Caches are tied to a single server. However, the BlockCache is special in that it's a singleton, so every instantiation of a server in the same process will use the same cache. This was the cause of KUDU-2165, which was resolved by only allowing the first caller to set the metrics. While it prevented a race, this meant that subsequently started servers would not correctly register metrics. I have an upcoming patch that will start two servers from the same process -- effectively restarting a master after running a tablet copy from the same process as a means to automate the addition of a master to a cluster. To allow this, this patch adds an option to force the resetting of the cache metrics. Change-Id: I4bb9c6f382a26654f2d324676506441f370ffe61 --- M src/kudu/cfile/block_cache.cc M src/kudu/cfile/block_cache.h M src/kudu/master/master-test.cc M src/kudu/master/master.cc M src/kudu/master/master_options.cc M src/kudu/master/master_options.h M src/kudu/master/table_locations_cache.cc M src/kudu/util/cache-test.cc M src/kudu/util/cache.cc M src/kudu/util/cache.h M src/kudu/util/file_cache.cc M src/kudu/util/nvm_cache.cc M src/kudu/util/ttl_cache.h 13 files changed, 101 insertions(+), 18 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/36/17636/5 -- To view, visit http://gerrit.cloudera.org:8080/17636 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I4bb9c6f382a26654f2d324676506441f370ffe61 Gerrit-Change-Number: 17636 Gerrit-PatchSet: 5 Gerrit-Owner: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Bankim Bhavsar <ban...@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120)