You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Alexey Serbin (Code Review)" <ge...@cloudera.org> on 2017/11/29 06:02:18 UTC

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/8675


Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................

WIP [itests] more tests for 3-4-3 re-replication

WIP: make them work

Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/integration-tests/raft_consensus-itest-base.cc
M src/kudu/integration-tests/raft_consensus-itest-base.h
M src/kudu/integration-tests/raft_consensus-itest.cc
M src/kudu/integration-tests/raft_consensus_election-itest.cc
M src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
M src/kudu/tserver/tablet_copy_service.cc
7 files changed, 272 insertions(+), 13 deletions(-)



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>

[kudu-CR] KUDU-1097: scenario for fallen-behind-the-WAL replica

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

Change subject: KUDU-1097: scenario for fallen-behind-the-WAL replica
......................................................................

KUDU-1097: scenario for fallen-behind-the-WAL replica

Added end-to-end test scenario for the case when an existing follower
replica falls behind the WAL GC threshold.  First, the system attempts
to replace it with a non-voter where tablet copying fails.  As soon as
that detected, a new non-voter replica is added and the replacement
succeeds, so the tablet configuration eventually gets rid of failed
replicas and contains exactly 3 healthy replicas.

Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Reviewed-on: http://gerrit.cloudera.org:8080/8675
Reviewed-by: Mike Percy <mp...@apache.org>
Tested-by: Kudu Jenkins
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/integration-tests/raft_consensus-itest-base.cc
M src/kudu/integration-tests/raft_consensus-itest-base.h
M src/kudu/integration-tests/raft_consensus-itest.cc
M src/kudu/integration-tests/raft_consensus_election-itest.cc
M src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
M src/kudu/master/catalog_manager.cc
M src/kudu/tserver/tablet_copy_service.cc
9 files changed, 202 insertions(+), 15 deletions(-)

Approvals:
  Mike Percy: Looks good to me, approved
  Kudu Jenkins: Verified

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 5
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Hello Mike Percy, Kudu Jenkins, 

I'd like you to reexamine a change. Please visit

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

to look at the new patch set (#2).

Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................

WIP [itests] more tests for 3-4-3 re-replication

WIP: make them work

Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/integration-tests/raft_consensus-itest-base.cc
M src/kudu/integration-tests/raft_consensus-itest-base.h
M src/kudu/integration-tests/raft_consensus-itest.cc
M src/kudu/integration-tests/raft_consensus_election-itest.cc
M src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
M src/kudu/tserver/tablet_copy_service.cc
8 files changed, 287 insertions(+), 13 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/75/8675/2
-- 
To view, visit http://gerrit.cloudera.org:8080/8675
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 2
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

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

Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................


Patch Set 3: Code-Review+1

(4 comments)

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

http://gerrit.cloudera.org:8080/#/c/8675/3//COMMIT_MSG@7
PS3, Line 7: WIP [itests] more tests for 3-4-3 re-replication
update commit message


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/consensus/quorum_util-test.cc
File src/kudu/consensus/quorum_util-test.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/consensus/quorum_util-test.cc@622
PS3, Line 622:   // TODO(aserbin): clarify how to deal with the case below: it seems
mind splitting this into a separate patch?


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
File src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc@1310
PS3, Line 1310:   //NO_FATALS(cluster_->AssertNoCrashes());
remove this?


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc@1317
PS3, Line 1317: TEST_F(RaftConsensusNonVoterITest, DISABLED_FailedTabletCopyAllServers) {
mind splitting this into a separate patch?



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 3
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Wed, 29 Nov 2017 09:41:46 +0000
Gerrit-HasComments: Yes

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Hello Mike Percy, Kudu Jenkins, 

I'd like you to reexamine a change. Please visit

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

to look at the new patch set (#3).

Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................

WIP [itests] more tests for 3-4-3 re-replication

WIP: make them work

Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/integration-tests/raft_consensus-itest-base.cc
M src/kudu/integration-tests/raft_consensus-itest-base.h
M src/kudu/integration-tests/raft_consensus-itest.cc
M src/kudu/integration-tests/raft_consensus_election-itest.cc
M src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
M src/kudu/master/catalog_manager.cc
M src/kudu/tserver/tablet_copy_service.cc
9 files changed, 310 insertions(+), 15 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/75/8675/3
-- 
To view, visit http://gerrit.cloudera.org:8080/8675
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 3
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>

[kudu-CR] KUDU-1097: scenario for fallen-behind-the-WAL replica

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

Change subject: KUDU-1097: scenario for fallen-behind-the-WAL replica
......................................................................


Patch Set 4: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 4
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Wed, 29 Nov 2017 10:05:49 +0000
Gerrit-HasComments: No

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

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

Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................


Patch Set 3:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/master/catalog_manager.cc
File src/kudu/master/catalog_manager.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/master/catalog_manager.cc@3154
PS3, Line 3154:   if (FLAGS_raft_prepare_replacement_before_eviction) {
we should only do this if we're adding a NON_VOTER



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 3
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Wed, 29 Nov 2017 09:43:28 +0000
Gerrit-HasComments: Yes

[kudu-CR] WIP [itests] more tests for 3-4-3 re-replication

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

Change subject: WIP [itests] more tests for 3-4-3 re-replication
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/8675/1/src/kudu/consensus/quorum_util-test.cc
File src/kudu/consensus/quorum_util-test.cc:

http://gerrit.cloudera.org:8080/#/c/8675/1/src/kudu/consensus/quorum_util-test.cc@613
PS1, Line 613:     AddPeer(&config, "D", N, '-', {{"PROMOTE", true}});
i see. i think we should evict FAILED non-voters as long as our health is safe to evict, i.e. we have a majority of healthy voters.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Wed, 29 Nov 2017 06:07:36 +0000
Gerrit-HasComments: Yes

[kudu-CR] KUDU-1097: scenario for fallen-behind-the-WAL replica

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

Change subject: KUDU-1097: scenario for fallen-behind-the-WAL replica
......................................................................


Patch Set 3:

(5 comments)

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

http://gerrit.cloudera.org:8080/#/c/8675/3//COMMIT_MSG@7
PS3, Line 7: WIP [itests] more tests for 3-4-3 re-replication
> update commit message
Done


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/consensus/quorum_util-test.cc
File src/kudu/consensus/quorum_util-test.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/consensus/quorum_util-test.cc@622
PS3, Line 622:   // TODO(aserbin): clarify how to deal with the case below: it seems
> mind splitting this into a separate patch?
Done


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
File src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc@1310
PS3, Line 1310:   //NO_FATALS(cluster_->AssertNoCrashes());
> remove this?
Done


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc@1317
PS3, Line 1317: TEST_F(RaftConsensusNonVoterITest, DISABLED_FailedTabletCopyAllServers) {
> mind splitting this into a separate patch?
Done


http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/master/catalog_manager.cc
File src/kudu/master/catalog_manager.cc:

http://gerrit.cloudera.org:8080/#/c/8675/3/src/kudu/master/catalog_manager.cc@3154
PS3, Line 3154:   if (FLAGS_raft_prepare_replacement_before_eviction) {
> we should only do this if we're adding a NON_VOTER
right -- good catch!



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 3
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Wed, 29 Nov 2017 10:02:07 +0000
Gerrit-HasComments: Yes

[kudu-CR] KUDU-1097: scenario for fallen-behind-the-WAL replica

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Hello Mike Percy, Kudu Jenkins, 

I'd like you to reexamine a change. Please visit

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

to look at the new patch set (#4).

Change subject: KUDU-1097: scenario for fallen-behind-the-WAL replica
......................................................................

KUDU-1097: scenario for fallen-behind-the-WAL replica

Added end-to-end test scenario for the case when an existing follower
replica falls behind the WAL GC threshold.  First, the system attempts
to replace it with a non-voter where tablet copying fails.  As soon as
that detected, a new non-voter replica is added and the replacement
succeeds, so the tablet configuration eventually gets rid of failed
replicas and contains exactly 3 healthy replicas.

Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/integration-tests/raft_consensus-itest-base.cc
M src/kudu/integration-tests/raft_consensus-itest-base.h
M src/kudu/integration-tests/raft_consensus-itest.cc
M src/kudu/integration-tests/raft_consensus_election-itest.cc
M src/kudu/integration-tests/raft_consensus_nonvoter-itest.cc
M src/kudu/master/catalog_manager.cc
M src/kudu/tserver/tablet_copy_service.cc
9 files changed, 202 insertions(+), 15 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/75/8675/4
-- 
To view, visit http://gerrit.cloudera.org:8080/8675
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifcaff45c9fa3beb51d99dc53d88138da7dc120af
Gerrit-Change-Number: 8675
Gerrit-PatchSet: 4
Gerrit-Owner: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>