[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15882389#comment-15882389 ] Hudson commented on HBASE-16991: FAILURE: Integrated in Jenkins build HBase-Trunk_matrix #2562 (See [https://builds.apache.org/job/HBase-Trunk_matrix/2562/]) HBASE-16991 Make the initialization of AsyncConnection asynchronous (zhangduo: rev 62de29e6f29efef5a87c57c6ff0c4995ee790f1f) * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/AbstractTestAsyncTableScan.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTable.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncSingleRequestRpcRetryingCaller.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncRegionLocatorTimeout.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableBatch.java * (edit) hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncConnectionImpl.java * (edit) hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncRegistry.java * (edit) hbase-client/src/main/java/org/apache/hadoop/hbase/client/ZKAsyncRegistry.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableScannerCloseWhileSuspending.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestZKAsyncRegistry.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableNoncedRetry.java * (edit) hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncAdmin.java * (edit) hbase-endpoint/src/test/java/org/apache/hadoop/hbase/client/TestAsyncAggregationClient.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableScanRenewLease.java > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch, HBASE-16991-v1.patch, > HBASE-16991-v2.patch, HBASE-16991-v3.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15882108#comment-15882108 ] Duo Zhang commented on HBASE-16991: --- The failed UTs are unrelated. Will commit shortly. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch, HBASE-16991-v1.patch, > HBASE-16991-v2.patch, HBASE-16991-v3.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15882095#comment-15882095 ] Hadoop QA commented on HBASE-16991: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 1m 38s {color} | {color:blue} Docker mode activated. {color} | | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 14 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 44s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 7m 21s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 49s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 30s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 1m 8s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 55s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 31s {color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 16s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 0s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 51s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 51s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 35s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 56s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 39m 36s {color} | {color:green} Patch does not cause any errors with Hadoop 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 4m 16s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 27s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 41s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 109m 12s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 4m 33s {color} | {color:green} hbase-endpoint in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 6s {color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 191m 19s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestAsyncAdmin | | Timed out junit tests | org.apache.hadoop.hbase.regionserver.TestRegionReplicas | | | org.apache.hadoop.hbase.regionserver.TestRegionMergeTransactionOnCluster | | | org.apache.hadoop.hbase.regionserver.TestStore | | | org.apache.hadoop.hbase.regionserver.TestCompactionState | \\ \\ || Subsystem || Report/Notes || | Docker | Client=1.13.1 Server=1.13.1 Image:yetus/hbase:8d52d23 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12854369/HBASE-16991-v3.patch | | JIRA Issue | HBASE-16991 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux 6c50a22de750 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality |
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15881878#comment-15881878 ] Hadoop QA commented on HBASE-16991: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 13m 1s {color} | {color:blue} Docker mode activated. {color} | | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 14 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 24s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 59s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 2s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 1s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 35s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 43s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 48s {color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 10s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 7s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 1s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 1s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 59s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 34s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 24m 58s {color} | {color:green} Patch does not cause any errors with Hadoop 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 7s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 47s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 20s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 40m 10s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 51s {color} | {color:green} hbase-endpoint in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 28s {color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 100m 52s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | Timed out junit tests | org.apache.hadoop.hbase.master.locking.TestLockManager | \\ \\ || Subsystem || Report/Notes || | Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:8d52d23 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12854359/HBASE-16991-v3.patch | | JIRA Issue | HBASE-16991 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux 970bf3955fe8 4.4.0-43-generic #63-Ubuntu SMP Wed Oct 12 13:48:03 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / c90d484 | | Default Java | 1.8.0_121 | | findbugs | v3.0.0 | | unit | https://builds.apache.org/job/PreCommit-HBASE-Build/5820/artifact/patchprocess/patch-unit-hbase-server.txt | | unit test logs |
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15881848#comment-15881848 ] stack commented on HBASE-16991: --- +1 Looks great. We have HBASE-17008 and HBASE-17009 for making this all more palatable to use. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch, HBASE-16991-v1.patch, > HBASE-16991-v2.patch, HBASE-16991-v3.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15880402#comment-15880402 ] Hadoop QA commented on HBASE-16991: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 28s {color} | {color:blue} Docker mode activated. {color} | | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 13 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 23s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 0s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 7s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 6s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 35s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 57s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 50s {color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 11s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 14s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 6s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 6s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 6s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 36s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 27m 1s {color} | {color:green} Patch does not cause any errors with Hadoop 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 30s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 51s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 11s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 96m 45s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 38s {color} | {color:green} hbase-endpoint in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 38s {color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 148m 8s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestZKAsyncRegistry | \\ \\ || Subsystem || Report/Notes || | Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:8d52d23 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12854173/HBASE-16991-v2.patch | | JIRA Issue | HBASE-16991 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux 363e3c1a472b 3.13.0-106-generic #153-Ubuntu SMP Tue Dec 6 15:44:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / 8fb44fa | | Default Java | 1.8.0_121 | | findbugs | v3.0.0 | | unit | https://builds.apache.org/job/PreCommit-HBASE-Build/5813/artifact/patchprocess/patch-unit-hbase-server.txt | | unit test logs |
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631983#comment-15631983 ] Yu Li commented on HBASE-16991: --- So after all above discussion we decide to commit the original patch instead of the one with "v1" suffix, right? To be clear, I'm +1 on that. Thanks. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631977#comment-15631977 ] Yu Li commented on HBASE-16991: --- Ok, I admit that this is some correctness of integration rather than unit testing, so agree not to cover _here_. I'm used to checking how a new feature works through UT rather than hbase-exmple/docs though, maybe only my personal habit :-) > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631934#comment-15631934 ] Yu Li commented on HBASE-16991: --- Also added HBASE-17009 proposing to bring back the managed connection and connection caching feature (for sync call) we ever had in existing versions with reason listed in description, JFYI. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631843#comment-15631843 ] Duo Zhang commented on HBASE-16991: --- As I said above, this is an usage, not something that needs to cover. We call the createAsyncConnection method in UT is enough. I think what you want is an example? We should add some example code in hbase-example, and also in documentation. This is an separated issue I think. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631833#comment-15631833 ] Yu Li commented on HBASE-16991: --- Ok, instead of talking about the detailed implementation, I think there's no UT covering the full asynchronous path, is there? Should we cover this? > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631728#comment-15631728 ] Duo Zhang commented on HBASE-16991: --- No. This is only an usage of CompletableFuture. If get works then thenXXX or whenXXX should also work. I do not think we need to test the logic of CompletableFuture... > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631717#comment-15631717 ] Yu Li commented on HBASE-16991: --- I think we still need to add some UT like {{CONN.get().thenAccept(this::test);}} in {{TestSingletonAsyncConnection}} since these Singleton stuff won't go in our code base for now. We need to cover the correctness of full asynchronous usage. Agree? > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631621#comment-15631621 ] Duo Zhang commented on HBASE-16991: --- {quote} How about for now adding this class to the connection factory class javadoc as an example on how you might keep around your async connection {quote} I think the CAS trick is not easy to understand for end users... It is not easy to find out the errors If they copy-paste it from the javadoc but missing some important details... I think we could discuss it also in HBASE-17008? It is also something like a connection cache. {quote} Do you want to make it more clear that Connection creation is expensive and that app should therefore try and cache them in the javadoc somewhere around here? {quote} Fine. Let me add this to the javadoc in ConnectionFactory. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631592#comment-15631592 ] stack commented on HBASE-16991: --- I added HBASE-17008 (not that anyone will pay attention). Hopefully we can pick up some of the experience you have trying to make users happy over in that issue. Thanks lads. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631547#comment-15631547 ] stack commented on HBASE-16991: --- bq. What is removal of ClusterRegistryFactory about? It was added by mistake superceded by AsyncRegistryFactory? Ignore above remark. I see your earlier comment on why this change now. Pardon me. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631538#comment-15631538 ] Yu Li commented on HBASE-16991: --- Sure, could you open the JIRA sir (so it could draw more attention)? Thanks. [~stack] And forgive me being greedy here [~Apache9] (Smile.) > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631509#comment-15631509 ] stack commented on HBASE-16991: --- See my comment belown [~carp84] Lets open new issue to discuss. Its important topic. Meantime, let this issue go bac to being about getting in some of the low-level async plumbing. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631492#comment-15631492 ] stack commented on HBASE-16991: --- What do I think? You are the two fellows w/ active 'customers' that you need to keep happy. I can give an opinion but I think yours would carry more weight so I defer to you fellows. Here is my opinion since you asked for it. Singletons are evil (smile). SingletonAsyncConnection has an ugly name but it is excellent illustrative code of how you might keep around a reference to a Connection in your app. How about for now adding this class to the connection factory class javadoc as an example on how you might keep around your async connection? It does not have to go in as part of this patch. We might add it later after we've figured out more about how to make use of the async connection? bq. I suggest you guys also introduce a thin layer on top of the hbase client to do the connection caching work. Can we try and make it so hbase has this thin layer if possible so everyone doesn't have to build it (follow on issue). On patch... What is removal of ClusterRegistryFactory about? It was added by mistake superceded by AsyncRegistryFactory? Do you want to make it more clear that Connection creation is expensive and that app should therefore try and cache them in the javadoc somewhere around here? 35 * A non-instantiable class that manages creation of {@link Connection}s. Managing the lifecycle of 36 * the {@link Connection}s to the cluster is the responsibility of the caller. From a 37 * {@link Connection}, {@link Table} implementations are retrieved with 38 * {@link Connection#getTable(TableName)}. Example: Do we need to test that Connection keeps working across Cluster restarts? That it is resilient? > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631456#comment-15631456 ] Yu Li commented on HBASE-16991: --- On the contrary, I think we should make it easy for user to use, HBase is a database not library. Especially when previous released versions (and even latest stable version) supports connection caching, I call this a *behavior change* which causes inconvenience for users. I understand you have some service layer on top of HBase there, but it just proves HBase is not convenient enough to use so you wrapped it up. Honestly I think this is disadvantage of HBase rather than advantage. OTOH, if we depend on the way user uses HBase to make sure of some correctness (like only create a connection per process to avoid too many connections setup to Zookeeper/RS), I think we are not doing good. Maybe this is not the right place to discuss this connection caching topic, but we already brought it up so just let it be (Smile). [~Apache9] [~stack] Thanks. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15631229#comment-15631229 ] Duo Zhang commented on HBASE-16991: --- I do not think this should go into the HBase codebase. You have lots of ways to do the connection caching based on your usage and the SingletonAsyncConnection is only one of them. In our company, we store all the cluster configs on zk, and the users only need to specify a cluster name when constructing a connection. So it is very easy for us to implement a global connection cache as we can use the cluster name as the key. And in other companies they may have other methods to cache connections. I suggest you guys also introduce a thin layer on top of the hbase client to do the connection caching work. [~stack] What do you think? Thanks. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15629517#comment-15629517 ] Hadoop QA commented on HBASE-16991: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 18s {color} | {color:blue} Docker mode activated. {color} | | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 7 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 13s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 24s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 56s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 48s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 24s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 37s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 43s {color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 8s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 5s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 58s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 58s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 50s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 26s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 29m 53s {color} | {color:green} Patch does not cause any errors with Hadoop 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha1. {color} | | {color:red}-1{color} | {color:red} findbugs {color} | {color:red} 1m 6s {color} | {color:red} hbase-client generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0) {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 47s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 5s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 92m 11s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 27s {color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 140m 59s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | FindBugs | module:hbase-client | | | Null passed for non-null parameter of java.util.concurrent.CompletableFuture.completedFuture(Object) in org.apache.hadoop.hbase.client.SingletonAsyncConnection.close() At SingletonAsyncConnection.java:of java.util.concurrent.CompletableFuture.completedFuture(Object) in org.apache.hadoop.hbase.client.SingletonAsyncConnection.close() At SingletonAsyncConnection.java:[line 82] | | Timed out junit tests | org.apache.hadoop.hbase.snapshot.TestExportSnapshotNoCluster | | | org.apache.hadoop.hbase.client.TestCheckAndMutate | | | org.apache.hadoop.hbase.client.TestHCM | | | org.apache.hadoop.hbase.client.TestCloneSnapshotFromClientWithRegionReplicas | | | org.apache.hadoop.hbase.client.TestMobSnapshotCloneIndependence | \\ \\ || Subsystem || Report/Notes || | Docker | Client=1.11.2 Server=1.11.2 Image:yetus/hbase:7bda515 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12836582/HBASE-16991-v1.patch | | JIRA Issue | HBASE-16991 | | Optional
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15629184#comment-15629184 ] Yu Li commented on HBASE-16991: --- Wow, thanks for the quick action, and the SingletonAsyncConnection looks great. We also have a show case of full asynchronous now in TestSingletonAsyncConnection. So everything lgtm now, +1 > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991-v1.patch, HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15628859#comment-15628859 ] Duo Zhang commented on HBASE-16991: --- In our company we have introduced a {{SingletonHBaseClient}}. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15628836#comment-15628836 ] Yu Li commented on HBASE-16991: --- Yes, but we ever had a {{getConnection}} in {{ConnectionManager}} in branch-1, and I'm not sure why we deprecated that. In our case it cost us quite some energy to educate users to only create one connection per process... And I think it would be useful if we could have some getConenction method in async client. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15628799#comment-15628799 ] Duo Zhang commented on HBASE-16991: --- We do not cache connections for async client either. The method is named createConnection... But I can write a test to show you how to implement a simple asynchronous connection cache, maybe we could add it into the async client. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15628772#comment-15628772 ] Hadoop QA commented on HBASE-16991: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 14s {color} | {color:blue} Docker mode activated. {color} | | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 6 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 23s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 17s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 51s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 45s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 22s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 38s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 42s {color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 9s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 3s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 51s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 51s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 44s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 23s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 31m 33s {color} | {color:green} Patch does not cause any errors with Hadoop 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha1. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 36s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 52s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 3s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 98m 32s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 29s {color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 149m 2s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.replication.TestSerialReplication | | | hadoop.hbase.master.TestAssignmentListener | | Timed out junit tests | org.apache.hadoop.hbase.client.TestFromClientSide | | | org.apache.hadoop.hbase.client.TestAsyncGetMultiThread | | | org.apache.hadoop.hbase.client.TestHCM | | | org.apache.hadoop.hbase.client.TestRestoreSnapshotFromClientWithRegionReplicas | | | org.apache.hadoop.hbase.client.TestMobSnapshotCloneIndependence | \\ \\ || Subsystem || Report/Notes || | Docker | Client=1.11.2 Server=1.11.2 Image:yetus/hbase:7bda515 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12836527/HBASE-16991.patch | | JIRA Issue | HBASE-16991 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux eea29f3765fb 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality |
[jira] [Commented] (HBASE-16991) Make the initialization of AsyncConnection asynchronous
[ https://issues.apache.org/jira/browse/HBASE-16991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15628732#comment-15628732 ] Yu Li commented on HBASE-16991: --- It seems to me in UT cases we are still using blocking mode (future.get) although we already have {{createAsyncConnection}} returning a CompletableFuture, mind take use of it and make the UT an example of fully asynchronous? Another question is that for blocking mode we no longer cache the connections for customer and depend on recommending user to only call create connection method once inside a single jvm process (honestly I don't even think this is a good idea...), but shall we follow the same pattern for async connections? If so we always have to block at the first time of getting connection although the implementation is non-blocking? Thanks. > Make the initialization of AsyncConnection asynchronous > --- > > Key: HBASE-16991 > URL: https://issues.apache.org/jira/browse/HBASE-16991 > Project: HBase > Issue Type: Sub-task > Components: Client >Affects Versions: 2.0.0 >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16991.patch > > > Now the ConnectionFactory.createAsyncConnection is still blocking. We should > make it return a CompletableFuture to make the async client fully > asynchronous. -- This message was sent by Atlassian JIRA (v6.3.4#6332)