|
From: Brad H. <Bra...@gb...> - 2007-04-26 22:18:55
|
Hi Rob, My guess is that it is because Oracle treats the empty string as NULL. Try setting a session qualifier in your configuration to see if that helps. =20 Regards, Brad. -----Original Message----- From: qui...@li... [mailto:qui...@li...] On Behalf Of Robert Brueckmann Sent: Friday, 27 April 2007 12:24 AM To: qui...@li... Subject: [Quickfixj-users] jdbc logging QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ QuickFIX/J Support: http://www.quickfixj.org/support/ I have another question regarding jdbc logging. We use an oracle database. My dba set up all of the tables based on the sample SQL scripts for the mysql database. When I fire up the engine which is configured with one session, I get the following log output to the console: ------- beginning initiator... 2007-04-26 10:19:06,478 DEBUG [main] proxool.ShutdownHook (ShutdownHook.java:73) - Registered shutdownHook 2007-04-26 10:19:06,509 DEBUG [main] proxool.HouseKeeperController (HouseKeeperController.java:84) - Registering 'quickfixj-1' house keeper 2007-04-26 10:19:06,509 DEBUG [main] proxool.HouseKeeperController (HouseKeeperController.java:92) - Starting a house keeper thread 2007-04-26 10:19:06,697 DEBUG [main] proxool.ConnectionResetter (ConnectionResetter.java:168) - Remembering default value: isReadOnly() =3D false 2007-04-26 10:19:06,712 DEBUG [main] proxool.ConnectionResetter (ConnectionResetter.java:168) - Remembering default value: getHoldability() =3D 1 2007-04-26 10:19:06,728 DEBUG [main] proxool.ConnectionResetter (ConnectionResetter.java:168) - Remembering default value: getTransactionIsolation() =3D 2 2007-04-26 10:19:06,743 DEBUG [main] proxool.ConnectionResetter (ConnectionResetter.java:168) - Remembering default value: getTypeMap() =3D {SYS.XMLTYPE=3Dclass oracle.xdb.XMLTypeFactory} 2007-04-26 10:19:06,743 DEBUG [main] proxool.ConnectionResetter (ConnectionResetter.java:168) - Remembering default value: getCatalog() =3D null 2007-04-26 10:19:06,743 INFO [main] proxool.ConnectionPool (ConnectionPool.java:623) - Proxool statistics legend: "s - r (a/t/o)" > s=3Dserved, r=3Drefused (only shown if non-zero), a=3Dactive, = t=3Dtotal, o=3Doffline (being tested) 2007-04-26 10:19:06,743 DEBUG [main] proxool.Prototyper (Prototyper.java:204) - 000000 (01/01/00) - Connection #1 created on demand =3D ACTIVE 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.internal.ClientDataSupport 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.OracleConnection 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.internal.OracleConnection 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface java.sql.Connection 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.sql.ClobDBAccess 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.sql.BlobDBAccess 2007-04-26 10:19:06,993 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.sql.BfileDBAccess 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface java.sql.Statement 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.OracleStatement 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.OraclePreparedStatement 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface java.sql.PreparedStatement 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.internal.OraclePreparedStatement 2007-04-26 10:19:08,243 DEBUG [main] proxool.ProxyFactory (ProxyFactory.java:209) - Implementing interface oracle.jdbc.internal.OracleStatement quickfix.ConfigError: error during session initialization at quickfix.mina.initiator.AbstractSocketInitiator.createSessions(AbstractS ocketInitiator.java:132) at quickfix.mina.initiator.AbstractSocketInitiator.<init>(AbstractSocketIni tiator.java:73) at quickfix.mina.initiator.AbstractSocketInitiator.<init>(AbstractSocketIni tiator.java:65) at quickfix.ThreadedSocketInitiator.<init>(ThreadedSocketInitiator.java:32) at com.merlin.pb.fix.MerlinFIXInitiator.main(MerlinFIXInitiator.java:111) Caused by: java.lang.RuntimeException: java.sql.SQLException: ORA-01400: cannot insert NULL into ("FIX"."SESSIONS"."SESSION_QUALIFIER") at quickfix.JdbcStoreFactory.create(JdbcStoreFactory.java:44) at quickfix.Session.<init>(Session.java:270) at quickfix.DefaultSessionFactory.create(DefaultSessionFactory.java:152) at quickfix.mina.SessionConnector.createSession(SessionConnector.java:112) at quickfix.mina.initiator.AbstractSocketInitiator.createSessions(AbstractS ocketInitiator.java:126) ... 4 more Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into ("FIX"."SESSIONS"."SESSION_QUALIFIER") at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:12 5) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav a:182) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStat ement.java:630) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement. java:1081) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare dStatement.java:2905) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStateme nt.java:2996) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.logicalcobwebs.proxool.ProxyStatement.invoke(ProxyStatement.java:100 ) at org.logicalcobwebs.proxool.ProxyStatement.intercept(ProxyStatement.java: 57) at $java.sql.Statement$$EnhancerByProxool$$a742985f.execute(<generated>) at quickfix.JdbcStore.loadCache(JdbcStore.java:130) at quickfix.JdbcStore.<init>(JdbcStore.java:65) at quickfix.JdbcStoreFactory.create(JdbcStoreFactory.java:42) ... 8 more 2007-04-26 10:19:08,993 DEBUG [ShutdownHook] proxool.ShutdownHook (ShutdownHook.java:93) - Running ShutdownHook 2007-04-26 10:19:08,993 INFO [Shutdown Hook] proxool.ConnectionPool (ConnectionPool.java:490) - Shutting down 'quickfixj-1' pool immediately [Shutdown Hook] 2007-04-26 10:19:09,009 DEBUG [Shutdown Hook] proxool.ConnectionPool (ConnectionPool.java:447) - 000001 (00/00/00) - #0001 removed because of shutdown. 2007-04-26 10:19:09,009 DEBUG [Shutdown Hook] proxool.ConnectionPool (ConnectionPool.java:553) - Connection #1 closed 2007-04-26 10:19:09,009 INFO [Shutdown Hook] proxool.ConnectionPool (ConnectionPool.java:570) - 'quickfixj-1' pool has been closed down by Shutdown Hook in 16 milliseconds. 2007-04-26 10:19:09,009 INFO [Shutdown Hook] proxool.PrototyperController (PrototyperController.java:100) - Stopping Prototyper thread 2007-04-26 10:19:09,009 INFO [Shutdown Hook] proxool.HouseKeeperController (HouseKeeperController.java:107) - Stopping HouseKeeper thread ----- Why is it trying to insert NULL initially in a column specifically set to NOT NULL? Is this JDBC logging just not compatible with an oracle back-end? We're using the latest oracle jdbc drivers and the latest release of the quickfix/j engine...any thoughts? Thanks, Rob Merlin Securities - #1 Prime Broker North America, #1 Prime Broker Single Strategy Funds, #1 Prime Broker Funds Under $100M - Global Custodian 2007 =20 -------------------------------------------------------- This message contains information from Merlin Securities, LLC, or from one of its affiliates, that may be confidential and privileged. If you are not an intended recipient, please refrain from any disclosure, copying, distribution or use of this information and note that such actions are prohibited. If you have received this transmission in error, please notify the sender immediately by telephone or by replying to this transmission. =20 Merlin Securities, LLC is a registered broker-dealer. Services offered through Merlin Securities, LLC are not insured by the FDIC or any other Federal Government Agency, are not deposits of or guaranteed by Merlin Securities, LLC and may lose value. Nothing in this communication shall constitute a solicitation or recommendation to buy or sell a particular security. ------------------------------------------------------------------------ - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Quickfixj-users mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfixj-users |