Uploaded image for project: 'Zeppelin'
  1. Zeppelin
  2. ZEPPELIN-1459

Zeppelin JDBC URL properties mangled

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.8.0
    • Interpreters
    • None

    Description

      I'm using Phoenix's thin client which needs to include a property at the end of the JDBC URL.

      I can set the driver up correctly in the Interpreter menu, and the first paragraph runs successfully:
      %jdbc(phoenix) select count from system.catalog

      But any paragraphs beyond the first fail with "No suitable driver found errors."

      I added debug statements to dump the interpreter properties.

      First Paragraph Log:

      select count from system.catalog'
      INFO [2016-09-19 12:15:45,558] (

      {pool-2-thread-2} JDBCInterpreter.java[interpret]:462) - PropertyKey: phoenix, SQL command: 'select count from system.catalog'
      INFO [2016-09-19 12:15:45,561] ({pool-2-thread-2}

      JDBCInterpreter.java[getConnection]:217) - PROPS:

      {user=phoenixuser, url=jdbc:phoenix:thin:url=http://localhost:8765;serialization=PROTOBUF, password=, hbase.client.retries.number=1, driver=org.apache.calcite.avatica.remote.Driver}

      INFO [2016-09-19 12:15:45,561] (

      {pool-2-thread-2} JDBCInterpreter.java[getConnection]:218) - org.apache.calcite.avatica.remote.Driver
      INFO [2016-09-19 12:15:45,575] ({pool-2-thread-2}

      JDBCInterpreter.java[getConnection]:223) - URL: jdbc:phoenix:thin:url=http://localhost:8765;serialization=PROTOBUF, EMPTY AUTH
      INFO [2016-09-19 12:15:45,745] (

      {pool-2-thread-2} SqlCompleter.java[getSqlKeywordsCompletions]:142) - JDBC DriverName:/phoenix-remote-jdbc-driver-sql.keywords
      INFO [2016-09-19 12:15:45,916] ({pool-2-thread-2}

      SchedulerFactory.java[jobFinished]:137) - Job remoteInterpretJob_1474301745528 finished by scheduler org.apache.zeppelin.jdbc.JDBCInterpreter2049516896
      INFO [2016-09-19 12:15:58,598] (

      {pool-2-thread-2} SchedulerFactory.java[jobStarted]:131) - Job remoteInterpretJob_1474301758598 started by scheduler org.apache.zeppelin.jdbc.JDBCInterpreter2049516896

      Note: For any paragraph beyond the first, the "serialization=PROTOBUF" value at the end of phoenix.url gets split into its own phoenix property.

      Second Paragraph Log:

      INFO [2016-09-19 12:15:58,598] ({pool-2-thread-2}

      JDBCInterpreter.java[interpret]:453) - Run SQL command '(phoenix)
      select * from system.catalog'
      INFO [2016-09-19 12:15:58,598] (

      {pool-2-thread-2} JDBCInterpreter.java[interpret]:462) - PropertyKey: phoenix, SQL command: 'select * from system.catalog'
      INFO [2016-09-19 12:15:58,599] ({pool-2-thread-2}

      JDBCInterpreter.java[getConnection]:217) - PROPS:

      {serialization=PROTOBUF, user=phoenixuser, url=http://localhost:8765, password=, hbase.client.retries.number=1, driver=org.apache.calcite.avatica.remote.Driver}

      INFO [2016-09-19 12:15:58,599] (

      {pool-2-thread-2} JDBCInterpreter.java[getConnection]:218) - org.apache.calcite.avatica.remote.Driver
      INFO [2016-09-19 12:15:58,599] ({pool-2-thread-2}

      JDBCInterpreter.java[getConnection]:223) - URL: http://localhost:8765, EMPTY AUTH
      ERROR [2016-09-19 12:15:58,600] (

      {pool-2-thread-2}

      JDBCInterpreter.java[executeSql]:432) - Cannot run select * from system.catalog
      java.sql.SQLException: No suitable driver found for http://localhost:8765

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              randerzander Randy Gelhausen
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: