4 Replies Latest reply on Jul 15, 2017 6:06 PM by Gary Graham-Oracle

    Version 17.2.0.188 SQL Developer Report java.lang.IllegalArgumentException:

    user9184549

      Hi ,

       

      In version  Version 4.1.5.21

      A report ( Bar - vertical stack  ) using the query above

       

      select  to_char(trunc(a.end_time,'MI'),'HH24:MI') end_time,

              b.wait_class wait_class,

              round((sum(a.time_waited) / 10),2) sample_count

      from    gv$waitclassmetric_history a,

              gv$system_wait_class b

      where   a.wait_class# = b.wait_class# and

              b.wait_class != 'Idle'

              and a.inst_id = b.inst_id

              group by  trunc(a.end_time,'MI'), b.wait_class

               order by   trunc(a.end_time,'MI'),2

       

      Is working without problem.

      But in version 17.2.0.188  the report stop with the following details.

       

      java.lang.IllegalArgumentException: Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]

      at java.sql.Timestamp.valueOf(Timestamp.java:204)

      at oracle.jdbc.driver.CharCommonAccessor.getTimestamp(CharCommonAccessor.java:544)

      at oracle.jdbc.driver.T4CVarcharAccessor.getTimestamp(T4CVarcharAccessor.java:959)

      at oracle.jdbc.driver.OracleResultSetImpl.getTimestamp(OracleResultSetImpl.java:1422)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.getTabularDataValue(DisplaySimpleChart.java:525)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.populateTabularData(DisplaySimpleChart.java:392)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.access$600(DisplaySimpleChart.java:61)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart$3.loadData(DisplaySimpleChart.java:214)

      at oracle.dbtools.raptor.controls.display.CancellableQuery.processWork(CancellableQuery.java:132)

      at oracle.dbtools.raptor.controls.display.CancellableQuery.access$100(CancellableQuery.java:22)

      at oracle.dbtools.raptor.controls.display.CancellableQuery$1.doWork(CancellableQuery.java:107)

      at oracle.dbtools.raptor.controls.display.CancellableQuery$1.doWork(CancellableQuery.java:99)

      at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)

      at java.util.concurrent.FutureTask.run(FutureTask.java:266)

      at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:629)

      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

      at java.util.concurrent.FutureTask.run(FutureTask.java:266)

      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

      at java.lang.Thread.run(Thread.java:748)

       

      What is wrong?

      I have missed something?

       

      Thanks

        • 1. Re: Version 17.2.0.188 SQL Developer Report java.lang.IllegalArgumentException:
          Gary Graham-Oracle

          In my 17.2 environment, a report using that query (in Bar - Vertical Stack form with all default report settings) works fine on both 11.2 XE and 12.2.0.1...

          ForumQueryOn17.2.jpg

          using these NLS settings...

          NlsPreferencesOn17.2.JPG

          Could it be a result of different NLS settings?  It also works if Date Format is just DD-MON-RR.

          • 2. Re: Version 17.2.0.188 SQL Developer Report java.lang.IllegalArgumentException:
            user9184549

            Hi,

             

            I finally find why.

            After  some tests , NLS , PATH to java without success

            I find the culprit  I think was the jdbc driver.

            Version  4.1.5.21  ojdbc7.jar is OK

            but  17.2 environment uses ojdbc8.jar

             

            So the culprit was to  unckeck "Use Oracle cliente"

             

             

            Thanks

             

             

             

             

            • 3. Re: Version 17.2.0.188 SQL Developer Report java.lang.IllegalArgumentException:

              So the culprit was to  unckeck "Use Oracle cliente"

              Which raises the question as to why you aren't using the thin driver?

               

              • 4. Re: Version 17.2.0.188 SQL Developer Report java.lang.IllegalArgumentException:
                Gary Graham-Oracle

                Thanks for the feedback. 

                 

                SQL Developer has shipped with a 11.2.0.3 (or higher) JDBC driver since at least the 3.2.0 release and, as I recall, in 4.2 the 11.2.0.3 driver was the minimum required version.  When using 17.2 for your test case, here are results for the JDBC drivers bundled with various Oracle Instant Client versions...

                11.2.0.3 - Fails              (Driver compiled with Java 5)

                11.2.0.4 - Fails              (Driver compiled with Java 5)

                12.1.0.1 - Succeeds      (Driver compiled with Java 6)

                12.1.0.2 - Succeeds      (Driver compiled with Java 6)

                12.2.0.1 - Succeeds      (Driver compiled with Java 8)

                Note:  for these tests I was always careful to modify my PATH variable to point to the desired Oracle Instant Client prior to configuring this preference in Database > Advanced, and I always clicked the Test... button to verify the configuration.  This verifies the OCI/Thick dll will load correctly but, in fact, I actually did not tick the checkbox to use OCI/Thick. 

                 

                From these results we might concluded one of following is true...

                1. The minimum required JDBC driver version for SQL Developer 17.2 is 12.1.0.1.

                2. There are one or more bugs in SQL Developer 17.2 that prevent it from working correctly with the 11.2 drivers.