[ https://issues.apache.org/jira/browse/PHOENIX-6523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17397835#comment-17397835 ]
ASF GitHub Bot commented on PHOENIX-6523: ----------------------------------------- ramatronics commented on a change in pull request #1280: URL: https://github.com/apache/phoenix/pull/1280#discussion_r687411337 ########## File path: phoenix-core/src/test/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriverTest.java ########## @@ -153,7 +152,56 @@ public void testNegativeGetConnectionInfo() throws SQLException { } } } - + + @Test + public void testConnectorBootstrap() throws SQLException { + // HRPC + ConnectionInfo c1 = ConnectionInfo.create("jdbc:phoenix+hrpc:hostname1,hostname2,hostname3:90210:user/principal:/user.keytab;test=false"); + ReadOnlyProps rop1 = c1.asProps(); + assertEquals("hostname1:90210,hostname2:90210,hostname3:90210", rop1.get("hbase.masters")); + assertTrue(c1.isHRPCBootstrap()); + assertFalse(c1.isZkBootstrap()); + + + ConnectionInfo c2 = ConnectionInfo.create("jdbc:phoenix+hrpc:hostname1,hostname2,hostname3:user/principal:/user.keytab;test=false"); + ReadOnlyProps rop2 = c2.asProps(); + assertEquals("hostname1:60010,hostname2:60010,hostname3:60010", rop2.get("hbase.masters")); + assertTrue(c2.isHRPCBootstrap()); + assertFalse(c2.isZkBootstrap()); + + + // ZK + String[] jdbcUrls = new String[]{ + "jdbc:phoenix+zk:hostname1,hostname2,hostname3:2181:user/principal:/user.keytab;test=false", Review comment: Doesn't look like there's current support for ZK quorums with mismatched ports... also probably because in the example string you provided, the same delimiter to tokenize (`:`) is the same one used to distinguish hostname from the port in each pair. If we do want to support it, would something like this work? ``` jdbc:phoenix+zk:hostname1,hostname2,hostname3:2181,2182,2183:user/principal:/user.keytab;test=false ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@phoenix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support for HBase Registry Implementations through Phoenix connection URL > ------------------------------------------------------------------------- > > Key: PHOENIX-6523 > URL: https://issues.apache.org/jira/browse/PHOENIX-6523 > Project: Phoenix > Issue Type: Improvement > Components: core > Reporter: Ramie Raufdeen > Priority: Major > > https://issues.apache.org/jira/browse/HBASE-23305 > https://issues.apache.org/jira/browse/HBASE-18095 > > HBase now supports a zookeeper-less connection strategy using a Master > Registry implementation. > > For this to work, the client simply needs to set a list of <host:port>s of > the HMaster quorum > > {code:java} > <property> > <name>hbase.masters</name> > <value>master1:16000,master2:16001,master3:16000</value> > </property> > {code} > > To support opting into this from a Phoenix connection URL, we can introduce a > "connector type". We'll leverage the *+* char of [JDBC URL > grammar|https://docs.oracle.com/cd/E17952_01/connector-j-8.0-en/connector-j-reference-jdbc-url-format.html] > to specify the connection type. Connections will start to look something > like this: > {code:java} > jdbc:phoenix+zk:hostname1,2,3...:<properties> > jdbc:phoenix+hrpc:hostname1,2,3...:<properties> > jdbc:phoenix+bigtable:hostname1,2,3...:<properties>{code} > Above are examples of opting into hrpc/zk/bigtable registry implementations > of HBase. > > If no connector is specified, the driver will default to a Zookeeper based > connection. > > > -- This message was sent by Atlassian Jira (v8.3.4#803005)