Skip to content

Instantly share code, notes, and snippets.

@toddlipcon
Created March 13, 2018 21:14
Show Gist options
  • Save toddlipcon/8f0f8e38b04fb567f014e248e6f5d79b to your computer and use it in GitHub Desktop.
Save toddlipcon/8f0f8e38b04fb567f014e248e6f5d79b to your computer and use it in GitHub Desktop.
diff --git a/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java b/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
index 0c7e800..4b93a34 100644
--- a/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
+++ b/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
@@ -406,7 +406,11 @@ public class AsyncKuduClient implements AutoCloseable {
return null;
}
return newRpcProxy(
- new ServerInfo("master-" + hostPort.toString(), hostPort, inetAddress), credentialsPolicy);
+ new ServerInfo(getFakeMasterUuid(hostPort), hostPort, inetAddress), credentialsPolicy);
+ }
+
+ static String getFakeMasterUuid(HostAndPort hostPort) {
+ return "master-" + hostPort.toString();
}
void reconnectToCluster(Callback<Void, Boolean> cb,
diff --git a/java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToClusterResponse.java b/java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToClusterResponse.java
index 6cb687f..bfa1f2b 100644
--- a/java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToClusterResponse.java
+++ b/java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToClusterResponse.java
@@ -61,6 +61,7 @@ class ConnectToClusterResponse {
* if it were a tablet.
*/
public GetTableLocationsResponsePB getAsTableLocations() {
+ String fakeUuid = AsyncKuduClient.getFakeMasterUuid(leaderHostAndPort);
return GetTableLocationsResponsePB.newBuilder()
.addTabletLocations(TabletLocationsPB.newBuilder()
.setPartition(PartitionPB.newBuilder()
@@ -70,7 +71,7 @@ class ConnectToClusterResponse {
.addReplicas(ReplicaPB.newBuilder()
.setTsInfo(TSInfoPB.newBuilder()
.addRpcAddresses(ProtobufHelper.hostAndPortToPB(leaderHostAndPort))
- .setPermanentUuid(ByteString.EMPTY)) // required field, but unused for master
+ .setPermanentUuid(ByteString.copyFromUtf8(fakeUuid)))
.setRole(connectResponse.getRole()))).build();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment