Uploaded image for project: 'Teiid'
  1. Teiid
  2. TEIID-4759

PrestoDB - not all custom timezone IDs are supported

    Details

    • Type: Enhancement
    • Status: Resolved (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 9.2
    • Component/s: Documentation
    • Labels:
      None

      Description

      The PrestoDB JDBC driver uses Joda Time library. If user needs to set custom timezone for Teiid server (e.g. exporting in JAVA_OPTS), he/she cannot use GMT format as Joda Time does not recognize it [1]. However, equivalent format Etc/* can be used (see this page).
      It would be nice to have a note in the documentation.

      [1] Exception
      Unable to find source-code formatter for language: plain. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
      09:52:27,653 WARN  [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue1) Connector worker process failed for atomic-request=5D1r1sDRkmmk.0.0.0: org.teiid.translator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [SQL: SELECT g_0.intkey AS c_0, g_0.stringkey AS c_1, g_0.intnum AS c_2, g_0.stringnum AS c_3, g_0.floatnum AS c_4, g_0.longnum AS c_5, g_0.doublenum AS c_6, g_0.bytenum AS c_7, g_0.datevalue AS c_8, g_0.timevalue AS c_9, g_0.timestampvalue AS c_10, g_0.booleanvalue AS c_11, g_0.charvalue AS c_12, g_0.shortvalue AS c_13, cast(g_0.bigintegervalue AS bigint) AS c_14, g_0.bigdecimalvalue AS c_15, g_0.objectvalue AS c_16 FROM smalla AS g_0 LIMIT 100]
      	at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131) [translator-jdbc-8.12.5.redhat-8.jar:8.12.5.redhat-8]
      	at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:364)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0-internal]
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0-internal]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0-internal]
      	at java.lang.reflect.Method.invoke(Method.java:483) [rt.jar:1.8.0-internal]
      	at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
      	at com.sun.proxy.$Proxy49.execute(Unknown Source)
      	at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
      	at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
      	at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0-internal]
      	at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
      	at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
      	at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
      	at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0-internal]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0-internal]
      	at java.lang.Thread.run(Thread.java:744) [rt.jar:1.8.0-internal]
      Caused by: java.sql.SQLException: Error executing query
      	at com.facebook.presto.jdbc.PrestoStatement.execute(PrestoStatement.java:232)
      	at com.facebook.presto.jdbc.PrestoStatement.executeQuery(PrestoStatement.java:69)
      	at org.jboss.jca.adapters.jdbc.WrappedStatement.executeQuery(WrappedStatement.java:344)
      	at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:119) [translator-jdbc-8.12.5.redhat-8.jar:8.12.5.redhat-8]
      	... 18 more
      Caused by: java.lang.IllegalArgumentException: The datetime zone id 'GMT+01:00' is not recognised
      	at com.facebook.presto.jdbc.internal.joda.time.DateTimeZone.forID(DateTimeZone.java:229)
      	at com.facebook.presto.jdbc.PrestoResultSet.<init>(PrestoResultSet.java:122)
      	at com.facebook.presto.jdbc.PrestoStatement.execute(PrestoStatement.java:212)
      	... 21 more
      

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                jdurani Juraj Duráni
                Reporter:
                jdurani Juraj Duráni
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: