HBASE-17337 list replication peers request should be routed through master
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/ac3b1c9a Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/ac3b1c9a Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/ac3b1c9a Branch: refs/heads/master Commit: ac3b1c9aa9d3ce5514afec0c2e0e34f9ac12d772 Parents: bd157ff Author: Guanghao Zhang <zg...@apache.org> Authored: Tue Jan 10 08:57:26 2017 +0800 Committer: Guanghao Zhang <zg...@apache.org> Committed: Tue Jan 10 08:57:26 2017 +0800 ---------------------------------------------------------------------- .../org/apache/hadoop/hbase/client/Admin.java | 31 + .../hbase/client/ConnectionImplementation.java | 8 + .../apache/hadoop/hbase/client/HBaseAdmin.java | 31 + .../client/replication/ReplicationAdmin.java | 27 +- .../replication/ReplicationSerDeHelper.java | 25 +- .../replication/ReplicationPeerDescription.java | 59 + .../hbase/shaded/protobuf/ProtobufUtil.java | 2 + .../hbase/shaded/protobuf/RequestConverter.java | 9 + .../shaded/protobuf/generated/MasterProtos.java | 142 +- .../protobuf/generated/ReplicationProtos.java | 6002 ++++++++++++------ .../src/main/protobuf/Master.proto | 4 + .../src/main/protobuf/Replication.proto | 17 + .../hbase/coprocessor/MasterObserver.java | 20 + .../org/apache/hadoop/hbase/master/HMaster.java | 16 + .../hbase/master/MasterCoprocessorHost.java | 20 + .../hadoop/hbase/master/MasterRpcServices.java | 19 + .../hadoop/hbase/master/MasterServices.java | 9 + .../master/replication/ReplicationManager.java | 18 + .../hbase/security/access/AccessController.java | 8 +- .../replication/TestReplicationAdmin.java | 3 +- .../hbase/master/MockNoopMasterServices.java | 7 + .../security/access/TestAccessController.java | 15 + .../asciidoc/_chapters/appendix_acl_matrix.adoc | 1 + 23 files changed, 4614 insertions(+), 1879 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java index 2a1b782..4039fe3 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java @@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.client; import java.io.Closeable; import java.io.IOException; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.Future; @@ -48,6 +49,7 @@ import org.apache.hadoop.hbase.quotas.QuotaRetriever; import org.apache.hadoop.hbase.quotas.QuotaSettings; import org.apache.hadoop.hbase.regionserver.wal.FailedLogCloseException; import org.apache.hadoop.hbase.replication.ReplicationPeerConfig; +import org.apache.hadoop.hbase.replication.ReplicationPeerDescription; import org.apache.hadoop.hbase.snapshot.HBaseSnapshotException; import org.apache.hadoop.hbase.snapshot.RestoreSnapshotException; import org.apache.hadoop.hbase.snapshot.SnapshotCreationException; @@ -1880,6 +1882,35 @@ public interface Admin extends Abortable, Closeable { } /** + * Return a list of replication peers. + * @return a list of replication peers description + * @throws IOException + */ + default List<ReplicationPeerDescription> listReplicationPeers() throws IOException { + return new ArrayList<>(); + } + + /** + * Return a list of replication peers. + * @param regex The regular expression to match peer id + * @return a list of replication peers description + * @throws IOException + */ + default List<ReplicationPeerDescription> listReplicationPeers(String regex) throws IOException { + return new ArrayList<>(); + } + + /** + * Return a list of replication peers. + * @param pattern The compiled regular expression to match peer id + * @return a list of replication peers description + * @throws IOException + */ + default List<ReplicationPeerDescription> listReplicationPeers(Pattern pattern) throws IOException { + return new ArrayList<>(); + } + + /** * Mark a region server as draining to prevent additional regions from getting assigned to it. * @param servers List of region servers to drain. */ http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java index ea11c25..cfed9f6 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java @@ -102,6 +102,8 @@ import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.Enabl import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.EnableReplicationPeerResponse; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.GetReplicationPeerConfigRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.GetReplicationPeerConfigResponse; +import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest; +import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.RemoveReplicationPeerRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.RemoveReplicationPeerResponse; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest; @@ -1711,6 +1713,12 @@ class ConnectionImplementation implements ClusterConnection, Closeable { throws ServiceException { return stub.updateReplicationPeerConfig(controller, request); } + + @Override + public ListReplicationPeersResponse listReplicationPeers(RpcController controller, + ListReplicationPeersRequest request) throws ServiceException { + return stub.listReplicationPeers(controller, request); + } }; } http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java index 3c84929..db9cea5 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java @@ -79,6 +79,7 @@ import org.apache.hadoop.hbase.quotas.QuotaRetriever; import org.apache.hadoop.hbase.quotas.QuotaSettings; import org.apache.hadoop.hbase.regionserver.wal.FailedLogCloseException; import org.apache.hadoop.hbase.replication.ReplicationPeerConfig; +import org.apache.hadoop.hbase.replication.ReplicationPeerDescription; import org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException; import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil; import org.apache.hadoop.hbase.shaded.protobuf.RequestConverter; @@ -172,6 +173,7 @@ import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.TruncateTa import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.TruncateTableResponse; import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.UnassignRegionRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos; +import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.GetReplicationPeerConfigResponse; import org.apache.hadoop.hbase.snapshot.ClientSnapshotDescriptionUtils; import org.apache.hadoop.hbase.snapshot.HBaseSnapshotException; @@ -3833,6 +3835,35 @@ public class HBaseAdmin implements Admin { } @Override + public List<ReplicationPeerDescription> listReplicationPeers() throws IOException { + return listReplicationPeers((Pattern)null); + } + + @Override + public List<ReplicationPeerDescription> listReplicationPeers(String regex) throws IOException { + return listReplicationPeers(Pattern.compile(regex)); + } + + @Override + public List<ReplicationPeerDescription> listReplicationPeers(Pattern pattern) + throws IOException { + return executeCallable(new MasterCallable<List<ReplicationPeerDescription>>(getConnection(), + getRpcControllerFactory()) { + @Override + protected List<ReplicationPeerDescription> rpcCall() throws Exception { + List<ReplicationProtos.ReplicationPeerDescription> peersList = master.listReplicationPeers( + getRpcController(), RequestConverter.buildListReplicationPeersRequest(pattern)) + .getPeerDescList(); + List<ReplicationPeerDescription> result = new ArrayList<>(peersList.size()); + for (ReplicationProtos.ReplicationPeerDescription peer : peersList) { + result.add(ReplicationSerDeHelper.toReplicationPeerDescription(peer)); + } + return result; + } + }); + } + + @Override public void drainRegionServers(List<ServerName> servers) throws IOException { final List<HBaseProtos.ServerName> pbServers = new ArrayList<HBaseProtos.ServerName>(); for (ServerName server : servers) { http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java index d0859a4..f9ca443 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java @@ -29,6 +29,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.TreeMap; import java.util.Map.Entry; import java.util.Set; @@ -39,6 +40,7 @@ import org.apache.hadoop.hbase.Abortable; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HConstants; import org.apache.hadoop.hbase.HTableDescriptor; +import org.apache.hadoop.hbase.ReplicationPeerNotFoundException; import org.apache.hadoop.hbase.TableName; import org.apache.hadoop.hbase.TableNotFoundException; import org.apache.hadoop.hbase.classification.InterfaceAudience; @@ -52,6 +54,7 @@ import org.apache.hadoop.hbase.replication.ReplicationException; import org.apache.hadoop.hbase.replication.ReplicationFactory; import org.apache.hadoop.hbase.replication.ReplicationPeer; import org.apache.hadoop.hbase.replication.ReplicationPeerConfig; +import org.apache.hadoop.hbase.replication.ReplicationPeerDescription; import org.apache.hadoop.hbase.replication.ReplicationPeerZKImpl; import org.apache.hadoop.hbase.replication.ReplicationPeers; import org.apache.hadoop.hbase.replication.ReplicationQueuesClient; @@ -238,13 +241,19 @@ public class ReplicationAdmin implements Closeable { /** * Get the number of slave clusters the local cluster has. * @return number of slave clusters + * @throws IOException */ - public int getPeersCount() { - return this.replicationPeers.getAllPeerIds().size(); + public int getPeersCount() throws IOException { + return this.admin.listReplicationPeers().size(); } - public Map<String, ReplicationPeerConfig> listPeerConfigs() { - return this.replicationPeers.getAllPeerConfigs(); + public Map<String, ReplicationPeerConfig> listPeerConfigs() throws IOException { + List<ReplicationPeerDescription> peers = this.admin.listReplicationPeers(); + Map<String, ReplicationPeerConfig> result = new TreeMap<String, ReplicationPeerConfig>(); + for (ReplicationPeerDescription peer : peers) { + result.put(peer.getPeerId(), peer.getPeerConfig()); + } + return result; } public ReplicationPeerConfig getPeerConfig(String id) throws IOException { @@ -402,8 +411,12 @@ public class ReplicationAdmin implements Closeable { * an IllegalArgumentException is thrown if it doesn't exist * @return true if replication is enabled to that peer, false if it isn't */ - public boolean getPeerState(String id) throws ReplicationException { - return this.replicationPeers.getStatusOfPeerFromBackingStore(id); + public boolean getPeerState(String id) throws ReplicationException, IOException { + List<ReplicationPeerDescription> peers = admin.listReplicationPeers(id); + if (peers.isEmpty() || !id.equals(peers.get(0).getPeerId())) { + throw new ReplicationPeerNotFoundException(id); + } + return peers.get(0).isEnabled(); } @Override @@ -577,7 +590,7 @@ public class ReplicationAdmin implements Closeable { } @VisibleForTesting - List<ReplicationPeer> listReplicationPeers() { + List<ReplicationPeer> listReplicationPeers() throws IOException { Map<String, ReplicationPeerConfig> peers = listPeerConfigs(); if (peers == null || peers.size() <= 0) { return null; http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationSerDeHelper.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationSerDeHelper.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationSerDeHelper.java index 9e04c9b..93eea17 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationSerDeHelper.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationSerDeHelper.java @@ -31,6 +31,7 @@ import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil; import org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos; import org.apache.hadoop.hbase.replication.ReplicationPeerConfig; +import org.apache.hadoop.hbase.replication.ReplicationPeerDescription; import org.apache.hadoop.hbase.util.Bytes; import org.apache.hadoop.hbase.util.Strings; @@ -293,7 +294,7 @@ public final class ReplicationSerDeHelper { return peerConfig; } - public static ReplicationProtos.ReplicationPeer convert(ReplicationPeerConfig peerConfig) { + public static ReplicationProtos.ReplicationPeer convert(ReplicationPeerConfig peerConfig) { ReplicationProtos.ReplicationPeer.Builder builder = ReplicationProtos.ReplicationPeer.newBuilder(); if (peerConfig.getClusterKey() != null) { builder.setClusterkey(peerConfig.getClusterKey()); @@ -343,4 +344,26 @@ public final class ReplicationSerDeHelper { byte[] bytes = convert(peerConfig).toByteArray(); return ProtobufUtil.prependPBMagic(bytes); } + + public static ReplicationPeerDescription toReplicationPeerDescription( + ReplicationProtos.ReplicationPeerDescription desc) { + boolean enabled = ReplicationProtos.ReplicationState.State.ENABLED == desc.getState() + .getState(); + ReplicationPeerConfig config = convert(desc.getConfig()); + return new ReplicationPeerDescription(desc.getId(), enabled, config); + } + + public static ReplicationProtos.ReplicationPeerDescription toProtoReplicationPeerDescription( + ReplicationPeerDescription desc) { + ReplicationProtos.ReplicationPeerDescription.Builder builder = ReplicationProtos.ReplicationPeerDescription + .newBuilder(); + builder.setId(desc.getPeerId()); + ReplicationProtos.ReplicationState.Builder stateBuilder = ReplicationProtos.ReplicationState + .newBuilder(); + stateBuilder.setState(desc.isEnabled() ? ReplicationProtos.ReplicationState.State.ENABLED + : ReplicationProtos.ReplicationState.State.DISABLED); + builder.setState(stateBuilder.build()); + builder.setConfig(convert(desc.getPeerConfig())); + return builder.build(); + } } http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/replication/ReplicationPeerDescription.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/replication/ReplicationPeerDescription.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/replication/ReplicationPeerDescription.java new file mode 100644 index 0000000..577d13a --- /dev/null +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/replication/ReplicationPeerDescription.java @@ -0,0 +1,59 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.hbase.replication; + +import org.apache.hadoop.hbase.classification.InterfaceAudience; +import org.apache.hadoop.hbase.classification.InterfaceStability; + +/** + * The POJO equivalent of ReplicationProtos.ReplicationPeerDescription + */ +@InterfaceAudience.Public +@InterfaceStability.Evolving +public class ReplicationPeerDescription { + + private final String id; + private final boolean enabled; + private final ReplicationPeerConfig config; + + public ReplicationPeerDescription(String id, boolean enabled, ReplicationPeerConfig config) { + this.id = id; + this.enabled = enabled; + this.config = config; + } + + public String getPeerId() { + return this.id; + } + + public boolean isEnabled() { + return this.enabled; + } + + public ReplicationPeerConfig getPeerConfig() { + return this.config; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder("id : ").append(id); + builder.append(", enabled : " + enabled); + builder.append(", config : " + config); + return builder.toString(); + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java index 285e19a..585a5f8 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java @@ -91,6 +91,7 @@ import org.apache.hadoop.hbase.quotas.QuotaType; import org.apache.hadoop.hbase.quotas.ThrottleType; import org.apache.hadoop.hbase.replication.ReplicationLoadSink; import org.apache.hadoop.hbase.replication.ReplicationLoadSource; +import org.apache.hadoop.hbase.replication.ReplicationPeerDescription; import org.apache.hadoop.hbase.security.User; import org.apache.hadoop.hbase.security.visibility.Authorizations; import org.apache.hadoop.hbase.security.visibility.CellVisibility; @@ -158,6 +159,7 @@ import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.GetTableDe import org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos; import org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionServerReportRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionServerStartupRequest; +import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos; import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos; import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor; import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor; http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/RequestConverter.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/RequestConverter.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/RequestConverter.java index 4231a82..4acb525 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/RequestConverter.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/RequestConverter.java @@ -116,6 +116,7 @@ import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.AddRe import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.DisableReplicationPeerRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.EnableReplicationPeerRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.GetReplicationPeerConfigRequest; +import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.RemoveReplicationPeerRequest; import org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest; import org.apache.hadoop.hbase.util.Bytes; @@ -1613,4 +1614,12 @@ public final class RequestConverter { builder.setPeerConfig(ReplicationSerDeHelper.convert(peerConfig)); return builder.build(); } + + public static ListReplicationPeersRequest buildListReplicationPeersRequest(Pattern pattern) { + ListReplicationPeersRequest.Builder builder = ListReplicationPeersRequest.newBuilder(); + if (pattern != null) { + builder.setRegex(pattern.toString()); + } + return builder.build(); + } } http://git-wip-us.apache.org/repos/asf/hbase/blob/ac3b1c9a/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProtos.java ---------------------------------------------------------------------- diff --git a/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProtos.java b/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProtos.java index d56c534..8f293f3 100644 --- a/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProtos.java +++ b/hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/MasterProtos.java @@ -69799,6 +69799,18 @@ public final class MasterProtos { /** * <pre> + ** Returns a list of replication peers + * </pre> + * + * <code>rpc ListReplicationPeers(.hbase.pb.ListReplicationPeersRequest) returns (.hbase.pb.ListReplicationPeersResponse);</code> + */ + public abstract void listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request, + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse> done); + + /** + * <pre> ** Returns a list of ServerNames marked as draining. * </pre> * @@ -70351,6 +70363,14 @@ public final class MasterProtos { } @java.lang.Override + public void listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request, + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse> done) { + impl.listReplicationPeers(controller, request, done); + } + + @java.lang.Override public void listDrainingRegionServers( org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest request, @@ -70525,10 +70545,12 @@ public final class MasterProtos { case 63: return impl.updateReplicationPeerConfig(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest)request); case 64: - return impl.listDrainingRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest)request); + return impl.listReplicationPeers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest)request); case 65: - return impl.drainRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest)request); + return impl.listDrainingRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest)request); case 66: + return impl.drainRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest)request); + case 67: return impl.removeDrainFromRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest)request); default: throw new java.lang.AssertionError("Can't get here."); @@ -70673,10 +70695,12 @@ public final class MasterProtos { case 63: return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest.getDefaultInstance(); case 64: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest.getDefaultInstance(); case 65: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest.getDefaultInstance(); case 66: + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest.getDefaultInstance(); + case 67: return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest.getDefaultInstance(); default: throw new java.lang.AssertionError("Can't get here."); @@ -70821,10 +70845,12 @@ public final class MasterProtos { case 63: return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigResponse.getDefaultInstance(); case 64: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.getDefaultInstance(); case 65: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance(); case 66: + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance(); + case 67: return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse.getDefaultInstance(); default: throw new java.lang.AssertionError("Can't get here."); @@ -71633,6 +71659,18 @@ public final class MasterProtos { /** * <pre> + ** Returns a list of replication peers + * </pre> + * + * <code>rpc ListReplicationPeers(.hbase.pb.ListReplicationPeersRequest) returns (.hbase.pb.ListReplicationPeersResponse);</code> + */ + public abstract void listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request, + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse> done); + + /** + * <pre> ** Returns a list of ServerNames marked as draining. * </pre> * @@ -72010,16 +72048,21 @@ public final class MasterProtos { done)); return; case 64: + this.listReplicationPeers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest)request, + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcUtil.<org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse>specializeCallback( + done)); + return; + case 65: this.listDrainingRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest)request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcUtil.<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse>specializeCallback( done)); return; - case 65: + case 66: this.drainRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest)request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcUtil.<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse>specializeCallback( done)); return; - case 66: + case 67: this.removeDrainFromRegionServers(controller, (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest)request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcUtil.<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse>specializeCallback( done)); @@ -72167,10 +72210,12 @@ public final class MasterProtos { case 63: return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest.getDefaultInstance(); case 64: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest.getDefaultInstance(); case 65: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest.getDefaultInstance(); case 66: + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest.getDefaultInstance(); + case 67: return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest.getDefaultInstance(); default: throw new java.lang.AssertionError("Can't get here."); @@ -72315,10 +72360,12 @@ public final class MasterProtos { case 63: return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigResponse.getDefaultInstance(); case 64: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.getDefaultInstance(); case 65: - return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance(); + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance(); case 66: + return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance(); + case 67: return org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse.getDefaultInstance(); default: throw new java.lang.AssertionError("Can't get here."); @@ -73301,12 +73348,27 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigResponse.getDefaultInstance())); } + public void listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request, + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse> done) { + channel.callMethod( + getDescriptor().getMethods().get(64), + controller, + request, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.getDefaultInstance(), + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcUtil.generalizeCallback( + done, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.class, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.getDefaultInstance())); + } + public void listDrainingRegionServers( org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse> done) { channel.callMethod( - getDescriptor().getMethods().get(64), + getDescriptor().getMethods().get(65), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance(), @@ -73321,7 +73383,7 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse> done) { channel.callMethod( - getDescriptor().getMethods().get(65), + getDescriptor().getMethods().get(66), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance(), @@ -73336,7 +73398,7 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest request, org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse> done) { channel.callMethod( - getDescriptor().getMethods().get(66), + getDescriptor().getMethods().get(67), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse.getDefaultInstance(), @@ -73673,6 +73735,11 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.UpdateReplicationPeerConfigRequest request) throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException; + public org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request) + throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException; + public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse listDrainingRegionServers( org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest request) @@ -74464,12 +74531,24 @@ public final class MasterProtos { } + public org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse listReplicationPeers( + org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersRequest request) + throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException { + return (org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse) channel.callBlockingMethod( + getDescriptor().getMethods().get(64), + controller, + request, + org.apache.hadoop.hbase.shaded.protobuf.generated.ReplicationProtos.ListReplicationPeersResponse.getDefaultInstance()); + } + + public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse listDrainingRegionServers( org.apache.hadoop.hbase.shaded.com.google.protobuf.RpcController controller, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersRequest request) throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException { return (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse) channel.callBlockingMethod( - getDescriptor().getMethods().get(64), + getDescriptor().getMethods().get(65), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.ListDrainingRegionServersResponse.getDefaultInstance()); @@ -74481,7 +74560,7 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersRequest request) throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException { return (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse) channel.callBlockingMethod( - getDescriptor().getMethods().get(65), + getDescriptor().getMethods().get(66), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.DrainRegionServersResponse.getDefaultInstance()); @@ -74493,7 +74572,7 @@ public final class MasterProtos { org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersRequest request) throws org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException { return (org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse) channel.callBlockingMethod( - getDescriptor().getMethods().get(66), + getDescriptor().getMethods().get(67), controller, request, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.RemoveDrainFromRegionServersResponse.getDefaultInstance()); @@ -75319,7 +75398,7 @@ public final class MasterProtos { "\022)\n\013server_name\030\001 \003(\0132\024.hbase.pb.ServerN" + "ame\"&\n$RemoveDrainFromRegionServersRespo", "nse*(\n\020MasterSwitchType\022\t\n\005SPLIT\020\000\022\t\n\005ME" + - "RGE\020\0012\2301\n\rMasterService\022e\n\024GetSchemaAlte" + + "RGE\020\0012\3771\n\rMasterService\022e\n\024GetSchemaAlte" + "rStatus\022%.hbase.pb.GetSchemaAlterStatusR" + "equest\032&.hbase.pb.GetSchemaAlterStatusRe" + "sponse\022b\n\023GetTableDescriptors\022$.hbase.pb" + @@ -75468,17 +75547,20 @@ public final class MasterProtos { "\n\033UpdateReplicationPeerConfig\022,.hbase.pb" + ".UpdateReplicationPeerConfigRequest\032-.hb" + "ase.pb.UpdateReplicationPeerConfigRespon", - "se\022t\n\031listDrainingRegionServers\022*.hbase." + - "pb.ListDrainingRegionServersRequest\032+.hb" + - "ase.pb.ListDrainingRegionServersResponse" + - "\022_\n\022drainRegionServers\022#.hbase.pb.DrainR" + - "egionServersRequest\032$.hbase.pb.DrainRegi" + - "onServersResponse\022}\n\034removeDrainFromRegi" + - "onServers\022-.hbase.pb.RemoveDrainFromRegi" + - "onServersRequest\032..hbase.pb.RemoveDrainF" + - "romRegionServersResponseBI\n1org.apache.h" + - "adoop.hbase.shaded.protobuf.generatedB\014M", - "asterProtosH\001\210\001\001\240\001\001" + "se\022e\n\024ListReplicationPeers\022%.hbase.pb.Li" + + "stReplicationPeersRequest\032&.hbase.pb.Lis" + + "tReplicationPeersResponse\022t\n\031listDrainin" + + "gRegionServers\022*.hbase.pb.ListDrainingRe" + + "gionServersRequest\032+.hbase.pb.ListDraini" + + "ngRegionServersResponse\022_\n\022drainRegionSe" + + "rvers\022#.hbase.pb.DrainRegionServersReque" + + "st\032$.hbase.pb.DrainRegionServersResponse" + + "\022}\n\034removeDrainFromRegionServers\022-.hbase" + + ".pb.RemoveDrainFromRegionServersRequest\032", + "..hbase.pb.RemoveDrainFromRegionServersR" + + "esponseBI\n1org.apache.hadoop.hbase.shade" + + "d.protobuf.generatedB\014MasterProtosH\001\210\001\001\240" + + "\001\001" }; org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new org.apache.hadoop.hbase.shaded.com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() {