You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Adar Dembo (Code Review)" <ge...@cloudera.org> on 2018/02/26 21:32:26 UTC

[kudu-CR] rpc: prevent death test from leaving behind test files

Hello Alexey Serbin, Dan Burkert, Sailesh Mukil,

I'd like you to do a code review. Please visit

    http://gerrit.cloudera.org:8080/9454

to review the following change.


Change subject: rpc: prevent death test from leaving behind test files
......................................................................

rpc: prevent death test from leaving behind test files

I noticed this while running tests locally, though I don't know why it
wasn't caught in precommit, as build-and-test.sh is supposed to look for
and flag files "left behind" by tests.

In any case, the issue is that a "threadsafe" death test forks and reruns
the test, which generates a new test directory and creates a new set of
test files. Then, the fork encounters a CHECK and crashes before cleaning up
these files.

Rather than fix this by making the death test a "fast" test, I opted to
refactor the associated methods to properly return errors, at which point
the test can evaluate the returned error.

Change-Id: I235400769a85d490039df07c3c084901534bf4e1
---
M src/kudu/rpc/exactly_once_rpc-test.cc
M src/kudu/rpc/mt-rpc-test.cc
M src/kudu/rpc/reactor-test.cc
M src/kudu/rpc/rpc-bench.cc
M src/kudu/rpc/rpc-test-base.h
M src/kudu/rpc/rpc-test.cc
M src/kudu/rpc/rpc_stub-test.cc
7 files changed, 170 insertions(+), 127 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/9454/1
-- 
To view, visit http://gerrit.cloudera.org:8080/9454
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I235400769a85d490039df07c3c084901534bf4e1
Gerrit-Change-Number: 9454
Gerrit-PatchSet: 1
Gerrit-Owner: Adar Dembo <ad...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Dan Burkert <da...@apache.org>
Gerrit-Reviewer: Sailesh Mukil <sa...@cloudera.com>

[kudu-CR] rpc: prevent death test from leaving behind test files

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/9454 )

Change subject: rpc: prevent death test from leaving behind test files
......................................................................


Patch Set 1: Code-Review+2

(1 comment)

http://gerrit.cloudera.org:8080/#/c/9454/1/src/kudu/rpc/rpc-bench.cc
File src/kudu/rpc/rpc-bench.cc:

http://gerrit.cloudera.org:8080/#/c/9454/1/src/kudu/rpc/rpc-bench.cc@91
PS1, Line 91: RpcTestBase::SetUp();
Nice catch!



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I235400769a85d490039df07c3c084901534bf4e1
Gerrit-Change-Number: 9454
Gerrit-PatchSet: 1
Gerrit-Owner: Adar Dembo <ad...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Dan Burkert <da...@apache.org>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Sailesh Mukil <sa...@cloudera.com>
Gerrit-Comment-Date: Tue, 27 Feb 2018 06:20:11 +0000
Gerrit-HasComments: Yes

[kudu-CR] rpc: prevent death test from leaving behind test files

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/9454 )

Change subject: rpc: prevent death test from leaving behind test files
......................................................................

rpc: prevent death test from leaving behind test files

I noticed this while running tests locally, though I don't know why it
wasn't caught in precommit, as build-and-test.sh is supposed to look for
and flag files "left behind" by tests.

In any case, the issue is that a "threadsafe" death test forks and reruns
the test, which generates a new test directory and creates a new set of
test files. Then, the fork encounters a CHECK and crashes before cleaning up
these files.

Rather than fix this by making the death test a "fast" test, I opted to
refactor the associated methods to properly return errors, at which point
the test can evaluate the returned error.

Change-Id: I235400769a85d490039df07c3c084901534bf4e1
Reviewed-on: http://gerrit.cloudera.org:8080/9454
Tested-by: Kudu Jenkins
Reviewed-by: Alexey Serbin <as...@cloudera.com>
---
M src/kudu/rpc/exactly_once_rpc-test.cc
M src/kudu/rpc/mt-rpc-test.cc
M src/kudu/rpc/reactor-test.cc
M src/kudu/rpc/rpc-bench.cc
M src/kudu/rpc/rpc-test-base.h
M src/kudu/rpc/rpc-test.cc
M src/kudu/rpc/rpc_stub-test.cc
7 files changed, 170 insertions(+), 127 deletions(-)

Approvals:
  Kudu Jenkins: Verified
  Alexey Serbin: Looks good to me, approved

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I235400769a85d490039df07c3c084901534bf4e1
Gerrit-Change-Number: 9454
Gerrit-PatchSet: 2
Gerrit-Owner: Adar Dembo <ad...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Dan Burkert <da...@apache.org>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Sailesh Mukil <sa...@cloudera.com>