Hi,
It seems that the bug with URL jdbc string is gone. I have configured my connection with teradata database. The connection is valid, although i have two more problems now:
- in DB_INPUT_TABLE I can’t perform SQL Query Validation or Schema extraction
- getting NoClassDefFoundError Exception while running simple reader task.
Is there any additional configuration for jdbc drivers required?
Console Log:
*** CloverETL framework/transformation graph runner ver 2.4, (c) 2002-06 D.Pavlis, released under GNU Lesser General Public License ***
Running with framework version: 2.4 build#2069 compiled 10/07/2008 16:35:29
INFO [main] - Loading default properties from: defaultProperties
DEBUG [main] - Plugin org.jetel.bulkloader loaded.
id - org.jetel.bulkloader
version - 2.4.8
provider-name -
component { className = org.jetel.component.OracleDataReader; type = ORACLE_DATA_READER; }
component { className = org.jetel.component.OracleDataWriter; type = ORACLE_DATA_WRITER; }
component { className = org.jetel.component.MysqlDataReader; type = MYSQL_DATA_READER; }
component { className = org.jetel.component.DB2DataWriter; type = DB2_DATA_WRITER; }
component { className = org.jetel.component.InformixDataWriter; type = INFORMIX_DATA_WRITER; }
component { className = org.jetel.component.MsSqlDataWriter; type = MS_SQL_DATA_WRITER; }
component { className = org.jetel.component.MysqlDataWriter; type = MYSQL_DATA_WRITER; }
component { className = org.jetel.component.PostgreSqlDataWriter; type = POSTGRESQL_DATA_WRITER; }
DEBUG [main] - Plugin org.jetel.component loaded.
id - org.jetel.component
version - 2.4.8
provider-name - null
component { className = org.jetel.component.DataReader; type = DATA_READER; }
component { className = org.jetel.component.DataWriter; type = DATA_WRITER; }
component { className = org.jetel.component.DelimitedDataReader; type = DELIMITED_DATA_READER; }
component { className = org.jetel.component.DelimitedDataWriter; type = DELIMITED_DATA_WRITER; }
component { className = org.jetel.component.SimpleCopy; type = SIMPLE_COPY; }
component { className = org.jetel.component.Concatenate; type = CONCATENATE; }
component { className = org.jetel.component.SimpleGather; type = SIMPLE_GATHER; }
component { className = org.jetel.component.Reformat; type = REFORMAT; }
component { className = org.jetel.component.DBInputTable; type = DB_INPUT_TABLE; }
component { className = org.jetel.component.Sort; type = SORT; }
component { className = org.jetel.component.DBOutputTable; type = DB_OUTPUT_TABLE; }
component { className = org.jetel.component.FixLenDataWriter; type = FIXLEN_DATA_WRITER; }
component { className = org.jetel.component.Dedup; type = DEDUP; }
component { className = org.jetel.component.FixLenDataReader; type = FIXLEN_DATA_READER; }
component { className = org.jetel.component.Merge; type = MERGE; }
component { className = org.jetel.component.MergeJoin; type = MERGE_JOIN; }
component { className = org.jetel.component.MergeJoin; type = EXT_MERGE_JOIN; }
component { className = org.jetel.component.MergeJoin; type = SORTED_JOIN; }
component { className = org.jetel.component.Trash; type = TRASH; }
component { className = org.jetel.component.DBExecute; type = DB_EXECUTE; }
component { className = org.jetel.component.HashJoin; type = HASH_JOIN; }
component { className = org.jetel.component.HashJoin; type = EXT_HASH_JOIN; }
component { className = org.jetel.component.CheckForeignKey; type = CHECK_FOREIGN_KEY; }
component { className = org.jetel.component.DBFDataReader; type = DBF_DATA_READER; }
component { className = org.jetel.component.ExtFilter; type = EXT_FILTER; }
component { className = org.jetel.component.ExtSort; type = EXT_SORT; }
component { className = org.jetel.component.Partition; type = PARTITION; }
component { className = org.jetel.component.DataIntersection; type = DATA_INTERSECTION; }
component { className = org.jetel.component.Aggregate; type = AGGREGATE; }
component { className = org.jetel.component.SystemExecute; type = SYS_EXECUTE; }
component { className = org.jetel.component.RunGraph; type = RUN_GRAPH; }
component { className = org.jetel.component.KeyGenerator; type = KEY_GEN; }
component { className = org.jetel.component.AproxMergeJoin; type = APROX_MERGE_JOIN; }
component { className = org.jetel.component.DBJoin; type = DBJOIN; }
component { className = org.jetel.component.XLSReader; type = XLS_READER; }
component { className = org.jetel.component.XLSWriter; type = XLS_WRITER; }
component { className = org.jetel.component.CloverDataWriter; type = CLOVER_WRITER; }
component { className = org.jetel.component.CloverDataReader; type = CLOVER_READER; }
component { className = org.jetel.component.StructureWriter; type = STRUCTURE_WRITER; }
component { className = org.jetel.component.Normalizer; type = NORMALIZER; }
component { className = org.jetel.component.Denormalizer; type = DENORMALIZER; }
component { className = org.jetel.component.JmsReader; type = JMS_READER; }
component { className = org.jetel.component.JmsWriter; type = JMS_WRITER; }
component { className = org.jetel.component.LookupJoin; type = LOOKUP_JOIN; }
component { className = org.jetel.component.LookupTableReaderWriter; type = LOOKUP_TABLE_READER_WRITER; }
component { className = org.jetel.component.DataGenerator; type = DATA_GENERATOR; }
component { className = org.jetel.component.MultiLevelReader; type = MULTI_LEVEL_READER; }
component { className = org.jetel.component.SequenceChecker; type = SEQUENCE_CHECKER; }
component { className = org.jetel.component.TextTableWriter; type = TEXT_TABLE_WRITER; }
component { className = org.jetel.component.XmlXPathReader; type = XML_XPATH_READER; }
component { className = org.jetel.component.Pacemaker; type = PACEMAKER; }
component { className = org.jetel.component.SpeedLimiter; type = SPEED_LIMITER; }
component { className = org.jetel.component.JavaExecute; type = JAVA_EXECUTE; }
component { className = org.jetel.component.XmlWriter; type = XML_WRITER; }
component { className = org.jetel.component.XSLDataTransformer; type = XSL_TRANSFORMER; }
DEBUG [main] - Plugin org.jetel.connection loaded.
id - org.jetel.connection
version - 2.4.8
provider-name - null
connection { className = org.jetel.connection.DBConnection; type = JDBC; }
connection { className = org.jetel.connection.JmsConnection; type = JMS; }
DEBUG [main] - Plugin org.jetel.engine loaded.
id - org.jetel.engine
version - 2.4.8
provider-name - null
dictionaryEntry { className = org.jetel.graph.dictionary.StringDictionaryEntryProvider; type = string; }
DEBUG [main] - Plugin org.jetel.jdbc loaded.
id - org.jetel.jdbc
version - 2.4.8
provider-name - null
jdbcDriver { driverLibrary = lib/mysql/mysql-connector-java-5.1.5-bin.jar; name = MySQL; dbDriver = org.gjt.mm.mysql.Driver; urlHint = jdbc:mysql://hostname:3306/database; database = MYSQL; }
jdbcDriver { driverLibrary = lib/postgre/postgresql-8.3-603.jdbc3.jar; name = PostgreSQL; dbDriver = org.postgresql.Driver; urlHint = jdbc:postgresql://hostname/database; database = POSTGRE; }
DEBUG [main] - Plugin org.jetel.lookup loaded.
id - org.jetel.lookup
version - 2.4.8
provider-name - null
lookup { className = org.jetel.lookup.SimpleLookupTable; type = simpleLookup; }
lookup { className = org.jetel.lookup.DBLookupTable; type = dbLookup; }
lookup { className = org.jetel.lookup.RangeLookupTable; type = rangeLookup; }
DEBUG [main] - Plugin org.jetel.sequence loaded.
id - org.jetel.sequence
version - 2.4.8
provider-name - null
sequence { className = org.jetel.sequence.SimpleSequence; type = SIMPLE_SEQUENCE; }
sequence { className = org.jetel.sequence.PrimitiveSequence; type = PRIMITIVE_SEQUENCE; }
DEBUG [main] - Plugin org.jetel.thirdparty loaded.
id - org.jetel.thirdparty
version - 2.4.8
provider-name - null
component { className = org.jetel.component.XMLExtract; type = XML_EXTRACT; }
component { className = org.jetel.component.Filter; type = FILTER; }
component { className = com.linagora.component.LdapReader; type = LDAP_READER; }
component { className = com.linagora.component.LdapWriter; type = LDAP_WRITER; }
DEBUG [main] - Plugin org.jetel.tlfunction loaded.
id - org.jetel.tlfunction
version - 2.4.8
provider-name - null
tlfunction { libraryName = math; className = org.jetel.interpreter.extensions.MathLib; function = sqrt,log,log10,exp,round,pow,pi,e,random; }
tlfunction { libraryName = date; className = org.jetel.interpreter.extensions.DateLib; function = today,dateadd,datediff,trunc; }
tlfunction { libraryName = string; className = org.jetel.interpreter.extensions.StringLib; function = concat,uppercase,lowercase,substring,left,right,trim,length,soundex,replace,split,char_at,is_blank,is_ascii,is_number,is_integer,is_long,is_date,remove_diacritic,remove_blank_space,get_alphanumeric_chars,translate,join,index_of,count_char; }
tlfunction { libraryName = convert; className = org.jetel.interpreter.extensions.ConvertLib; function = num2str,date2str,str2date,date2num,str2num,try_convert,base64byte,byte2base64,bits2str,str2bits,hex2byte,byte2hex,num2num,num2bool,bool2num,str2bool,long2date,date2long,to_string; }
Graph definition file: graph\teraReader.grf
INFO [main] - Checking graph configuration...
INFO [main] - Initializing connection:
INFO [main] - DBConnection driver[com.ncr.teradata.TeraDriver]:url[jdbc:teradata://demotdat]:user[student01] ... OK
INFO [WatchDog] - Thread started.
INFO [WatchDog] - Running on 2 CPU(s) max available memory for JVM 65088 KB
INFO [WatchDog] - [Clover] Initializing phase: 0
DEBUG [WatchDog] - initializing edges:
DEBUG [WatchDog] - all edges initialized successfully...
DEBUG [WatchDog] - initializing nodes:
DEBUG [WatchDog] - DATA_WRITER0 ...OK
DEBUG [WatchDog] - DB_INPUT_TABLE0 ...OK
INFO [WatchDog] - [Clover] phase: 0 initialized successfully.
INFO [WatchDog] - Starting up all nodes in phase [0]
DEBUG [WatchDog] - DATA_WRITER0 ... started
DEBUG [WatchDog] - DB_INPUT_TABLE0 ... started
INFO [WatchDog] - Sucessfully started all nodes in phase!
DEBUG [DB_INPUT_TABLE0] - DBConnection (Connection0), component [DB_INPUT_TABLE0] attempts to connect to the database
INFO [WatchDog] - ---------------------** Start of tracking Log for phase [0] **-------------------
INFO [WatchDog] - Time: 22/07/08 12:54:09
INFO [WatchDog] - Node Status Port #Records #KB Rec/s KB/s
INFO [WatchDog] - ----------------------------------------------------------------------------------
INFO [WatchDog] - DATA_WRITER0 RUNNING
INFO [WatchDog] - %cpu:.. In:0 0 0 0 0
INFO [WatchDog] - DB_INPUT_TABLE0 RUNNING
INFO [WatchDog] - %cpu:.. Out:0 0 0 0 0
INFO [WatchDog] - ---------------------------------** End of Log **--------------------------------
Exception in thread "DB_INPUT_TABLE0" java.lang.NoClassDefFoundError: com/ncr/teradata/jtdgss/TdgssManager
at com.ncr.teradata.TeraEncrypt.getTDgssVersion(TeraEncrypt.java:563)
at com.ncr.teradata.jdbc_4.parcel.ConfigFeatureTdgss.<init>(ConfigFeatureTdgss.java:44)
at com.ncr.teradata.jdbc_4.statemachine.InitDBConfigState.action(InitDBConfigState.java:66)
at com.ncr.teradata.jdbc_4.statemachine.LogonController.run(LogonController.java:49)
at com.ncr.teradata.jdbc_4.TDSession.<init>(TDSession.java:193)
at com.ncr.teradata.jdbc_3.ifjdbc_4.TeraLocalConnection.<init>(TeraLocalConnection.java:93)
at com.ncr.teradata.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:50)
at com.ncr.teradata.TeraDriver.connect(TeraDriver.java:260)
at org.jetel.connection.DBConnection.connect(DBConnection.java:282)
at org.jetel.connection.DBConnection.getConnection(DBConnection.java:457)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:194)
at org.jetel.graph.Node.run(Node.java:371)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: com.ncr.teradata.jtdgss.TdgssManager
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
... 15 more