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

[kudu-CR] consensus: The master should never evict a leader

Hello Alexey Serbin,

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

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

to review the following change.


Change subject: consensus: The master should never evict a leader
......................................................................

consensus: The master should never evict a leader

The master should never try to evict the leader replica when the tablet
is over-replicated. This patch ensures that is the case.

Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/consensus/quorum_util.h
M src/kudu/master/catalog_manager.cc
4 files changed, 74 insertions(+), 46 deletions(-)



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 1
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>

[kudu-CR] KUDU-1097. Never evict a leader

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

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

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

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

Change subject: KUDU-1097. Never evict a leader
......................................................................

KUDU-1097. Never evict a leader

The master should never try to evict the leader replica when the tablet
is over-replicated arbitrary voters are eligible for eviction. This
patch ensures that is the case.

Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/consensus/quorum_util.h
M src/kudu/master/catalog_manager.cc
4 files changed, 74 insertions(+), 46 deletions(-)


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

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

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................


Patch Set 6: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 6
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Sat, 02 Dec 2017 01:30:46 +0000
Gerrit-HasComments: No

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................


Patch Set 5: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 5
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Fri, 01 Dec 2017 22:46:25 +0000
Gerrit-HasComments: No

[kudu-CR] KUDU-1097. Never evict a leader

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has uploaded a new patch set (#3) to the change originally created by Mike Percy. ( http://gerrit.cloudera.org:8080/8680 )

Change subject: KUDU-1097. Never evict a leader
......................................................................

KUDU-1097. Never evict a leader

The master should never try to evict the leader replica when the tablet
is over-replicated and arbitrary voters are eligible for eviction. This
patch ensures that is the case.

Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/consensus/quorum_util.h
M src/kudu/master/catalog_manager.cc
4 files changed, 79 insertions(+), 48 deletions(-)


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

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

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................


Patch Set 2:

(2 comments)

looks good, just some nits

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

http://gerrit.cloudera.org:8080/#/c/8680/2/src/kudu/consensus/quorum_util-test.cc@628
PS2, Line 628: const string& node :
nit (just for better readability):
  const auto& leader_node:


http://gerrit.cloudera.org:8080/#/c/8680/2/src/kudu/consensus/quorum_util-test.cc@629
PS2, Line 629:     RaftConfigPB config;
             :     AddPeer(&config, nodes[0], V, '+');
             :     AddPeer(&config, nodes[1], V, '+');
             :     AddPeer(&config, nodes[2], V, '+');
             :     AddPeer(&config, nodes[3], V, '+');
nit: move this out of the loop -- this part is static.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 2
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Comment-Date: Wed, 29 Nov 2017 20:32:19 +0000
Gerrit-HasComments: Yes

[kudu-CR] KUDU-1097. Never evict a leader

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

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

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

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

Change subject: KUDU-1097. Never evict a leader
......................................................................

KUDU-1097. Never evict a leader

The master should never try to evict the leader replica when the tablet
is over-replicated and arbitrary voters are eligible for eviction. This
patch ensures that is the case.

Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/consensus/quorum_util.h
M src/kudu/master/catalog_manager.cc
4 files changed, 80 insertions(+), 48 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/80/8680/6
-- 
To view, visit http://gerrit.cloudera.org:8080/8680
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

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

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................


Patch Set 5:

this is just a rebase


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 5
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mp...@apache.org>
Gerrit-Comment-Date: Fri, 01 Dec 2017 22:12:28 +0000
Gerrit-HasComments: No

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................


Patch Set 2:

(2 comments)

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

http://gerrit.cloudera.org:8080/#/c/8680/2/src/kudu/consensus/quorum_util-test.cc@628
PS2, Line 628: const string& node :
> nit (just for better readability):
Done


http://gerrit.cloudera.org:8080/#/c/8680/2/src/kudu/consensus/quorum_util-test.cc@629
PS2, Line 629:     RaftConfigPB config;
             :     AddPeer(&config, nodes[0], V, '+');
             :     AddPeer(&config, nodes[1], V, '+');
             :     AddPeer(&config, nodes[2], V, '+');
             :     AddPeer(&config, nodes[3], V, '+');
> nit: move this out of the loop -- this part is static.
Done



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Gerrit-Change-Number: 8680
Gerrit-PatchSet: 2
Gerrit-Owner: Mike Percy <mp...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Comment-Date: Thu, 30 Nov 2017 01:36:08 +0000
Gerrit-HasComments: Yes

[kudu-CR] KUDU-1097. Never evict a leader

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

Change subject: KUDU-1097. Never evict a leader
......................................................................

KUDU-1097. Never evict a leader

The master should never try to evict the leader replica when the tablet
is over-replicated and arbitrary voters are eligible for eviction. This
patch ensures that is the case.

Change-Id: I57adc8c4c4a6a3b5ad0c0b9202407a4dd9e1e8b0
Reviewed-on: http://gerrit.cloudera.org:8080/8680
Tested-by: Kudu Jenkins
Reviewed-by: Alexey Serbin <as...@cloudera.com>
---
M src/kudu/consensus/quorum_util-test.cc
M src/kudu/consensus/quorum_util.cc
M src/kudu/consensus/quorum_util.h
M src/kudu/master/catalog_manager.cc
4 files changed, 80 insertions(+), 48 deletions(-)

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

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

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