2 Replies Latest reply on Aug 28, 2015 1:29 AM by Gary Graham-Oracle

    Connection to Teradata 15.0


      I have loaded the JDBC drivers for Teradata 15.0 into SQL Developer version  My initial test of the connection works fine, but when I try to connect I get a null pointer exception when it tries to enumerate the teradata catalog.



      at oracle.dbtools.raptor.navigator.db.xml.NavigatorHook.getConnectionType(NavigatorHook.java:231)

      at oracle.dbtools.raptor.navigator.ObjectFactoryRegistry.createFactory(ObjectFactoryRegistry.java:164)

      at oracle.dbtools.raptor.navigator.ObjectFactoryRegistry.getFactory(ObjectFactoryRegistry.java:153)

      at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode.getObjectFactory(DatabaseTreeNode.java:84)

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

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

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

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

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

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

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

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

        • 1. Re: Connection to Teradata 15.0
          Gary Graham-Oracle

          A NullPointerException at that spot in the code suggests SQL Developer had difficulty finding which database connection type to use...

          1. Maybe a null String value where the "Teradata" connection type should be in the connections.xml file

          2. Otherwise something went wrong during the higher level call through ObjectFactoryRegistry that constructs the connection info details.


          On Windows, for example, the default folder location for connections.xml in your user profile settings should be...

          C:\Users\<your_userid>\AppData\Roaming\SQL Developer\system4.\o.jdeveloper.db.connection.

          Check the section of connections.xml for your Teradata connection name (after <Reference name="<Teradata connection name>") to see if  the Contents tag is empty or has something other than "Teradata" there.

          <StringRefAddr addrType="RaptorConnectionType">



          In addition, the following link for configuring JDBC drivers for Third Party DB connections Configure JDBC Drivers implies installing drivers for Teradata 12 or higher should be OK, but in practice I haven't noticed any Teradata-related bugs logged against SQL Developer for anything past Teradata 13. Maybe someone from our team who works with migrations from Teradata could comment.  Otherwise, perhaps you need to retry with an older driver version?

          • 2. Re: Connection to Teradata 15.0
            Gary Graham-Oracle

            As It turns out, SQL Developer includes release-specific plugins for each of Teradata 12, 13, and 14. Since Teradata 15 only came out in mid-2014, perhaps it is not surprising that recent SQL Developer releases do not include a plugin for it. 


            These plugins are included as part of the Database Migration feature of SQL Developer.  For all I know, they also presumably influence which Teradata object types can display in the navigator tree.  The code for creating connection definitions for Teradata databases does not seem to check the release number.


            So my best guess is that someone needs to log an enhancement request to include a migration plugin for Teradata 15.