Looks like that actually might be a bug. HBase's ZKConfig returns a host:port, comma separated string which we then put as the connection URL. Never caught in mini-clusters since we only ever return a single ZK.
I'll see if I can reproduce and then let you all know when/if I file JIRA ------------------- Jesse Yates @jesse_yates jyates.github.com On Wed, Sep 3, 2014 at 1:05 PM, Mujtaba Chohan <[email protected]> wrote: > Phoenix connection URL should be of this form > jdbc:phoenix:zookeeper2,zookeeper1,zookeeper3:2181 > > > > On Wed, Sep 3, 2014 at 12:11 PM, Jesse Yates <[email protected]> > wrote: > >> It looks like the connection string that the tracing module is using >> isn't configured correctly. Is 2181 the client port on which you are >> running zookeeper? >> >> @James Taylor - phoenix can connect to multiple ZK nodes this way, right? >> >> ------------------- >> Jesse Yates >> @jesse_yates >> jyates.github.com >> >> >> On Wed, Sep 3, 2014 at 12:59 AM, [email protected] < >> [email protected]> wrote: >> >>> Hi all, >>> I am trying to facilitate tracing according to the instructions here >>> <http://phoenix.apache.org/tracing.html>. Here are my several >>> operations: >>> 1. copy the phoenix-hadoop2-compat/bin/ attributes files into my hbase >>> classpath($HBASE_HOME/conf) >>> 2. modify hbase-site.xml and adding the following properties: >>> <property> >>> <name>phoenix.trace.frequency</name> >>> <value>always</value> >>> </property> >>> 3. restart hbase cluster and run phoenix through sqlline client: >>> ./bin/sqlline.py zookeeper1,zookeeper2,zookeeper3 >>> as zookeeper1,zookeeper2,zookeeper3 are my zookeeper hosts >>> 4. When I am trying to see the tracing feature thourgh sqlline query as >>> the following: >>> select count (*) from mytable; >>> I checked the regionserver log and found the following exception. >>> Any available hints? >>> >>> 2014-09-03 15:40:53,218 ERROR [tracing] impl.MetricsSinkAdapter: Got >>> sink exception and over retry limit, suppressing further error messages >>> java.lang.RuntimeException: java.sql.SQLException: ERROR 102 (08001): >>> Malformed connection url. >>> jdbc:phoenix:zookeeper2:2181,zookeeper1:2181,zookeeper3:2181; >>> at >>> org.apache.phoenix.trace.PhoenixTableMetricsWriter.lazyInitialize(PhoenixTableMetricsWriter.java:110) >>> >>> at >>> org.apache.phoenix.trace.PhoenixTableMetricsWriter.addMetrics(PhoenixTableMetricsWriter.java:185) >>> >>> at >>> org.apache.phoenix.trace.PhoenixMetricsSink.putMetrics(PhoenixMetricsSink.java:92) >>> >>> at >>> org.apache.hadoop.metrics2.impl.MetricsSinkAdapter.consume(MetricsSinkAdapter.java:173) >>> >>> at >>> org.apache.hadoop.metrics2.impl.MetricsSinkAdapter.consume(MetricsSinkAdapter.java:41) >>> >>> at >>> org.apache.hadoop.metrics2.impl.SinkQueue.consumeAll(SinkQueue.java:87) >>> at >>> org.apache.hadoop.metrics2.impl.MetricsSinkAdapter.publishMetricsFromQueue(MetricsSinkAdapter.java:127) >>> >>> at >>> org.apache.hadoop.metrics2.impl.MetricsSinkAdapter$1.run(MetricsSinkAdapter.java:86) >>> >>> Caused by: java.sql.SQLException: ERROR 102 (08001): Malformed >>> connection url. >>> jdbc:phoenix:zookeeper2:2181,zookeeper1:2181,zookeeper3:2181; >>> at >>> org.apache.phoenix.exception.SQLExceptionCode$Factory$1.newException(SQLExceptionCode.java:333) >>> >>> at >>> org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:133) >>> >>> at >>> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver$ConnectionInfo.getMalFormedUrlException(PhoenixEmbeddedDriver.java:183) >>> >>> at >>> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver$ConnectionInfo.create(PhoenixEmbeddedDriver.java:238) >>> >>> at >>> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:144) >>> >>> at >>> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:129) >>> >>> at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:133) >>> at java.sql.DriverManager.getConnection(DriverManager.java:571) >>> at java.sql.DriverManager.getConnection(DriverManager.java:187) >>> at org.apache.phoenix.util.QueryUtil.getConnection(QueryUtil.java:213) >>> at >>> org.apache.phoenix.trace.PhoenixTableMetricsWriter.lazyInitialize(PhoenixTableMetricsWriter.java:100) >>> >>> ... 7 more >>> >>> ------------------------------ >>> ------------------------------ >>> >>> CertusNet >>> >>> >>> >> >
