[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16748283#comment-16748283 ] stack commented on HBASE-21585: --- Oh, there is a comment in plan asking for update on plan. Seems like you put some of the plan in the above.. .Could hoist it up into the parent. Thanks. > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512-v1.patch, > HBASE-21585-HBASE-21512-v2.patch, HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16748281#comment-16748281 ] stack commented on HBASE-21585: --- bq. Maybe we should add default implementation to these two methods that throws UnsupportedOperation exception? Yes. For those who might have Connection impls already. bq. and there maybe no other stack trace deep in side the hbase code, as all things are event-driven now nod. Makes sense. Any chance of including the server and region we're going against when we throw an exception? bq. RegionLocations is IA.Private Change for hbase3? Thanks. > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512-v1.patch, > HBASE-21585-HBASE-21512-v2.patch, HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16748104#comment-16748104 ] Hadoop QA commented on HBASE-21585: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 20s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {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 41 new or modified test files. {color} | || || || || {color:brown} HBASE-21512 Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 26s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 6m 47s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 6m 25s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 44s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 5m 17s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 7m 45s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 2m 25s{color} | {color:green} HBASE-21512 passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 18s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 5m 26s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 6m 30s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 0m 52s{color} | {color:red} hbase-client generated 2 new + 98 unchanged - 2 fixed = 100 total (was 100) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 41s{color} | {color:green} hbase-client: The patch generated 0 new + 243 unchanged - 36 fixed = 243 total (was 279) {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 1m 29s{color} | {color:red} hbase-server: The patch generated 2 new + 542 unchanged - 31 fixed = 544 total (was 573) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 21s{color} | {color:green} hbase-mapreduce: The patch generated 0 new + 4 unchanged - 1 fixed = 4 total (was 5) {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 0m 33s{color} | {color:red} hbase-thrift: The patch generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 16s{color} | {color:green} The patch passed checkstyle in hbase-endpoint {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 18s{color} | {color:green} hbase-it: The patch generated 0 new + 3 unchanged - 3 fixed = 3 total (was 6) {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} shadedjars {color} | {color:green} 5m 15s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 11m 16s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 8m 1s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 2m 15s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 3m 40s{color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red}257m 46s{color} | {color:red} hbase-server in the patch failed.
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747850#comment-16747850 ] Duo Zhang commented on HBASE-21585: --- [~stack] I've uploaded the big patch to RB. PTAL. Thanks. > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512-v1.patch, > HBASE-21585-HBASE-21512-v2.patch, HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747467#comment-16747467 ] Hadoop QA commented on HBASE-21585: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 13s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {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 41 new or modified test files. {color} | || || || || {color:brown} HBASE-21512 Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 25s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 17s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 4m 46s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 5s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 8s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 5m 33s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 47s{color} | {color:green} HBASE-21512 passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 13s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 11s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 4m 45s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 0m 37s{color} | {color:red} hbase-client generated 2 new + 98 unchanged - 2 fixed = 100 total (was 100) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 35s{color} | {color:green} hbase-client: The patch generated 0 new + 243 unchanged - 36 fixed = 243 total (was 279) {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 1m 15s{color} | {color:red} hbase-server: The patch generated 1 new + 542 unchanged - 31 fixed = 543 total (was 573) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 17s{color} | {color:green} The patch passed checkstyle in hbase-mapreduce {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 28s{color} | {color:green} The patch passed checkstyle in hbase-thrift {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 13s{color} | {color:green} The patch passed checkstyle in hbase-endpoint {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 15s{color} | {color:green} hbase-it: The patch generated 0 new + 3 unchanged - 3 fixed = 3 total (was 6) {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} shadedjars {color} | {color:green} 4m 11s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 8m 39s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 6m 3s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 53s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 3m 21s{color} | {color:green} hbase-client in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green}127m 47s{color} | {color:green} hbase-server in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747432#comment-16747432 ] Duo Zhang commented on HBASE-21585: --- Review board link: https://reviews.apache.org/r/69798/ > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512-v1.patch, > HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747302#comment-16747302 ] Duo Zhang commented on HBASE-21585: --- {quote} do we want to add getHbck to Connection? We were trying to hide it from general audience (Do we need the getHbck that takes a ServerName. I think it was added as a just-in-case... maybe we should wait till need if we are considering exposing getHbck generally). {quote} The intention here is that, we will move ClusterConnection to hbase-server module, and the hbck stuffs should remain in hbase-client so I moved the method to Connection interface, and mark the method as IA.LimitedPrivate. Maybe we should add default implementation to these two methods that throws UnsupportedOperation exception? {quote} This for 3.0? {quote} Yes, the change on HBASE-21512 is radical, and will only be merged into master branch. Replace the sync implementation with async implementation can removed lots of redundant code, but the downside is that, the error stack error will be broken, for example, if your call is hung, you can not see a whole stack trace in jstack, instead, you will your call is hung in the Table implementation, may be waiting on a CompletableFuture, and there maybe no other stack trace deep in side the hbase code, as all things are event-driven now. {quote} Can below take a Connection Interface? AsyncProcess(ConnectionImplementation hc ... ditto in BufferedMutatorImpl or is it that these constructors are private and the use of the CI is all internal? {quote} These are all sync client related stuffs. The AsyncProcess will be completely removed(this is one of most important goal here, the code is hard to maintain now...), and for BufferedMutator, we will replace the BufferedMutatorImpl with a new implementation based on async client. {quote} locateRegion is changed to return an Interface instead? {quote} I do not change the return value of this method? I just removed all the locateRegion and relocateRegion methods which return a HRegionLocation in ClusterConnection, as we can just RegionLocator to get the HRegionLocation, it is IA.Public. The methods which return a RegionLocations are still there, as RegionLocations is IA.Private. {quote} isMasterRunning is deprecated? You want to just remove? {quote} IIRC the comment says do not use it any more? {quote} I'm lazy. How does async client do isTableAvailable ? {quote} You can see the code in RawAsyncHBaseAdmin. It will check whether the table is enabled, and then get all the locations of the regions for this table, to see if there are not deployed ones. And if splitKeys is provided, will check whether the regions and splitKeys are matched. {quote} There'll be an AsyncConnnectionImpl or ConnectionImpl is shared between sync and asycn? {quote} The AsyncConnectionImpl will be the core, and we will wrap a Connection upon the AsyncConnectionImpl. And also for AsyncClusterConnection and ClusterConnection. This is the plan. > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747239#comment-16747239 ] stack commented on HBASE-21585: --- High-level, do we want to add getHbck to Connection? We were trying to hide it from general audience (Do we need the getHbck that takes a ServerName. I think it was added as a just-in-case... maybe we should wait till need if we are considering exposing getHbck generally). This for 3.0? Can below take a Connection Interface? AsyncProcess(ConnectionImplementation hc ... ditto in BufferedMutatorImpl or is it that these constructors are private and the use of the CI is all internal? locateRegion is changed to return an Interface instead? isMasterRunning is deprecated? You want to just remove? I'm lazy. How does async client do isTableAvailable ? There'll be an AsyncConnnectionImpl or ConnectionImpl is shared between sync and asycn? Thanks > Use ConnectionImplementation instead of ClusterConnection for sync client > implementation > > > Key: HBASE-21585 > URL: https://issues.apache.org/jira/browse/HBASE-21585 > Project: HBase > Issue Type: Sub-task > Components: Client >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Attachments: HBASE-21585-HBASE-21512.patch > > > So we can remove lots of method declarations in ClusterConnection, if they > are only used by sync client implementation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-21585) Use ConnectionImplementation instead of ClusterConnection for sync client implementation
[ https://issues.apache.org/jira/browse/HBASE-21585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16747210#comment-16747210 ] Hadoop QA commented on HBASE-21585: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 11s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {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 36 new or modified test files. {color} | || || || || {color:brown} HBASE-21512 Compile Tests {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} 4m 47s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 5m 16s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 14s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 37s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 6m 6s{color} | {color:green} HBASE-21512 passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 52s{color} | {color:green} HBASE-21512 passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 17s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 5m 27s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 5m 53s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 0m 49s{color} | {color:red} hbase-client generated 2 new + 98 unchanged - 2 fixed = 100 total (was 100) {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 0m 40s{color} | {color:red} hbase-client: The patch generated 2 new + 243 unchanged - 36 fixed = 245 total (was 279) {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 1m 31s{color} | {color:red} hbase-server: The patch generated 15 new + 526 unchanged - 26 fixed = 541 total (was 552) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 20s{color} | {color:green} The patch passed checkstyle in hbase-mapreduce {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 34s{color} | {color:green} The patch passed checkstyle in hbase-thrift {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 13s{color} | {color:green} The patch passed checkstyle in hbase-endpoint {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 19s{color} | {color:green} hbase-it: The patch generated 0 new + 3 unchanged - 3 fixed = 3 total (was 6) {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} shadedjars {color} | {color:green} 5m 7s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 10m 53s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:red}-1{color} | {color:red} findbugs {color} | {color:red} 1m 24s{color} | {color:red} hbase-client generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0) {color} | | {color:red}-1{color} | {color:red} javadoc {color} | {color:red} 0m 25s{color} | {color:red} hbase-client generated 1 new + 2 unchanged - 0 fixed = 3 total (was 2) {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 3m 27s{color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red}146m 3s{color} | {color:red} hbase-server in