Hello Dan Burkert, Adar Dembo, Kudu Jenkins, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/7966 to look at the new patch set (#6). Change subject: KUDU-2134: Defer block transaction commit to the end of a tablet copy ...................................................................... KUDU-2134: Defer block transaction commit to the end of a tablet copy KUDU-2131 uncovered a regression that causes a tablet copy session to expire reliably if the copied tablet is large and the tserver already has a high number of containers. Even though the issue is mitigated by LIFO container selection, we can completely avoid it by deferring the block transaction commit to the end of tablet copy session. There are mainly two reasons we may still want to do so: 1) If DownloadWALs fails there's no reason to pay the fsync() price and commit all those blocks. 2) While DownloadWALs is running the kernel has more time to eagerly flush the blocks, so the fsync()s at the end could be cheaper. This patch moves the block transaction commit out from FetchAll() and commits all downloaded blocks before replacing the superblock. Change-Id: I4feabc08c2199aad8d08be56f09ac06924345f2b --- M src/kudu/tserver/tablet_copy_client-test.cc M src/kudu/tserver/tablet_copy_client.cc M src/kudu/tserver/tablet_copy_client.h 3 files changed, 40 insertions(+), 36 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/66/7966/6 -- To view, visit http://gerrit.cloudera.org:8080/7966 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I4feabc08c2199aad8d08be56f09ac06924345f2b Gerrit-PatchSet: 6 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Hao Hao <hao....@cloudera.com> Gerrit-Reviewer: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Dan Burkert <danburk...@apache.org> Gerrit-Reviewer: Hao Hao <hao....@cloudera.com> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Mike Percy <mpe...@apache.org> Gerrit-Reviewer: Tidy Bot