2 Replies Latest reply on Aug 27, 2015 9:09 PM by John McGinnis-Oracle

    Is there a change in functionality between SQL Developer 4.1.1 & 4.0.3

    Mani-Oracle

      Hi All,

        One of my customers is facing below problem.

       

      SQL Developer version: 4.0.3 & 4.1.1

      Oracle DB version: 11.2.0.4.0 (64 bit)

       

      On SQL Developer 4.0.3

      Customer recently switched to Instant client 12.1.0.2.0 (64 bit) & SQL Developer 4.0.3. While connecting to DB via SQL Developer 4.0.3 with 'OCI Thick Driver' enabled they get ORA-28011 error & users can not view their own objects. While connecting to the same DB via SQL Developer 4.0.3 with 'OCI Thick Driver' disabled they get ORA-28011 error but users can view their own objects

       

      Error message

      ORA-28011 : The account will expire soon; change your password now

      Vendor Code: 28011

       

      On SQL Developer 4.1.1

      Customer can connect to DB using SQL Developer 4.1.1 with 'OCI Thick Driver' enabled & view their objects for the 1st time (They get ORA-28011 errors) When they connect to same DB '2nd time' they get java below exception. If they delete roaming properties file in the C:\Users\<username>\AppData\Roaming\SQL Developer folder & restart SQL Developer 4.1.1 it works again for '1st time' but for '2nd time' same java exception. When 'OCI Thick Driver' is disabled, SQL Developer 4.1.1 would not crash & no java exception.

       

      Java exception

      java.lang.ArithmeticException: / by zero

      at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedStatement.java:1387)

      at oracle.jdbc.driver.OracleCallableStatement.<init>(OracleCallableStatement.java:102)

      at oracle.jdbc.driver.T2CCallableStatement.<init>(T2CCallableStatement.java:110)

      at oracle.jdbc.driver.T2CDriverExtension.allocateCallableStatement(T2CDriverExtension.java:96)

      at oracle.jdbc.driver.PhysicalConnection.prepareCall(PhysicalConnection.java:2107)

      at oracle.jdbc.driver.T2CConnection.prepareCall(T2CConnection.java:53)

      at oracle.jdbc.driver.PhysicalConnection.prepareCall(PhysicalConnection.java:2045)

      at oracle.jdbc.driver.T2CConnection.prepareCall(T2CConnection.java:53)

      at oracle.dbtools.db.OracleUtil.checkAccess(OracleUtil.java:409)

      at oracle.dbtools.db.DBUtil.hasAccess(DBUtil.java:1898)

      at oracle.dbtools.raptor.query.QueryUtils.checkNonOracleAccess(QueryUtils.java:589)

      at oracle.dbtools.raptor.query.QueryUtils.getQuery(QueryUtils.java:399)

      at oracle.dbtools.raptor.query.QueryUtils.getQuery(QueryUtils.java:250)

      at oracle.dbtools.raptor.query.ObjectQueries.getQuery(ObjectQueries.java:43)

      at oracle.dbtools.raptor.navigator.db.xml.XmlObjectFactory.createFolderInstance(XmlObjectFactory.java:60)

      at oracle.dbtools.raptor.navigator.db.xml.XmlTypeOwnerInstance.listTypeFolders(XmlTypeOwnerInstance.java:93)

      at oracle.dbtools.raptor.navigator.db.impl.TypeContainerTreeNode.loadTypeFolders(TypeContainerTreeNode.java:111)

      at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode$LoadTask.doWork(DatabaseTreeNode.java:183)

      at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode$LoadTask.doWork(DatabaseTreeNode.java:112)

      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:621)

      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:745)

       

      Thanks & Regards,

      Manikandan