I ran into an NPE when reattaching a detached parent object with an uninitialized list proxy and then adding a child to that list. The problem seems to come from the getListIndex method. It accesses the _children collection to calculate the list index, and in doing so causes an NPE in the AbstractPersistentCollection queue iterator. If I initialize the unitialized list proxy prior to calling transaction.commit( ), then the error goes away. I'm not sure if this is a bug or just esoteric usage, but here is a simple test case that will duplicate the problem.
- Jesse
Need help with Hibernate? Read this first:
http://www.hibernate.org/ForumMailingli ... AskForHelp
Hibernate version: 3.1
SQL
Code:
create table parent (id number(10) primary key, version number(10));
create table child (id number(10) primary key, version number(10), parent number(10) references parent (id), list_index number(10));
insert into parent values (1,0);
insert into child values (1,0,1,0);
insert into child values (2,0,1,1);
Mapping documents:Hibernate.cfg.xmlCode:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:jesse</property>
<property name="connection.username">playground_owner</property>
<property name="connection.password">playground_owner</property>
<property name="c3p0.acquire_increment">1</property>
<property name="c3p0.idle_test_period">100</property>
<property name="c3p0.max_size">100</property>
<property name="c3p0.max_statements">0</property>
<property name="c3p0.min_size">10</property>
<property name="c3p0.timeout">100</property>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="show_sql">true</property>
<mapping resource="playground/Parent.hbm.xml"/>
<mapping resource="playground/Child.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Parent.hbm.xmlCode:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="playground">
<class name="Parent" table="parent">
<id name="id" column="id" type="int" unsaved-value="-1">
<generator class="native">
<param name="sequence">id_seq</param>
</generator>
</id>
<version name="version" column="version" unsaved-value="negative"/>
<list name="children" cascade="save-update" inverse="true" lazy="true">
<key column="parent"/>
<index column="list_index" type="integer"/>
<one-to-many class="Child"/>
</list>
</class>
</hibernate-mapping>
Child.hbm.xmlCode:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="playground">
<class name="Child" table="child">
<id name="id" column="id" type="int" unsaved-value="-1">
<generator class="native">
<param name="sequence">id_seq</param>
</generator>
</id>
<version name="version" column="version" unsaved-value="negative"/>
<many-to-one name="parent" column="parent" class="Parent" fetch="join" lazy="false"/>
<property name="listIndex" column="list_index" type="int"/>
</class>
</hibernate-mapping>
Code between sessionFactory.openSession() and session.close():Code:
package playground;
import org.hibernate.*;
import org.hibernate.cfg.*;
/**
*
* @author JESSE_SWEETLAND
*/
public class Test
{
private static final Configuration _config;
private static final SessionFactory _sessionFactory;
static
{
try
{
_config = new Configuration( );
_config.configure( );
_sessionFactory = _config.buildSessionFactory( );
}
catch( Throwable t )
{
t.printStackTrace( );
throw new ExceptionInInitializerError( t );
}
}
public static void main( String[] arguments )
{
try
{
Session s1 = _sessionFactory.openSession( );
Transaction t1 = s1.beginTransaction( );
Parent p1 = (Parent)s1.load( Parent.class, new Integer( 1 ) );
t1.commit( );
s1.close( );
Session s2 = _sessionFactory.openSession( );
Transaction t2 = s2.beginTransaction( );
s2.lock( p1, LockMode.NONE );
p1.addChild( new Child( ) );
t2.commit( );
s2.close( );
}
catch( Throwable t )
{
t.printStackTrace( );
}
}
}
Full stack trace of any exception that occurs:Code:
java.lang.NullPointerException
at org.hibernate.collection.AbstractPersistentCollection$1.hasNext(AbstractPersistentCollection.java:494)
at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:289)
at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:185)
at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:160)
at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:108)
at org.hibernate.engine.Cascade.cascade(Cascade.java:248)
at org.hibernate.event.def.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:130)
at org.hibernate.event.def.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:121)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:65)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:980)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:353)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at playground.Test.main(Test.java:54)
Name and version of the database you are using: Oracle 10g
The generated SQL (show_sql=true):Code:
select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
select id_seq.nextval from dual
select children0_.parent as parent1_, children0_.id as id1_, children0_.list_index as list4_1_, children0_.id as id1_0_, children0_.version as version1_0_, children0_.parent as parent1_0_, children0_.list_index as list4_1_0_ from child children0_ where children0_.parent=?
Debug level Hibernate log excerpt:
[code]
org.hibernate.cfg.Environment: 01/12/06 08:28:38: main: INFO: Hibernate 3.1
org.hibernate.cfg.Environment: 01/12/06 08:28:38: main: INFO: hibernate.properties not found
org.hibernate.cfg.Environment: 01/12/06 08:28:38: main: INFO: using CGLIB reflection optimizer
org.hibernate.cfg.Environment: 01/12/06 08:28:38: main: INFO: using JDK 1.4 java.sql.Timestamp handling
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: INFO: configuring from resource: /hibernate.cfg.xml
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: INFO: Configuration resource: /hibernate.cfg.xml
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:38: main: DEBUG: trying to locate http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd in classpath under org/hibernate/
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:38: main: DEBUG: found http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd in classpath
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: connection.driver_class=oracle.jdbc.driver.OracleDriver
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: connection.url=jdbc:oracle:thin:@localhost:1521:jesse
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: connection.username=playground_owner
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: connection.password=playground_owner
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.acquire_increment=1
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.idle_test_period=100
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.max_size=100
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.max_statements=0
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.min_size=10
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: c3p0.timeout=100
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: dialect=org.hibernate.dialect.Oracle9Dialect
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: show_sql=true
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: DEBUG: null<-org.dom4j.tree.DefaultAttribute@1e59128 [Attribute: name resource value "playground/Parent.hbm.xml"]
org.hibernate.cfg.Configuration: 01/12/06 08:28:38: main: INFO: Reading mappings from resource: playground/Parent.hbm.xml
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:38: main: DEBUG: trying to locate http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd in classpath under org/hibernate/
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:38: main: DEBUG: found http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd in classpath
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: INFO: Mapping class: playground.Parent -> parent
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: id -> id
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: version -> version
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: children
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: DEBUG: null<-org.dom4j.tree.DefaultAttribute@281d4b [Attribute: name resource value "playground/Child.hbm.xml"]
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: Reading mappings from resource: playground/Child.hbm.xml
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:39: main: DEBUG: trying to locate http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd in classpath under org/hibernate/
org.hibernate.util.DTDEntityResolver: 01/12/06 08:28:39: main: DEBUG: found http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd in classpath
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: INFO: Mapping class: playground.Child -> child
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: id -> id
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: version -> version
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: parent -> parent
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: DEBUG: Mapped property: listIndex -> list_index
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: Configured SessionFactory: null
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: DEBUG: properties: {show_sql=true, java.vendor=Sun Microsystems Inc., hibernate.connection.url=jdbc:oracle:thin:@localhost:1521:jesse, c3p0.min_size=10, os.name=Windows XP, sun.boot.class.path=C:\j2sdk1.4.2\jre\lib\rt.jar;C:\j2sdk1.4.2\jre\lib\i18n.jar;C:\j2sdk1.4.2\jre\lib\sunrsasign.jar;C:\j2sdk1.4.2\jre\lib\jsse.jar;C:\j2sdk1.4.2\jre\lib\jce.jar;C:\j2sdk1.4.2\jre\lib\charsets.jar;C:\j2sdk1.4.2\jre\classes, hibernate.c3p0.max_size=100, sun.java2d.fontpath=, java.vm.specification.vendor=Sun Microsystems Inc., c3p0.max_size=100, java.runtime.version=1.4.2-b28, hibernate.c3p0.min_size=10, c3p0.acquire_increment=1, user.name=JESSE_SWEETLAND, connection.driver_class=oracle.jdbc.driver.OracleDriver, hibernate.c3p0.timeout=100, user.language=en, sun.boot.library.path=C:\j2sdk1.4.2\jre\bin, dialect=org.hibernate.dialect.Oracle9Dialect, java.version=1.4.2, user.timezone=America/Chicago, sun.arch.data.model=32, java.endorsed.dirs=C:\j2sdk1.4.2\jre\lib\endorsed, sun.cpu.isalist=pentium i486 i386, file.encoding.pkg=sun.io, file.separator=\, java.specification.name=Java Platform API Specification, hibernate.cglib.use_reflection_optimizer=true, java.class.version=48.0, user.country=US, connection.url=jdbc:oracle:thin:@localhost:1521:jesse, java.home=C:\j2sdk1.4.2\jre, java.vm.info=mixed mode, os.version=5.1, path.separator=;, c3p0.idle_test_period=100, connection.password=playground_owner, java.vm.version=1.4.2-b28, java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory, hibernate.connection.password=playground_owner, user.variant=, java.awt.printerjob=sun.awt.windows.WPrinterJob, sun.io.unicode.encoding=UnicodeLittle, awt.toolkit=sun.awt.windows.WToolkit, hibernate.connection.username=playground_owner, user.home=C:\Documents and Settings\JESSE_SWEETLAND, java.specification.vendor=Sun Microsystems Inc., java.library.path=C:\j2sdk1.4.2\jre\bin;.;C:\WINDOWS\System32;C:\WINDOWS;C:\oracle\product\10.1.0\db_1\bin;C:\oracle\product\10.1.0\db_1\jre\1.4.2\bin\client;C:\oracle\product\10.1.0\db_1\jre\1.4.2\bin;C:\Program Files\PVCS\vm\win32\bin;C:\Program Files\PVCS\vm\common\bin\win32;J:\PVCS\vm8003w\PROGRA~1\Merant\vm\win32\bin;J:\PVCS\vm8003w\PROGRA~1\Merant\vm\common\bin\win32;C:\j2sdk1.4.2\bin;c:\Oracle_9\bin;C:\ORANT\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\PROGRA~1\GRADKE~1\DBSIGN~1\lib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\nls;C:\WINDOWS\system32\nls\ENGLISH;C:\DE3270;C:\Program Files\NetManage\Windows;c:\orawin\bin;C:\ORANT\jdk\bin;C:\Program Files\apache-ant-1.6.5\bin;Z:.;C:\ORAWIN\BIN;, java.vendor.url=http://java.sun.com/, hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver, connection.username=playground_owner, java.vm.vendor=Sun Microsystems Inc., hibernate.dialect=org.hibernate.dialect.Oracle9Dialect, java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition, java.class.path=C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-antlr-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-junit-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-launcher-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-swing-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\antlr-2.7.6rc1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\asm-attrs.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\asm.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\c3p0-0.9.0.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\cglib-2.1.3.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\cleanimports.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\commons-collections-2.1.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\commons-logging-1.0.4.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\concurrent-1.3.2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\connector.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\dom4j-1.6.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ehcache-1.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jaas.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jacc-1_0-fr.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jaxen-1.1-beta-7.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-cache.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-common.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-jmx.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-system.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jdbc2_0-stdext.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jgroups-2.2.7.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jta.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\junit-3.8.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\log4j-1.2.11.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\oscache-2.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\proxool-0.8.3.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\swarmcache-1.0rc2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\syndiag2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\versioncheck.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\xerces-2.6.2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\xml-apis.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\hibernate3.jar;C:\oracle\product\10.1.0\db_1\jdbc\lib\ojdbc14_g.jar;C:\Documents and Settings\JESSE_SWEETLAND\Playground\build\classes, c3p0.timeout=100, java.vm.specification.name=Java Virtual Machine Specification, java.vm.specification.version=1.0, sun.cpu.endian=little, sun.os.patch.level=Service Pack 1, java.io.tmpdir=C:\WINDOWS\TEMP\, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, os.arch=x86, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.ext.dirs=C:\j2sdk1.4.2\jre\lib\ext, user.dir=C:\Documents and Settings\JESSE_SWEETLAND\Playground, hibernate.c3p0.idle_test_period=100, line.separator=
, java.vm.name=Java HotSpot(TM) Client VM, hibernate.c3p0.acquire_increment=1, file.encoding=Cp1252, java.specification.version=1.4, c3p0.max_statements=0, hibernate.show_sql=true, hibernate.c3p0.max_statements=0}
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: DEBUG: Preparing to build session factory with filters : {}
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: processing extends queue
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: processing collection mappings
org.hibernate.cfg.CollectionSecondPass: 01/12/06 08:28:39: main: DEBUG: Second pass for collection: playground.Parent.children
org.hibernate.cfg.HbmBinder: 01/12/06 08:28:39: main: INFO: Mapping collection: playground.Parent.children -> child
org.hibernate.cfg.CollectionSecondPass: 01/12/06 08:28:39: main: DEBUG: Mapped collection key: parent, index: list_index, one-to-many: playground.Child
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: processing association property references
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: INFO: processing foreign key constraints
org.hibernate.cfg.Configuration: 01/12/06 08:28:39: main: DEBUG: resolving reference to class: playground.Parent
org.hibernate.connection.C3P0ConnectionProvider: 01/12/06 08:28:39: main: INFO: C3P0 using driver: oracle.jdbc.driver.OracleDriver at URL: jdbc:oracle:thin:@localhost:1521:jesse
org.hibernate.connection.C3P0ConnectionProvider: 01/12/06 08:28:39: main: INFO: Connection properties: {user=playground_owner, password=****}
org.hibernate.connection.C3P0ConnectionProvider: 01/12/06 08:28:39: main: INFO: autocommit mode: false
com.mchange.v2.log.MLog: 01/12/06 08:28:39: main: INFO: MLog clients using log4j logging.
com.mchange.v2.c3p0.C3P0Registry: 01/12/06 08:28:39: main: INFO: Initializing c3p0-0.9.0 [built 11-July-2005 00:43:29 -0400; debug? true; trace: 10]
com.mchange.v2.c3p0.PoolBackedDataSource: 01/12/06 08:28:39: main: INFO: Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@476128 [ connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@125fefa [ acquireIncrement -> 1, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 125fefa, idleConnectionTestPeriod -> 100, initialPoolSize -> 10, maxIdleTime -> 100, maxPoolSize -> 100, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 10, nestedDataSource -> com.mchange.v2.c3p0.DriverManagerDataSource@f0c85e [ description -> null, driverClass -> null, factoryClassLocation -> null, identityToken -> f0c85e, jdbcUrl -> jdbc:oracle:thin:@localhost:1521:jesse, properties -> {user=******, password=******} ], preferredTestQuery -> null, propertyCycle -> 300, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, usesTraditionalReflectiveProxies -> false ], factoryClassLocation -> null, identityToken -> 476128, numHelperThreads -> 3 ]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:39: main: DEBUG: awaitAvailable(): [unknown]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:39: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 0, unused: 0, excluded: 0]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 1, unused: 1, excluded: 0]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: main: DEBUG: resource age is okay: com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53 ---> age: 0 max: 100000 [com.mchange.v2.resourcepool.BasicResourcePool@1b5998f]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 1, unused: 0, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:40: main: INFO: RDBMS: Oracle, version: Personal Oracle Database 10g Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 2, unused: 1, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:40: main: INFO: JDBC driver: Oracle JDBC driver, version: 10.1.0.2.0
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 4, unused: 3, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:40: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 4, unused: 3, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.dialect.Dialect: 01/12/06 08:28:40: main: INFO: Using dialect: org.hibernate.dialect.Oracle9Dialect
org.hibernate.transaction.TransactionFactoryFactory: 01/12/06 08:28:41: main: INFO: Using default transaction strategy (direct JDBC transactions)
org.hibernate.transaction.TransactionManagerLookupFactory: 01/12/06 08:28:41: main: INFO: No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Automatic flush during beforeCompletion(): disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Automatic session close at end of transaction: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: JDBC batch size: 15
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: JDBC batch updates for versioned data: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Scrollable result sets: enabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: DEBUG: Wrap result sets: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: JDBC3 getGeneratedKeys(): disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Connection release mode: auto
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Default batch fetch size: 1
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Generate SQL with comments: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Order SQL updates by primary key: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
org.hibernate.hql.ast.ASTQueryTranslatorFactory: 01/12/06 08:28:41: main: INFO: Using ASTQueryTranslatorFactory
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Query language substitutions: {}
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Second-level cache: enabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Query cache: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Cache provider: org.hibernate.cache.EhCacheProvider
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Optimize cache for minimal puts: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Structured second-level cache entries: disabled
org.hibernate.exception.SQLExceptionConverterFactory: 01/12/06 08:28:41: main: DEBUG: Using dialect defined converter
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Echoing all SQL to stdout
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Statistics: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Deleted entity synthetic identifier rollback: disabled
org.hibernate.cfg.SettingsFactory: 01/12/06 08:28:41: main: INFO: Default entity-mode: pojo
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: INFO: building session factory
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: DEBUG: Session factory constructed with filter configurations : {}
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: DEBUG: instantiating session factory with properties: {java.vendor=Sun Microsystems Inc., show_sql=true, hibernate.connection.url=jdbc:oracle:thin:@localhost:1521:jesse, c3p0.min_size=10, os.name=Windows XP, sun.boot.class.path=C:\j2sdk1.4.2\jre\lib\rt.jar;C:\j2sdk1.4.2\jre\lib\i18n.jar;C:\j2sdk1.4.2\jre\lib\sunrsasign.jar;C:\j2sdk1.4.2\jre\lib\jsse.jar;C:\j2sdk1.4.2\jre\lib\jce.jar;C:\j2sdk1.4.2\jre\lib\charsets.jar;C:\j2sdk1.4.2\jre\classes, hibernate.c3p0.max_size=100, sun.java2d.fontpath=, java.vm.specification.vendor=Sun Microsystems Inc., c3p0.max_size=100, java.runtime.version=1.4.2-b28, hibernate.c3p0.min_size=10, c3p0.acquire_increment=1, user.name=JESSE_SWEETLAND, connection.driver_class=oracle.jdbc.driver.OracleDriver, hibernate.c3p0.timeout=100, user.language=en, sun.boot.library.path=C:\j2sdk1.4.2\jre\bin, dialect=org.hibernate.dialect.Oracle9Dialect, java.version=1.4.2, user.timezone=America/Chicago, sun.arch.data.model=32, java.endorsed.dirs=C:\j2sdk1.4.2\jre\lib\endorsed, sun.cpu.isalist=pentium i486 i386, file.encoding.pkg=sun.io, file.separator=\, java.specification.name=Java Platform API Specification, hibernate.cglib.use_reflection_optimizer=true, java.class.version=48.0, user.country=US, connection.url=jdbc:oracle:thin:@localhost:1521:jesse, java.home=C:\j2sdk1.4.2\jre, java.vm.info=mixed mode, os.version=5.1, path.separator=;, c3p0.idle_test_period=100, connection.password=playground_owner, java.vm.version=1.4.2-b28, java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory, hibernate.connection.password=playground_owner, user.variant=, java.awt.printerjob=sun.awt.windows.WPrinterJob, sun.io.unicode.encoding=UnicodeLittle, awt.toolkit=sun.awt.windows.WToolkit, hibernate.connection.username=playground_owner, user.home=C:\Documents and Settings\JESSE_SWEETLAND, java.specification.vendor=Sun Microsystems Inc., java.library.path=C:\j2sdk1.4.2\jre\bin;.;C:\WINDOWS\System32;C:\WINDOWS;C:\oracle\product\10.1.0\db_1\bin;C:\oracle\product\10.1.0\db_1\jre\1.4.2\bin\client;C:\oracle\product\10.1.0\db_1\jre\1.4.2\bin;C:\Program Files\PVCS\vm\win32\bin;C:\Program Files\PVCS\vm\common\bin\win32;J:\PVCS\vm8003w\PROGRA~1\Merant\vm\win32\bin;J:\PVCS\vm8003w\PROGRA~1\Merant\vm\common\bin\win32;C:\j2sdk1.4.2\bin;c:\Oracle_9\bin;C:\ORANT\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\PROGRA~1\GRADKE~1\DBSIGN~1\lib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\nls;C:\WINDOWS\system32\nls\ENGLISH;C:\DE3270;C:\Program Files\NetManage\Windows;c:\orawin\bin;C:\ORANT\jdk\bin;C:\Program Files\apache-ant-1.6.5\bin;Z:.;C:\ORAWIN\BIN;, java.vendor.url=http://java.sun.com/, hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver, connection.username=playground_owner, java.vm.vendor=Sun Microsystems Inc., hibernate.dialect=org.hibernate.dialect.Oracle9Dialect, java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition, java.class.path=C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-antlr-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-junit-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-launcher-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ant-swing-1.6.5.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\antlr-2.7.6rc1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\asm-attrs.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\asm.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\c3p0-0.9.0.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\cglib-2.1.3.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\cleanimports.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\commons-collections-2.1.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\commons-logging-1.0.4.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\concurrent-1.3.2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\connector.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\dom4j-1.6.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\ehcache-1.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jaas.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jacc-1_0-fr.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jaxen-1.1-beta-7.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-cache.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-common.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-jmx.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jboss-system.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jdbc2_0-stdext.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jgroups-2.2.7.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\jta.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\junit-3.8.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\log4j-1.2.11.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\oscache-2.1.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\proxool-0.8.3.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\swarmcache-1.0rc2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\syndiag2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\versioncheck.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\xerces-2.6.2.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\lib\xml-apis.jar;C:\Documents and Settings\JESSE_SWEETLAND\My Documents\Libraries\Source\hibernate-3.1\hibernate3.jar;C:\oracle\product\10.1.0\db_1\jdbc\lib\ojdbc14_g.jar;C:\Documents and Settings\JESSE_SWEETLAND\Playground\build\classes, c3p0.timeout=100, java.vm.specification.name=Java Virtual Machine Specification, java.vm.specification.version=1.0, sun.cpu.endian=little, sun.os.patch.level=Service Pack 1, java.io.tmpdir=C:\WINDOWS\TEMP\, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, os.arch=x86, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.ext.dirs=C:\j2sdk1.4.2\jre\lib\ext, user.dir=C:\Documents and Settings\JESSE_SWEETLAND\Playground, hibernate.c3p0.idle_test_period=100, line.separator=
, java.vm.name=Java HotSpot(TM) Client VM, hibernate.c3p0.acquire_increment=1, file.encoding=Cp1252, java.specification.version=1.4, c3p0.max_statements=0, hibernate.c3p0.max_statements=0, hibernate.show_sql=true}
net.sf.ehcache.CacheManager: 01/12/06 08:28:41: main: DEBUG: Creating new CacheManager with default config
net.sf.ehcache.CacheManager: 01/12/06 08:28:41: main: DEBUG: Configuring ehcache from classpath.
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 5, unused: 5, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
net.sf.ehcache.config.Configurator: 01/12/06 08:28:41: main: WARN: No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/C:/Documents%20and%20Settings/JESSE_SWEETLAND/My%20Documents/Libraries/Source/hibernate-3.1/lib/ehcache-1.1.jar!/ehcache-failsafe.xml
net.sf.ehcache.config.Configuration$DiskStore: 01/12/06 08:28:41: main: DEBUG: Disk Store Path: C:\WINDOWS\TEMP\
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 6, unused: 6, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 7, unused: 7, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.util.ReflectHelper: 01/12/06 08:28:41: main: DEBUG: reflection optimizer disabled for: playground.Child, BulkBeanException: Property is private (property setVersion)
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 8, unused: 8, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Static SQL for entity: playground.Child
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Version select: select version from child where id =?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Snapshot select: select child_.id, child_.version as version1_, child_.parent as parent1_, child_.list_index as list4_1_ from child child_ where child_.id=?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Insert 0: insert into child (version, parent, list_index, id) values (?, ?, ?, ?)
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Update 0: update child set version=?, parent=?, list_index=? where id=? and version=?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Delete 0: delete from child where id=? and version=?
org.hibernate.util.ReflectHelper: 01/12/06 08:28:41: main: DEBUG: reflection optimizer disabled for: playground.Parent, BulkBeanException: Property is private (property setVersion)
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Static SQL for entity: playground.Parent
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Version select: select version from parent where id =?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Snapshot select: select parent_.id, parent_.version as version0_ from parent parent_ where parent_.id=?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Insert 0: insert into parent (version, id) values (?, ?)
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Update 0: update parent set version=? where id=? and version=?
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:41: main: DEBUG: Delete 0: delete from parent where id=? and version=?
org.hibernate.persister.collection.AbstractCollectionPersister: 01/12/06 08:28:41: main: DEBUG: Static SQL for collection: playground.Parent.children
org.hibernate.persister.collection.AbstractCollectionPersister: 01/12/06 08:28:41: main: DEBUG: Row insert: update child set parent=?, list_index=? where id=?
org.hibernate.persister.collection.AbstractCollectionPersister: 01/12/06 08:28:41: main: DEBUG: Row delete: update child set parent=null, list_index=null where parent=? and id=?
org.hibernate.persister.collection.AbstractCollectionPersister: 01/12/06 08:28:41: main: DEBUG: One-shot delete: update child set parent=null, list_index=null where parent=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Child: select child0_.id as id1_1_, child0_.version as version1_1_, child0_.parent as parent1_1_, child0_.list_index as list4_1_1_, parent1_.id as id0_0_, parent1_.version as version0_0_ from child child0_ left outer join parent parent1_ on child0_.parent=parent1_.id where child0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Child: select child0_.id as id1_1_, child0_.version as version1_1_, child0_.parent as parent1_1_, child0_.list_index as list4_1_1_, parent1_.id as id0_0_, parent1_.version as version0_0_ from child child0_ left outer join parent parent1_ on child0_.parent=parent1_.id where child0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Child: select child0_.id as id1_0_, child0_.version as version1_0_, child0_.parent as parent1_0_, child0_.list_index as list4_1_0_ from child child0_ where child0_.id=? for update
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Child: select child0_.id as id1_0_, child0_.version as version1_0_, child0_.parent as parent1_0_, child0_.list_index as list4_1_0_ from child child0_ where child0_.id=? for update nowait
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for action ACTION_MERGE on entity playground.Child: select child0_.id as id1_0_, child0_.version as version1_0_, child0_.parent as parent1_0_, child0_.list_index as list4_1_0_ from child child0_ where child0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for action ACTION_REFRESH on entity playground.Child: select child0_.id as id1_0_, child0_.version as version1_0_, child0_.parent as parent1_0_, child0_.list_index as list4_1_0_ from child child0_ where child0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=? for update
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=? for update nowait
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for action ACTION_MERGE on entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
org.hibernate.loader.entity.EntityLoader: 01/12/06 08:28:41: main: DEBUG: Static select for action ACTION_REFRESH on entity playground.Parent: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
org.hibernate.loader.collection.OneToManyLoader: 01/12/06 08:28:41: main: DEBUG: Static select for one-to-many playground.Parent.children: select children0_.parent as parent1_, children0_.id as id1_, children0_.list_index as list4_1_, children0_.id as id1_0_, children0_.version as version1_0_, children0_.parent as parent1_0_, children0_.list_index as list4_1_0_ from child children0_ where children0_.parent=?
org.hibernate.impl.SessionFactoryObjectFactory: 01/12/06 08:28:41: main: DEBUG: initializing class SessionFactoryObjectFactory
org.hibernate.impl.SessionFactoryObjectFactory: 01/12/06 08:28:41: main: DEBUG: registered: 4ca2d19008bf04ad0108bf04b0e70000 (unnamed)
org.hibernate.impl.SessionFactoryObjectFactory: 01/12/06 08:28:41: main: INFO: Not binding factory to JNDI, no JNDI name configured
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: DEBUG: instantiated session factory
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: INFO: Checking 0 named HQL queries
org.hibernate.impl.SessionFactoryImpl: 01/12/06 08:28:41: main: INFO: Checking 0 named SQL queries
org.hibernate.impl.SessionImpl: 01/12/06 08:28:41: main: DEBUG: opened session at timestamp: 4657463795081216
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:41: main: DEBUG: begin
org.hibernate.jdbc.ConnectionManager: 01/12/06 08:28:41: main: DEBUG: opening JDBC connection
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: main: DEBUG: resource age is okay: com.mchange.v2.c3p0.impl.NewPooledConnection@19eda2c ---> age: 1407 max: 100000 [com.mchange.v2.resourcepool.BasicResourcePool@1b5998f]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 8, unused: 7, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:41: main: DEBUG: current autocommit status: false
org.hibernate.jdbc.JDBCContext: 01/12/06 08:28:41: main: DEBUG: after transaction begin
org.hibernate.event.def.DefaultLoadEventListener: 01/12/06 08:28:41: main: DEBUG: loading entity: [playground.Parent#1]
org.hibernate.event.def.DefaultLoadEventListener: 01/12/06 08:28:41: main: DEBUG: creating new proxy for entity
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:41: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 9, unused: 8, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:42: main: DEBUG: commit
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: automatically flushing session
org.hibernate.jdbc.JDBCContext: 01/12/06 08:28:42: main: DEBUG: before transaction completion
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: before transaction completion
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:42: main: DEBUG: committed JDBC Connection
org.hibernate.jdbc.JDBCContext: 01/12/06 08:28:42: main: DEBUG: after transaction completion
org.hibernate.jdbc.ConnectionManager: 01/12/06 08:28:42: main: DEBUG: aggressively releasing JDBC connection
org.hibernate.jdbc.ConnectionManager: 01/12/06 08:28:42: main: DEBUG: closing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:42: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 9, unused: 8, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: after transaction completion
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: closing session
org.hibernate.jdbc.ConnectionManager: 01/12/06 08:28:42: main: DEBUG: connection already null in cleanup : no action
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: opened session at timestamp: 4657463795851264
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:42: main: DEBUG: begin
org.hibernate.jdbc.ConnectionManager: 01/12/06 08:28:42: main: DEBUG: opening JDBC connection
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:42: main: DEBUG: resource age is okay: com.mchange.v2.c3p0.impl.NewPooledConnection@1cef4f7 ---> age: 1250 max: 100000 [com.mchange.v2.resourcepool.BasicResourcePool@1b5998f]
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:42: main: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 9, unused: 8, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:42: main: DEBUG: current autocommit status: false
org.hibernate.jdbc.JDBCContext: 01/12/06 08:28:42: main: DEBUG: after transaction begin
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: initializing proxy: [playground.Parent#1]
org.hibernate.event.def.DefaultLoadEventListener: 01/12/06 08:28:42: main: DEBUG: attempting to resolve: [playground.Parent#1]
org.hibernate.event.def.DefaultLoadEventListener: 01/12/06 08:28:42: main: DEBUG: object not resolved in any cache: [playground.Parent#1]
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:42: main: DEBUG: Fetching entity: [playground.Parent#1]
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: loading entity: [playground.Parent#1]
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
org.hibernate.SQL: 01/12/06 08:28:42: main: DEBUG: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
Hibernate: select parent0_.id as id0_0_, parent0_.version as version0_0_ from parent parent0_ where parent0_.id=?
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: preparing statement
org.hibernate.type.IntegerType: 01/12/06 08:28:42: main: DEBUG: binding '1' to parameter: 1
com.mchange.v2.resourcepool.BasicResourcePool: 01/12/06 08:28:42: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0: DEBUG: trace com.mchange.v2.resourcepool.BasicResourcePool@1b5998f [managed: 10, unused: 9, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@13c0b53)
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to open ResultSet (open ResultSets: 0, globally: 0)
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: processing result set
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: result set row: 0
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: result row: EntityKey[playground.Parent#1]
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: Initializing object from ResultSet: [playground.Parent#1]
org.hibernate.persister.entity.AbstractEntityPersister: 01/12/06 08:28:42: main: DEBUG: Hydrating entity: [playground.Parent#1]
org.hibernate.type.IntegerType: 01/12/06 08:28:42: main: DEBUG: returning '6' as column: version0_0_
org.hibernate.engine.TwoPhaseLoad: 01/12/06 08:28:42: main: DEBUG: Version: 6
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: done processing result set (1 rows)
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to close ResultSet (open ResultSets: 1, globally: 1)
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: closing statement
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: total objects hydrated: 1
org.hibernate.engine.TwoPhaseLoad: 01/12/06 08:28:42: main: DEBUG: resolving associations for [playground.Parent#1]
org.hibernate.engine.CollectionLoadContext: 01/12/06 08:28:42: main: DEBUG: creating collection wrapper:[playground.Parent.children#1]
org.hibernate.engine.TwoPhaseLoad: 01/12/06 08:28:42: main: DEBUG: done materializing entity [playground.Parent#1]
org.hibernate.engine.StatefulPersistenceContext: 01/12/06 08:28:42: main: DEBUG: initializing non-lazy collections
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: done entity load
org.hibernate.transaction.JDBCTransaction: 01/12/06 08:28:42: main: DEBUG: commit
org.hibernate.impl.SessionImpl: 01/12/06 08:28:42: main: DEBUG: automatically flushing session
org.hibernate.event.def.AbstractFlushingEventListener: 01/12/06 08:28:42: main: DEBUG: flushing session
org.hibernate.event.def.AbstractFlushingEventListener: 01/12/06 08:28:42: main: DEBUG: processing flush-time cascades
org.hibernate.engine.Cascade: 01/12/06 08:28:42: main: DEBUG: processing cascade ACTION_SAVE_UPDATE for: playground.Parent
org.hibernate.engine.Cascade: 01/12/06 08:28:42: main: DEBUG: cascade ACTION_SAVE_UPDATE for collection: playground.Parent.children
org.hibernate.engine.CascadingAction: 01/12/06 08:28:42: main: DEBUG: cascading to saveOrUpdate: playground.Child
org.hibernate.engine.VersionValue: 01/12/06 08:28:42: main: DEBUG: version unsaved-value strategy NEGATIVE
org.hibernate.event.def.AbstractSaveEventListener: 01/12/06 08:28:42: main: DEBUG: transient instance of: playground.Child
org.hibernate.event.def.DefaultSaveOrUpdateEventListener: 01/12/06 08:28:42: main: DEBUG: saving transient instance
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
org.hibernate.SQL: 01/12/06 08:28:42: main: DEBUG: select id_seq.nextval from dual
Hibernate: select id_seq.nextval from dual
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: preparing statement
org.hibernate.id.SequenceGenerator: 01/12/06 08:28:42: main: DEBUG: Sequence identifier generated: 11
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: closing statement
org.hibernate.event.def.AbstractSaveEventListener: 01/12/06 08:28:42: main: DEBUG: generated identifier: 11, using strategy: org.hibernate.id.SequenceGenerator
org.hibernate.event.def.AbstractSaveEventListener: 01/12/06 08:28:42: main: DEBUG: saving [playground.Child#11]
org.hibernate.event.def.DefaultInitializeCollectionEventListener: 01/12/06 08:28:42: main: DEBUG: initializing collection [playground.Parent.children#1]
org.hibernate.event.def.DefaultInitializeCollectionEventListener: 01/12/06 08:28:42: main: DEBUG: checking second-level cache
org.hibernate.event.def.DefaultInitializeCollectionEventListener: 01/12/06 08:28:42: main: DEBUG: collection not cached
org.hibernate.loader.Loader: 01/12/06 08:28:42: main: DEBUG: loading collection: [playground.Parent.children#1]
org.hibernate.jdbc.AbstractBatcher: 01/12/06 08:28:42: main: DEBUG: about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
org.hibernate.SQL: 01/12/06 08:28:42: main: DEBUG: select children0_.parent as parent1_, children0_.id as id1_, children0_.list_index as list4_1_, children0_.id as id1_0_, children0_.version as version1_0_, children0_.parent as parent1_0_, children0_.list_index as list4_1_0_ from child children0_ where children0_.parent=?
Hibernate: select