Dan Burkert has posted comments on this change. Change subject: [java client] Decouple TabletClient from RemoteTablet ......................................................................
Patch Set 1: (8 comments) http://gerrit.cloudera.org:8080/#/c/4757/1/java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java File java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java: PS1, Line 49: } {@link TabletClient}s are currently... Line 95: void connectTS(Master.TSInfoPB tsInfoPB) throws UnknownHostException { private or @VisibleForTesting (here and elsewhere) PS1, Line 99: {uuid} This doesn't work correctly, the braces have to be empty. Line 167: readLock.lock(); call getClient here instead of dealing with locks. Line 187: ArrayList<Deferred<Void>> deferreds = new ArrayList<>(); > That'd require locking twice... didn't think it was a big deal since this h I think it's still an improvement to move the ArrayList creation inside the lock and use preallocation. http://gerrit.cloudera.org:8080/#/c/4757/1/java/kudu-client/src/main/java/org/apache/kudu/client/RemoteTablet.java File java/kudu-client/src/main/java/org/apache/kudu/client/RemoteTablet.java: Line 70: synchronized (tabletServers) { > Won't GuardedBy complain? I think it's fine in the ctor. There's some kind of happens before relationship with ctors. http://gerrit.cloudera.org:8080/#/c/4757/1/java/kudu-client/src/main/java/org/apache/kudu/client/TabletClient.java File java/kudu-client/src/main/java/org/apache/kudu/client/TabletClient.java: Line 623: * This method is not synchronized. You need to synchronize on this Should this be updated? http://gerrit.cloudera.org:8080/#/c/4757/1/java/kudu-client/src/test/java/org/apache/kudu/client/TestUtils.java File java/kudu-client/src/test/java/org/apache/kudu/client/TestUtils.java: Line 298: static Common.PartitionPB.Builder getFakePartitionPB() { This is a valid partition. Not sure if that matters or not. -- To view, visit http://gerrit.cloudera.org:8080/4757 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: If3ad2190c7e2c7f51cb9ffe6ed3348b62488e675 Gerrit-PatchSet: 1 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Jean-Daniel Cryans <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Dan Burkert <[email protected]> Gerrit-Reviewer: Jean-Daniel Cryans <[email protected]> Gerrit-Reviewer: Kudu Jenkins Gerrit-HasComments: Yes
