You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Christopher Lowe <c_...@caribsurf.com> on 2006/02/02 18:02:30 UTC

RE: Super class record not being deleted.

Hi All,

	I ran the junit test suite for the broker api and got the same
result. When a base class object is deleted the corresponding record in the
database is removed but not the super class object record. I ran only the
testDelete() method in the InheritanceMultipleTableTest class. I'm attaching
the output with debug on for the sql output. Please see the attached file.
Is anyone else getting this problem? Is there a fix for this?

Regards,
Chris

-----Original Message-----
From: Christopher Lowe [mailto:c_lowe@caribsurf.com] 
Sent: Tuesday, January 31, 2006 6:57 PM
To: 'OJB Users List'
Subject: RE: Super class record not being deleted.

Hi Armin,

I'm using the PersistenceBroker API.

Chris.

-----Original Message-----
From: Armin Waibel [mailto:arminw@apache.org] 
Sent: Tuesday, January 31, 2006 4:08 PM
To: OJB Users List
Subject: Re: Super class record not being deleted.

Hi Chris,

which api do you use?

Armin

Christopher Lowe wrote:
> Hi All,
>             I have an inheritance relationship between my Product and Car
> objects. New inserts of car objects work fine. The problem I'm
experiencing
> is that when I remove a car the corresponding product record is not being
> removed from the product table. The mappings are shown below. I'm using
> version db-ojb-1.0.4, the oscahce for caching, and the remote locking
> implementation. Is there something wrong with my mappings? I've included
my
> stack trace so that you can observe that the car and all the relationships
> are removed correctly, but not the product entry. Please advise.
>  
> Thank you,
> Chris
>  
> Mappings:
>  
> <class-descriptor class="com.dm.beans.Product" schema="destinationdb"
> table="product">
>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
> primarykey="true" nullable="false" autoincrement="true"/>
>     <field-descriptor name="supplierId" column="SUPPLIER_ID"
> jdbc-type="INTEGER"/>
>     <field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" />
>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
> jdbc-type="BIGINT" locking="true"/>
>     <reference-descriptor 
>         name="supplier" 
>         class-ref="com.dm.beans.suppliers.Supplier" 
>         proxy="true" 
>         auto-update="link" 
>         auto-delete="none"
>     >
>         <foreignkey field-ref="supplierId"/>
>     </reference-descriptor>
> </class-descriptor>
>  
> <class-descriptor class="com.dm.beans.car.Car" schema="destinationdb"
> table="car">
>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
> primarykey="true" nullable="false"/>
>     <field-descriptor name="modelId" column="MODEL_ID" jdbc-type="INTEGER"
> />
>     <field-descriptor name="typeId" column="TYPE_ID" jdbc-type="INTEGER"
/>
>     <field-descriptor name="largePassenger" column="LARGE_PASSENGER"
> jdbc-type="INTEGER" />
>     <field-descriptor name="mediumPassenger" column="MEDIUM_PASSENGER"
> jdbc-type="INTEGER" />
>     <field-descriptor name="smallPassenger" column="SMALL_PASSENGER"
> jdbc-type="INTEGER" />
>     <field-descriptor name="largeLuggage" column="LARGE_LUGGAGE"
> jdbc-type="INTEGER" />
>     <field-descriptor name="mediumLuggage" column="MEDIUM_LUGGAGE"
> jdbc-type="INTEGER" />
>     <field-descriptor name="smallLuggage" column="SMALL_LUGGAGE"
> jdbc-type="INTEGER" />
>     <field-descriptor name="quantity" column="QUANTITY"
jdbc-type="INTEGER"
> />
>     <field-descriptor name="allocation" column="ALLOCATION"
> jdbc-type="INTEGER" />
>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
> jdbc-type="BIGINT" locking="true"/>
>     <reference-descriptor 
>         name="super" 
>         class-ref="com.dm.beans.Product"
>     >
>         <foreignkey field-ref="id"/>
>     </reference-descriptor>
>     <reference-descriptor 
>         name="model" 
>         class-ref="com.dm.beans.type.CarModel" 
>         proxy="true" 
>         auto-update="link" 
>         auto-delete="false"
>     >
>         <foreignkey field-ref="modelId"/>
>     </reference-descriptor>
>     <reference-descriptor 
>         name="type" 
>         class-ref="com.dm.beans.type.CarType" 
>         proxy="true" 
>         auto-update="link" 
>         auto-delete="false"
>     >
>         <foreignkey field-ref="typeId"/>
>     </reference-descriptor>
>     <collection-descriptor
>          name="amenities"
>  
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>          element-class-ref="com.dm.beans.type.Amenity"
>          auto-update="link"
>          auto-delete="link"
>          proxy="true"
>          indirection-table="product_amenity"
>       >
>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>          <fk-pointing-to-element-class column="AMENITY_ID"/>
>     </collection-descriptor>
>     <collection-descriptor
>          name="mediaFiles"
>  
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>          element-class-ref="com.dm.beans.Multimedia"
>          auto-update="link"
>          auto-delete="link"
>          proxy="true"
>          indirection-table="product_multimedia"
>       >
>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>          <fk-pointing-to-element-class column="MULTIMEDIA_ID"/>
>     </collection-descriptor>
>     <collection-descriptor
>          name="rates"
>  
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>          element-class-ref="com.dm.beans.car.CarRate"
>          auto-update="true"
>          auto-delete="true"
>          proxy="true"
>     >
>         <inverse-foreignkey field-ref="productId"/>
>     </collection-descriptor>    
> </class-descriptor>
>  
> Stack Trace:
>  
> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
remove():
> 518
> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
remove():
> com.dm.beans.car.Car@1ac8b37[
>   id=518
>   supplierId=<null>
>   name=<null>
>   modelId=<null>
>   typeId=<null>
>   adults=<null>
>   children=<null>
>   infants=<null>
>   largeLuggage=<null>
>   mediumLuggage=<null>
>   smallLuggage=<null>
>   quantity=<null>
>   allocation=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
> SQL:DELETE FROM product_amenity WHERE PRODUCT_ID=?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
executeUpdateSQL:
> DELETE FROM product_amenity WHERE PRODUCT_ID=?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
> SQL:DELETE FROM product_multimedia WHERE PRODUCT_ID=?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
executeUpdateSQL:
> DELETE FROM product_multimedia WHERE PRODUCT_ID=?
> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG:
> getCollectionByQuery (class
> org.apache.ojb.broker.util.collections.RemovalAwareList, class
> com.dm.beans.car.CarRate, QueryByCriteria from class
> com.dm.beans.car.CarRate  where [productId = 518])
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
518]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
> SQL:SELECT
>
A0.ID,A0.CAR_ID,A0.START_DATE,A0.END_DATE,A0.COMMISSION,A0.DAY1,A0.DAY2,A0.D
> AY3,A0.DAY4,A0.DAY5,A0.DAY6,A0.DAY7,A0.EXTRA,A0.ACK_OPT_LOCK FROM
> destinationdb.car_rate A0 WHERE A0.CAR_ID = ?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
> org.apache.commons.dbcp.DelegatingPreparedStatement@1284903
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query:
> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
> 518], class descriptor: com.dm.beans.car.CarRate]] initialized
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
> com.dm.beans.car.CarRate@1d16ecf[
>   id=29
>   commission=21%
>   day1=49.15
>   day2=98.3
>   day3=136.13
>   day4=181.5
>   day5=198.0
>   day6=198.0
>   day7=198.0
>   extra=28.29
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
> org.apache.commons.dbcp.DelegatingPreparedStatement@c1dc0b
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
> com.dm.beans.car.Car@598a5d[
>   id=518
>   supplierId=173
>   name=Daihatsu - Mini Moke
>   modelId=61
>   typeId=7
>   adults=2
>   children=2
>   infants=0
>   largeLuggage=0
>   mediumLuggage=0
>   smallLuggage=1
>   quantity=2
>   allocation=2
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
> org.apache.commons.dbcp.DelegatingPreparedStatement@8b1323
>  
>  
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org

Re: Super class record not being deleted.

Posted by Armin Waibel <ar...@apache.org>.
Hi Chris,

Christopher Lowe wrote:
> Hi Armin,
> 
> Thanks for the quick turn-around on this bug. How do I download the source
> from svn ojb_1_0_release branch? 
> Do I have to use my browser and click on
> each file to download everything, I'm sure there is a better way, please
> advise. 

Currently the easiest way is to check out latest version from SVN 
OJB_1_0_RELEASE branch (we don't have a nightly build).

http://svn.apache.org/repos/asf/db/ojb/branches/OJB_1_0_RELEASE/
(more info see http://www.apache.org/dev/version-control.html)

If your IDE doesn't support SVN you can find two SVN-GUI-client projects 
on Tigris.org:
http://rapidsvn.tigris.org/
http://tortoisesvn.tigris.org/
It's as easy to use as an ftp-GUI-client.


> How soon will the bug OJB-94 be assigned and fixed. It is critical
> to our project that we have this fixed. 
> 

Jakob has started work on this issue. I don't know when this will be 
fixed. Hope it's fixed (at the latest) till next release which is 
scheduled for this month.

regards,
Armin


> Regards,
> Chris
> 
> -----Original Message-----
> From: Armin Waibel [mailto:arminw@apache.org] 
> Sent: Thursday, February 02, 2006 4:59 PM
> To: OJB Users List
> Subject: Re: Super class record not being deleted.
> 
> Hi Chris,
> 
> I checked in a fix for OJB-93. If possible please test latest version 
> from SVN OJB_1_0_RELEASE branch. This fix will be included in next 
> upcoming version (OJB 1.0.5).
> 
> regards,
> Armin
> 
> Armin Waibel wrote:
>> Hi Chris,
>>
>> Christopher Lowe wrote:
>>> Hi All,
>>>
>>>     I ran the junit test suite for the broker api and got the same
>>> result. When a base class object is deleted the corresponding record 
>>> in the
>>> database is removed but not the super class object record. I ran only the
>>> testDelete() method in the InheritanceMultipleTableTest class. I'm 
>>> attaching
>>> the output with debug on for the sql output. Please see the attached 
>>> file.
>>> Is anyone else getting this problem? Is there a fix for this?
>>>
>> This sounds like a bug (thanks for detailed description). Could you add 
>> a bug report on JIRA. I will start working on this issue ASAP.
>>
>> regards,
>> Armin
>>
>>
>>> Regards,
>>> Chris
>>>
>>> -----Original Message-----
>>> From: Christopher Lowe [mailto:c_lowe@caribsurf.com] Sent: Tuesday, 
>>> January 31, 2006 6:57 PM
>>> To: 'OJB Users List'
>>> Subject: RE: Super class record not being deleted.
>>>
>>> Hi Armin,
>>>
>>> I'm using the PersistenceBroker API.
>>>
>>> Chris.
>>>
>>> -----Original Message-----
>>> From: Armin Waibel [mailto:arminw@apache.org] Sent: Tuesday, January 
>>> 31, 2006 4:08 PM
>>> To: OJB Users List
>>> Subject: Re: Super class record not being deleted.
>>>
>>> Hi Chris,
>>>
>>> which api do you use?
>>>
>>> Armin
>>>
>>> Christopher Lowe wrote:
>>>> Hi All,
>>>>             I have an inheritance relationship between my Product and 
>>>> Car
>>>> objects. New inserts of car objects work fine. The problem I'm
>>> experiencing
>>>> is that when I remove a car the corresponding product record is not 
>>>> being
>>>> removed from the product table. The mappings are shown below. I'm using
>>>> version db-ojb-1.0.4, the oscahce for caching, and the remote locking
>>>> implementation. Is there something wrong with my mappings? I've included
>>> my
>>>> stack trace so that you can observe that the car and all the 
>>>> relationships
>>>> are removed correctly, but not the product entry. Please advise.
>>>>  
>>>> Thank you,
>>>> Chris
>>>>  
>>>> Mappings:
>>>>  
>>>> <class-descriptor class="com.dm.beans.Product" schema="destinationdb"
>>>> table="product">
>>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>>> primarykey="true" nullable="false" autoincrement="true"/>
>>>>     <field-descriptor name="supplierId" column="SUPPLIER_ID"
>>>> jdbc-type="INTEGER"/>
>>>>     <field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" />
>>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>>> jdbc-type="BIGINT" locking="true"/>
>>>>     <reference-descriptor         name="supplier"         
>>>> class-ref="com.dm.beans.suppliers.Supplier"         proxy="true" 
>>>>         auto-update="link"         auto-delete="none"
>>>>     >
>>>>         <foreignkey field-ref="supplierId"/>
>>>>     </reference-descriptor>
>>>> </class-descriptor>
>>>>  
>>>> <class-descriptor class="com.dm.beans.car.Car" schema="destinationdb"
>>>> table="car">
>>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>>> primarykey="true" nullable="false"/>
>>>>     <field-descriptor name="modelId" column="MODEL_ID" 
>>>> jdbc-type="INTEGER"
>>>> />
>>>>     <field-descriptor name="typeId" column="TYPE_ID" jdbc-type="INTEGER"
>>> />
>>>>     <field-descriptor name="largePassenger" column="LARGE_PASSENGER"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="mediumPassenger" column="MEDIUM_PASSENGER"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="smallPassenger" column="SMALL_PASSENGER"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="largeLuggage" column="LARGE_LUGGAGE"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="mediumLuggage" column="MEDIUM_LUGGAGE"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="smallLuggage" column="SMALL_LUGGAGE"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="quantity" column="QUANTITY"
>>> jdbc-type="INTEGER"
>>>> />
>>>>     <field-descriptor name="allocation" column="ALLOCATION"
>>>> jdbc-type="INTEGER" />
>>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>>> jdbc-type="BIGINT" locking="true"/>
>>>>     <reference-descriptor         name="super"         
>>>> class-ref="com.dm.beans.Product"
>>>>     >
>>>>         <foreignkey field-ref="id"/>
>>>>     </reference-descriptor>
>>>>     <reference-descriptor         name="model"         
>>>> class-ref="com.dm.beans.type.CarModel"         proxy="true"         
>>>> auto-update="link"         auto-delete="false"
>>>>     >
>>>>         <foreignkey field-ref="modelId"/>
>>>>     </reference-descriptor>
>>>>     <reference-descriptor         name="type"         
>>>> class-ref="com.dm.beans.type.CarType"         proxy="true"         
>>>> auto-update="link"         auto-delete="false"
>>>>     >
>>>>         <foreignkey field-ref="typeId"/>
>>>>     </reference-descriptor>
>>>>     <collection-descriptor
>>>>          name="amenities"
>>>>  
>>>>
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>>          element-class-ref="com.dm.beans.type.Amenity"
>>>>          auto-update="link"
>>>>          auto-delete="link"
>>>>          proxy="true"
>>>>          indirection-table="product_amenity"
>>>>       >
>>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>>          <fk-pointing-to-element-class column="AMENITY_ID"/>
>>>>     </collection-descriptor>
>>>>     <collection-descriptor
>>>>          name="mediaFiles"
>>>>  
>>>>
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>>          element-class-ref="com.dm.beans.Multimedia"
>>>>          auto-update="link"
>>>>          auto-delete="link"
>>>>          proxy="true"
>>>>          indirection-table="product_multimedia"
>>>>       >
>>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>>          <fk-pointing-to-element-class column="MULTIMEDIA_ID"/>
>>>>     </collection-descriptor>
>>>>     <collection-descriptor
>>>>          name="rates"
>>>>  
>>>>
> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>>          element-class-ref="com.dm.beans.car.CarRate"
>>>>          auto-update="true"
>>>>          auto-delete="true"
>>>>          proxy="true"
>>>>     >
>>>>         <inverse-foreignkey field-ref="productId"/>
>>>>     </collection-descriptor>    </class-descriptor>
>>>>  
>>>> Stack Trace:
>>>>  
>>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>>> remove():
>>>> 518
>>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>>> remove():
>>>> com.dm.beans.car.Car@1ac8b37[
>>>>   id=518
>>>>   supplierId=<null>
>>>>   name=<null>
>>>>   modelId=<null>
>>>>   typeId=<null>
>>>>   adults=<null>
>>>>   children=<null>
>>>>   infants=<null>
>>>>   largeLuggage=<null>
>>>>   mediumLuggage=<null>
>>>>   smallLuggage=<null>
>>>>   quantity=<null>
>>>>   allocation=<null>
>>>> ]
>>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>>> SQL:DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>>> executeUpdateSQL:
>>>> DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>>> SQL:DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>>> executeUpdateSQL:
>>>> DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>>> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG:
>>>> getCollectionByQuery (class
>>>> org.apache.ojb.broker.util.collections.RemovalAwareList, class
>>>> com.dm.beans.car.CarRate, QueryByCriteria from class
>>>> com.dm.beans.car.CarRate  where [productId = 518])
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>>> 518]
>>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>>> SQL:SELECT
>>>>
> A0.ID,A0.CAR_ID,A0.START_DATE,A0.END_DATE,A0.COMMISSION,A0.DAY1,A0.DAY2,A0.D
> 
>>>> AY3,A0.DAY4,A0.DAY5,A0.DAY6,A0.DAY7,A0.EXTRA,A0.ACK_OPT_LOCK FROM
>>>> destinationdb.car_rate A0 WHERE A0.CAR_ID = ?
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>>> org.apache.commons.dbcp.DelegatingPreparedStatement@1284903
>>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
>>>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query:
>>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>>>> 518], class descriptor: com.dm.beans.car.CarRate]] initialized
>>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>>> com.dm.beans.car.CarRate@1d16ecf[
>>>>   id=29
>>>>   commission=21%
>>>>   day1=49.15
>>>>   day2=98.3
>>>>   day3=136.13
>>>>   day4=181.5
>>>>   day5=198.0
>>>>   day6=198.0
>>>>   day7=198.0
>>>>   extra=28.29
>>>> ]
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>>> org.apache.commons.dbcp.DelegatingPreparedStatement@c1dc0b
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>>> com.dm.beans.car.Car@598a5d[
>>>>   id=518
>>>>   supplierId=173
>>>>   name=Daihatsu - Mini Moke
>>>>   modelId=61
>>>>   typeId=7
>>>>   adults=2
>>>>   children=2
>>>>   infants=0
>>>>   largeLuggage=0
>>>>   mediumLuggage=0
>>>>   smallLuggage=1
>>>>   quantity=2
>>>>   allocation=2
>>>> ]
>>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>>> org.apache.commons.dbcp.DelegatingPreparedStatement@8b1323
>>>>  
>>>>  
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> Testsuite: org.apache.ojb.broker.AllTests
>>> Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 3.235 sec
>>> ------------- Standard Output ---------------
>>> [BOOT] INFO: -- boot log messages -->
>>> [BOOT] INFO: Loading OJB's properties: 
>>> file:/C:/db-ojb-1.0.4/target/test/ojb/OJB.properties
>>> [BOOT] INFO: Found logging properties file: OJB-logging.properties
>>> [BOOT] INFO: Logging: Found logger class 
>>> 'org.apache.ojb.broker.util.logging.PoorMansLoggerImpl
>>>
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@15856a5[
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=employee_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) 
>>> VALUES (?,?,?,?) 
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeUpdate: 
>>>
> org.apache.ojb.broker.util.sequence.HighLowSequence@f42ad0[name=SEQ_INHERITA
> NCE_EMPLOYEE,grabSize=20,version=1,maxKey=200040,currentKey=200020] 
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:UPDATE OJB_HL_SEQ SET MAX_KEY=?,GRAB_SIZE=?,VERSION=? WHERE 
>>> TABLENAME = ?  AND VERSION = ? 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeUpdate: com.mysql.jdbc.ServerPreparedStatement[2] - UPDATE 
>>> OJB_HL_SEQ SET MAX_KEY=200040,GRAB_SIZE=20,VERSION=2 WHERE TABLENAME = 
>>> 'SEQ_INHERITANCE_EMPLOYEE'  AND VERSION = 1 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[1] - INSERT INTO 
>>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>>> (200021,1138898488078,'employee_testDelete_1138898488078',null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>>   
>>>
> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
> 5492[ 
>>>   department=department_1
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>>   department=department_2
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]]
>>>   consortiumKey=<null>
>>>   department=<null>
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=manager_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[2] - INSERT INTO 
>>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>>> (200022,1138898488078,'manager_testDelete_1138898488078',null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>>   
>>>
> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
> 5492[ 
>>>   department=department_1
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>>   department=department_2
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]]
>>>   consortiumKey=<null>
>>>   department=<null>
>>>   manager=<null>
>>>   id=200022
>>>   id_2=1138898488078
>>>   name=manager_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:INSERT INTO INHERITANCE_EXECUTIVE 
>>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>>> (?,?,?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[3] - INSERT INTO 
>>> INHERITANCE_EXECUTIVE 
>>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>>> (200022,1138898488078,null,null,null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>>   
>>>
> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
> 5492[ 
>>>   department=department_1
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>>   department=department_2
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]]
>>>   consortiumKey=<null>
>>>   department=<null>
>>>   manager=<null>
>>>   id=200022
>>>   id_2=1138898488078
>>>   name=manager_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) 
>>> VALUES (?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>>> DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[4] - 
>>> INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) VALUES 
>>> (200022,1138898488078,null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>>   department=department_1
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[5] - INSERT INTO 
>>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>>> (200023,1138898488078,'executive_testDelete_1138898488078',null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>>   department=department_1
>>>   manager=<null>
>>>   id=200023
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[6] - INSERT INTO 
>>> INHERITANCE_EXECUTIVE 
>>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>>> (200023,1138898488078,'department_1',200022,1138898488078) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>>   department=department_2
>>>   manager=<null>
>>>   id=<null>
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[7] - INSERT INTO 
>>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>>> (200024,1138898488078,'executive_testDelete_1138898488078',null) 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>>   department=department_2
>>>   manager=<null>
>>>   id=200024
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[8] - INSERT INTO 
>>> INHERITANCE_EXECUTIVE 
>>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>>> (200024,1138898488078,'department_2',200022,1138898488078) 
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTM
> ENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.
> OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
>> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
>> A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTM
> ENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.
> OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
>> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
>> A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
> .FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
> SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
> .FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
> SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGE
> R_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>>> AND A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGE
> R_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>>> AND A0.OBJ_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeQuery: ReportQuery from class 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive count(*)  
>>> where [managerId = 200022, managerId_2 = 1138898488078]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[12] - SELECT 
>>> count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE 
>>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND 
>>> A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>>> A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 
>>> 200022) AND A0.MANAGER_ID_2 = 1138898488078
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@4f459c[
>>>   id=200021
>>>   id_2=1138898488078
>>>   name=employee_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:DELETE FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[13] - DELETE 
>>> FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = 200021  AND OBJ_ID_2 = 
>>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>>> DEBUG: executeDelete: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@193c0cf[
>>>   department=department_1
>>>   manager=<null>
>>>   id=200023
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[14] - DELETE 
>>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200023  AND OBJ_ID_2 = 
>>> 1138898488078 [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG: 
>>> getCollectionByQuery (class 
>>> org.apache.ojb.broker.util.collections.RemovalAwareCollection, class 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive, 
>>> QueryByCriteria from class 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>>> [managerId = 200022, managerId_2 = 1138898488078])
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeQuery: QueryByCriteria from class 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>>> [managerId = 200022, managerId_2 = 1138898488078]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
> .FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
> SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[15] - SELECT 
>>>
> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
> .FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
> SHARE_,CASE 
>>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 200022) AND 
>>> A0.MANAGER_ID_2 = 1138898488078
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: 
>>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: 
>>> QueryByCriteria from class 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>>> [managerId = 200022, managerId_2 = 1138898488078], class descriptor: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive]] 
>>> initialized
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@da6bf4[
>>>   department=department_2
>>>   manager=<null>
>>>   id=200024
>>>   id_2=1138898488078
>>>   name=executive_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[16] - DELETE 
>>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200024  AND OBJ_ID_2 = 
>>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>>> DEBUG: executeDelete: 
>>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@11381e7[
>>>   executives=org.apache.ojb.broker.core.proxy.ListProxyDefaultImpl@100363
>>>   consortiumKey=<null>
>>>   department=<null>
>>>   manager=<null>
>>>   id=200022
>>>   id_2=1138898488078
>>>   name=manager_testDelete_1138898488078
>>>   address=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>>> SQL:DELETE FROM INHERITANCE_MANAGER WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[17] - DELETE 
>>> FROM INHERITANCE_MANAGER WHERE OBJ_ID = 200022  AND OBJ_ID_2 = 
>>> 1138898488078 ------------- ---------------- ---------------
>>>
>>> Testcase: testDelete took 2.828 sec
>>> Testcase: testHsqldbShutdown took 0.016 sec
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


RE: Super class record not being deleted.

Posted by Christopher Lowe <c_...@caribsurf.com>.
Hi Armin,

Thanks for the quick turn-around on this bug. How do I download the source
from svn ojb_1_0_release branch? Do I have to use my browser and click on
each file to download everything, I'm sure there is a better way, please
advise. How soon will the bug OJB-94 be assigned and fixed. It is critical
to our project that we have this fixed. 

Regards,
Chris

-----Original Message-----
From: Armin Waibel [mailto:arminw@apache.org] 
Sent: Thursday, February 02, 2006 4:59 PM
To: OJB Users List
Subject: Re: Super class record not being deleted.

Hi Chris,

I checked in a fix for OJB-93. If possible please test latest version 
from SVN OJB_1_0_RELEASE branch. This fix will be included in next 
upcoming version (OJB 1.0.5).

regards,
Armin

Armin Waibel wrote:
> Hi Chris,
> 
> Christopher Lowe wrote:
>> Hi All,
>>
>>     I ran the junit test suite for the broker api and got the same
>> result. When a base class object is deleted the corresponding record 
>> in the
>> database is removed but not the super class object record. I ran only the
>> testDelete() method in the InheritanceMultipleTableTest class. I'm 
>> attaching
>> the output with debug on for the sql output. Please see the attached 
>> file.
>> Is anyone else getting this problem? Is there a fix for this?
>>
> 
> This sounds like a bug (thanks for detailed description). Could you add 
> a bug report on JIRA. I will start working on this issue ASAP.
> 
> regards,
> Armin
> 
> 
>> Regards,
>> Chris
>>
>> -----Original Message-----
>> From: Christopher Lowe [mailto:c_lowe@caribsurf.com] Sent: Tuesday, 
>> January 31, 2006 6:57 PM
>> To: 'OJB Users List'
>> Subject: RE: Super class record not being deleted.
>>
>> Hi Armin,
>>
>> I'm using the PersistenceBroker API.
>>
>> Chris.
>>
>> -----Original Message-----
>> From: Armin Waibel [mailto:arminw@apache.org] Sent: Tuesday, January 
>> 31, 2006 4:08 PM
>> To: OJB Users List
>> Subject: Re: Super class record not being deleted.
>>
>> Hi Chris,
>>
>> which api do you use?
>>
>> Armin
>>
>> Christopher Lowe wrote:
>>> Hi All,
>>>             I have an inheritance relationship between my Product and 
>>> Car
>>> objects. New inserts of car objects work fine. The problem I'm
>> experiencing
>>> is that when I remove a car the corresponding product record is not 
>>> being
>>> removed from the product table. The mappings are shown below. I'm using
>>> version db-ojb-1.0.4, the oscahce for caching, and the remote locking
>>> implementation. Is there something wrong with my mappings? I've included
>> my
>>> stack trace so that you can observe that the car and all the 
>>> relationships
>>> are removed correctly, but not the product entry. Please advise.
>>>  
>>> Thank you,
>>> Chris
>>>  
>>> Mappings:
>>>  
>>> <class-descriptor class="com.dm.beans.Product" schema="destinationdb"
>>> table="product">
>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>> primarykey="true" nullable="false" autoincrement="true"/>
>>>     <field-descriptor name="supplierId" column="SUPPLIER_ID"
>>> jdbc-type="INTEGER"/>
>>>     <field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" />
>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>> jdbc-type="BIGINT" locking="true"/>
>>>     <reference-descriptor         name="supplier"         
>>> class-ref="com.dm.beans.suppliers.Supplier"         proxy="true" 
>>>         auto-update="link"         auto-delete="none"
>>>     >
>>>         <foreignkey field-ref="supplierId"/>
>>>     </reference-descriptor>
>>> </class-descriptor>
>>>  
>>> <class-descriptor class="com.dm.beans.car.Car" schema="destinationdb"
>>> table="car">
>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>> primarykey="true" nullable="false"/>
>>>     <field-descriptor name="modelId" column="MODEL_ID" 
>>> jdbc-type="INTEGER"
>>> />
>>>     <field-descriptor name="typeId" column="TYPE_ID" jdbc-type="INTEGER"
>> />
>>>     <field-descriptor name="largePassenger" column="LARGE_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="mediumPassenger" column="MEDIUM_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="smallPassenger" column="SMALL_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="largeLuggage" column="LARGE_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="mediumLuggage" column="MEDIUM_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="smallLuggage" column="SMALL_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="quantity" column="QUANTITY"
>> jdbc-type="INTEGER"
>>> />
>>>     <field-descriptor name="allocation" column="ALLOCATION"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>> jdbc-type="BIGINT" locking="true"/>
>>>     <reference-descriptor         name="super"         
>>> class-ref="com.dm.beans.Product"
>>>     >
>>>         <foreignkey field-ref="id"/>
>>>     </reference-descriptor>
>>>     <reference-descriptor         name="model"         
>>> class-ref="com.dm.beans.type.CarModel"         proxy="true"         
>>> auto-update="link"         auto-delete="false"
>>>     >
>>>         <foreignkey field-ref="modelId"/>
>>>     </reference-descriptor>
>>>     <reference-descriptor         name="type"         
>>> class-ref="com.dm.beans.type.CarType"         proxy="true"         
>>> auto-update="link"         auto-delete="false"
>>>     >
>>>         <foreignkey field-ref="typeId"/>
>>>     </reference-descriptor>
>>>     <collection-descriptor
>>>          name="amenities"
>>>  
>>>
collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.type.Amenity"
>>>          auto-update="link"
>>>          auto-delete="link"
>>>          proxy="true"
>>>          indirection-table="product_amenity"
>>>       >
>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>          <fk-pointing-to-element-class column="AMENITY_ID"/>
>>>     </collection-descriptor>
>>>     <collection-descriptor
>>>          name="mediaFiles"
>>>  
>>>
collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.Multimedia"
>>>          auto-update="link"
>>>          auto-delete="link"
>>>          proxy="true"
>>>          indirection-table="product_multimedia"
>>>       >
>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>          <fk-pointing-to-element-class column="MULTIMEDIA_ID"/>
>>>     </collection-descriptor>
>>>     <collection-descriptor
>>>          name="rates"
>>>  
>>>
collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.car.CarRate"
>>>          auto-update="true"
>>>          auto-delete="true"
>>>          proxy="true"
>>>     >
>>>         <inverse-foreignkey field-ref="productId"/>
>>>     </collection-descriptor>    </class-descriptor>
>>>  
>>> Stack Trace:
>>>  
>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>> remove():
>>> 518
>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>> remove():
>>> com.dm.beans.car.Car@1ac8b37[
>>>   id=518
>>>   supplierId=<null>
>>>   name=<null>
>>>   modelId=<null>
>>>   typeId=<null>
>>>   adults=<null>
>>>   children=<null>
>>>   infants=<null>
>>>   largeLuggage=<null>
>>>   mediumLuggage=<null>
>>>   smallLuggage=<null>
>>>   quantity=<null>
>>>   allocation=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>> executeUpdateSQL:
>>> DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>> executeUpdateSQL:
>>> DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG:
>>> getCollectionByQuery (class
>>> org.apache.ojb.broker.util.collections.RemovalAwareList, class
>>> com.dm.beans.car.CarRate, QueryByCriteria from class
>>> com.dm.beans.car.CarRate  where [productId = 518])
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>> 518]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:SELECT
>>>
>>
A0.ID,A0.CAR_ID,A0.START_DATE,A0.END_DATE,A0.COMMISSION,A0.DAY1,A0.DAY2,A0.D

>>
>>> AY3,A0.DAY4,A0.DAY5,A0.DAY6,A0.DAY7,A0.EXTRA,A0.ACK_OPT_LOCK FROM
>>> destinationdb.car_rate A0 WHERE A0.CAR_ID = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@1284903
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
>>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query:
>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>>> 518], class descriptor: com.dm.beans.car.CarRate]] initialized
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> com.dm.beans.car.CarRate@1d16ecf[
>>>   id=29
>>>   commission=21%
>>>   day1=49.15
>>>   day2=98.3
>>>   day3=136.13
>>>   day4=181.5
>>>   day5=198.0
>>>   day6=198.0
>>>   day7=198.0
>>>   extra=28.29
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@c1dc0b
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> com.dm.beans.car.Car@598a5d[
>>>   id=518
>>>   supplierId=173
>>>   name=Daihatsu - Mini Moke
>>>   modelId=61
>>>   typeId=7
>>>   adults=2
>>>   children=2
>>>   infants=0
>>>   largeLuggage=0
>>>   mediumLuggage=0
>>>   smallLuggage=1
>>>   quantity=2
>>>   allocation=2
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@8b1323
>>>  
>>>  
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>> ------------------------------------------------------------------------
>>
>> Testsuite: org.apache.ojb.broker.AllTests
>> Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 3.235 sec
>> ------------- Standard Output ---------------
>> [BOOT] INFO: -- boot log messages -->
>> [BOOT] INFO: Loading OJB's properties: 
>> file:/C:/db-ojb-1.0.4/target/test/ojb/OJB.properties
>> [BOOT] INFO: Found logging properties file: OJB-logging.properties
>> [BOOT] INFO: Logging: Found logger class 
>> 'org.apache.ojb.broker.util.logging.PoorMansLoggerImpl
>>
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@15856a5[
>>   id=<null>
>>   id_2=1138898488078
>>   name=employee_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) 
>> VALUES (?,?,?,?) 
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeUpdate: 
>>
org.apache.ojb.broker.util.sequence.HighLowSequence@f42ad0[name=SEQ_INHERITA
NCE_EMPLOYEE,grabSize=20,version=1,maxKey=200040,currentKey=200020] 
>>
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:UPDATE OJB_HL_SEQ SET MAX_KEY=?,GRAB_SIZE=?,VERSION=? WHERE 
>> TABLENAME = ?  AND VERSION = ? 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeUpdate: com.mysql.jdbc.ServerPreparedStatement[2] - UPDATE 
>> OJB_HL_SEQ SET MAX_KEY=200040,GRAB_SIZE=20,VERSION=2 WHERE TABLENAME = 
>> 'SEQ_INHERITANCE_EMPLOYEE'  AND VERSION = 1 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[1] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200021,1138898488078,'employee_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>>
executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
5492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[2] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200022,1138898488078,'manager_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>>
executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
5492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (?,?,?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[3] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200022,1138898488078,null,null,null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>>
executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d9
5492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) 
>> VALUES (?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[4] - 
>> INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) VALUES 
>> (200022,1138898488078,null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[5] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200023,1138898488078,'executive_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>   department=department_1
>>   manager=<null>
>>   id=200023
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[6] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200023,1138898488078,'department_1',200022,1138898488078) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[7] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200024,1138898488078,'executive_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=200024
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[8] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200024,1138898488078,'department_2',200022,1138898488078) 
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTM
ENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.
OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
> A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTM
ENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.
OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
> A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGE
R_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>> AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGE
R_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>> AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: ReportQuery from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive count(*)  
>> where [managerId = 200022, managerId_2 = 1138898488078]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[12] - SELECT 
>> count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND 
>> A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 
>> 200022) AND A0.MANAGER_ID_2 = 1138898488078
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@4f459c[
>>   id=200021
>>   id_2=1138898488078
>>   name=employee_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[13] - DELETE 
>> FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = 200021  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@193c0cf[
>>   department=department_1
>>   manager=<null>
>>   id=200023
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[14] - DELETE 
>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200023  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG: 
>> getCollectionByQuery (class 
>> org.apache.ojb.broker.util.collections.RemovalAwareCollection, class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive, 
>> QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078])
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[15] - SELECT 
>>
A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1
.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.
SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 200022) AND 
>> A0.MANAGER_ID_2 = 1138898488078
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: 
>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: 
>> QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078], class descriptor: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive]] 
>> initialized
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@da6bf4[
>>   department=department_2
>>   manager=<null>
>>   id=200024
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[16] - DELETE 
>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200024  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@11381e7[
>>   executives=org.apache.ojb.broker.core.proxy.ListProxyDefaultImpl@100363
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_MANAGER WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[17] - DELETE 
>> FROM INHERITANCE_MANAGER WHERE OBJ_ID = 200022  AND OBJ_ID_2 = 
>> 1138898488078 ------------- ---------------- ---------------
>>
>> Testcase: testDelete took 2.828 sec
>> Testcase: testHsqldbShutdown took 0.016 sec
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


Re: Super class record not being deleted.

Posted by Armin Waibel <ar...@apache.org>.
Hi Chris,

I checked in a fix for OJB-93. If possible please test latest version 
from SVN OJB_1_0_RELEASE branch. This fix will be included in next 
upcoming version (OJB 1.0.5).

regards,
Armin

Armin Waibel wrote:
> Hi Chris,
> 
> Christopher Lowe wrote:
>> Hi All,
>>
>>     I ran the junit test suite for the broker api and got the same
>> result. When a base class object is deleted the corresponding record 
>> in the
>> database is removed but not the super class object record. I ran only the
>> testDelete() method in the InheritanceMultipleTableTest class. I'm 
>> attaching
>> the output with debug on for the sql output. Please see the attached 
>> file.
>> Is anyone else getting this problem? Is there a fix for this?
>>
> 
> This sounds like a bug (thanks for detailed description). Could you add 
> a bug report on JIRA. I will start working on this issue ASAP.
> 
> regards,
> Armin
> 
> 
>> Regards,
>> Chris
>>
>> -----Original Message-----
>> From: Christopher Lowe [mailto:c_lowe@caribsurf.com] Sent: Tuesday, 
>> January 31, 2006 6:57 PM
>> To: 'OJB Users List'
>> Subject: RE: Super class record not being deleted.
>>
>> Hi Armin,
>>
>> I'm using the PersistenceBroker API.
>>
>> Chris.
>>
>> -----Original Message-----
>> From: Armin Waibel [mailto:arminw@apache.org] Sent: Tuesday, January 
>> 31, 2006 4:08 PM
>> To: OJB Users List
>> Subject: Re: Super class record not being deleted.
>>
>> Hi Chris,
>>
>> which api do you use?
>>
>> Armin
>>
>> Christopher Lowe wrote:
>>> Hi All,
>>>             I have an inheritance relationship between my Product and 
>>> Car
>>> objects. New inserts of car objects work fine. The problem I'm
>> experiencing
>>> is that when I remove a car the corresponding product record is not 
>>> being
>>> removed from the product table. The mappings are shown below. I'm using
>>> version db-ojb-1.0.4, the oscahce for caching, and the remote locking
>>> implementation. Is there something wrong with my mappings? I've included
>> my
>>> stack trace so that you can observe that the car and all the 
>>> relationships
>>> are removed correctly, but not the product entry. Please advise.
>>>  
>>> Thank you,
>>> Chris
>>>  
>>> Mappings:
>>>  
>>> <class-descriptor class="com.dm.beans.Product" schema="destinationdb"
>>> table="product">
>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>> primarykey="true" nullable="false" autoincrement="true"/>
>>>     <field-descriptor name="supplierId" column="SUPPLIER_ID"
>>> jdbc-type="INTEGER"/>
>>>     <field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" />
>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>> jdbc-type="BIGINT" locking="true"/>
>>>     <reference-descriptor         name="supplier"         
>>> class-ref="com.dm.beans.suppliers.Supplier"         proxy="true" 
>>>         auto-update="link"         auto-delete="none"
>>>     >
>>>         <foreignkey field-ref="supplierId"/>
>>>     </reference-descriptor>
>>> </class-descriptor>
>>>  
>>> <class-descriptor class="com.dm.beans.car.Car" schema="destinationdb"
>>> table="car">
>>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>>> primarykey="true" nullable="false"/>
>>>     <field-descriptor name="modelId" column="MODEL_ID" 
>>> jdbc-type="INTEGER"
>>> />
>>>     <field-descriptor name="typeId" column="TYPE_ID" jdbc-type="INTEGER"
>> />
>>>     <field-descriptor name="largePassenger" column="LARGE_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="mediumPassenger" column="MEDIUM_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="smallPassenger" column="SMALL_PASSENGER"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="largeLuggage" column="LARGE_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="mediumLuggage" column="MEDIUM_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="smallLuggage" column="SMALL_LUGGAGE"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="quantity" column="QUANTITY"
>> jdbc-type="INTEGER"
>>> />
>>>     <field-descriptor name="allocation" column="ALLOCATION"
>>> jdbc-type="INTEGER" />
>>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>>> jdbc-type="BIGINT" locking="true"/>
>>>     <reference-descriptor         name="super"         
>>> class-ref="com.dm.beans.Product"
>>>     >
>>>         <foreignkey field-ref="id"/>
>>>     </reference-descriptor>
>>>     <reference-descriptor         name="model"         
>>> class-ref="com.dm.beans.type.CarModel"         proxy="true"         
>>> auto-update="link"         auto-delete="false"
>>>     >
>>>         <foreignkey field-ref="modelId"/>
>>>     </reference-descriptor>
>>>     <reference-descriptor         name="type"         
>>> class-ref="com.dm.beans.type.CarType"         proxy="true"         
>>> auto-update="link"         auto-delete="false"
>>>     >
>>>         <foreignkey field-ref="typeId"/>
>>>     </reference-descriptor>
>>>     <collection-descriptor
>>>          name="amenities"
>>>  
>>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.type.Amenity"
>>>          auto-update="link"
>>>          auto-delete="link"
>>>          proxy="true"
>>>          indirection-table="product_amenity"
>>>       >
>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>          <fk-pointing-to-element-class column="AMENITY_ID"/>
>>>     </collection-descriptor>
>>>     <collection-descriptor
>>>          name="mediaFiles"
>>>  
>>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.Multimedia"
>>>          auto-update="link"
>>>          auto-delete="link"
>>>          proxy="true"
>>>          indirection-table="product_multimedia"
>>>       >
>>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>>          <fk-pointing-to-element-class column="MULTIMEDIA_ID"/>
>>>     </collection-descriptor>
>>>     <collection-descriptor
>>>          name="rates"
>>>  
>>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList" 
>>>
>>>          element-class-ref="com.dm.beans.car.CarRate"
>>>          auto-update="true"
>>>          auto-delete="true"
>>>          proxy="true"
>>>     >
>>>         <inverse-foreignkey field-ref="productId"/>
>>>     </collection-descriptor>    </class-descriptor>
>>>  
>>> Stack Trace:
>>>  
>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>> remove():
>>> 518
>>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
>> remove():
>>> com.dm.beans.car.Car@1ac8b37[
>>>   id=518
>>>   supplierId=<null>
>>>   name=<null>
>>>   modelId=<null>
>>>   typeId=<null>
>>>   adults=<null>
>>>   children=<null>
>>>   infants=<null>
>>>   largeLuggage=<null>
>>>   mediumLuggage=<null>
>>>   smallLuggage=<null>
>>>   quantity=<null>
>>>   allocation=<null>
>>> ]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>> executeUpdateSQL:
>>> DELETE FROM product_amenity WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
>> executeUpdateSQL:
>>> DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>>> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG:
>>> getCollectionByQuery (class
>>> org.apache.ojb.broker.util.collections.RemovalAwareList, class
>>> com.dm.beans.car.CarRate, QueryByCriteria from class
>>> com.dm.beans.car.CarRate  where [productId = 518])
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>> 518]
>>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>>> SQL:SELECT
>>>
>> A0.ID,A0.CAR_ID,A0.START_DATE,A0.END_DATE,A0.COMMISSION,A0.DAY1,A0.DAY2,A0.D 
>>
>>> AY3,A0.DAY4,A0.DAY5,A0.DAY6,A0.DAY7,A0.EXTRA,A0.ACK_OPT_LOCK FROM
>>> destinationdb.car_rate A0 WHERE A0.CAR_ID = ?
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@1284903
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
>>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query:
>>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>>> 518], class descriptor: com.dm.beans.car.CarRate]] initialized
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> com.dm.beans.car.CarRate@1d16ecf[
>>>   id=29
>>>   commission=21%
>>>   day1=49.15
>>>   day2=98.3
>>>   day3=136.13
>>>   day4=181.5
>>>   day5=198.0
>>>   day6=198.0
>>>   day7=198.0
>>>   extra=28.29
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@c1dc0b
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> com.dm.beans.car.Car@598a5d[
>>>   id=518
>>>   supplierId=173
>>>   name=Daihatsu - Mini Moke
>>>   modelId=61
>>>   typeId=7
>>>   adults=2
>>>   children=2
>>>   infants=0
>>>   largeLuggage=0
>>>   mediumLuggage=0
>>>   smallLuggage=1
>>>   quantity=2
>>>   allocation=2
>>> ]
>>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>>> org.apache.commons.dbcp.DelegatingPreparedStatement@8b1323
>>>  
>>>  
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>> ------------------------------------------------------------------------
>>
>> Testsuite: org.apache.ojb.broker.AllTests
>> Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 3.235 sec
>> ------------- Standard Output ---------------
>> [BOOT] INFO: -- boot log messages -->
>> [BOOT] INFO: Loading OJB's properties: 
>> file:/C:/db-ojb-1.0.4/target/test/ojb/OJB.properties
>> [BOOT] INFO: Found logging properties file: OJB-logging.properties
>> [BOOT] INFO: Logging: Found logger class 
>> 'org.apache.ojb.broker.util.logging.PoorMansLoggerImpl
>>
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@15856a5[
>>   id=<null>
>>   id_2=1138898488078
>>   name=employee_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) 
>> VALUES (?,?,?,?) 
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM 
>> OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeUpdate: 
>> org.apache.ojb.broker.util.sequence.HighLowSequence@f42ad0[name=SEQ_INHERITANCE_EMPLOYEE,grabSize=20,version=1,maxKey=200040,currentKey=200020] 
>>
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:UPDATE OJB_HL_SEQ SET MAX_KEY=?,GRAB_SIZE=?,VERSION=? WHERE 
>> TABLENAME = ?  AND VERSION = ? 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeUpdate: com.mysql.jdbc.ServerPreparedStatement[2] - UPDATE 
>> OJB_HL_SEQ SET MAX_KEY=200040,GRAB_SIZE=20,VERSION=2 WHERE TABLENAME = 
>> 'SEQ_INHERITANCE_EMPLOYEE'  AND VERSION = 1 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[1] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200021,1138898488078,'employee_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[2] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200022,1138898488078,'manager_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (?,?,?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[3] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200022,1138898488078,null,null,null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>>   
>> executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[ 
>>
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]]
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) 
>> VALUES (?,?,?) [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[4] - 
>> INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) VALUES 
>> (200022,1138898488078,null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>   department=department_1
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[5] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200023,1138898488078,'executive_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>>   department=department_1
>>   manager=<null>
>>   id=200023
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[6] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200023,1138898488078,'department_1',200022,1138898488078) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=<null>
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[7] - INSERT INTO 
>> INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES 
>> (200024,1138898488078,'executive_testDelete_1138898488078',null) 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>>   department=department_2
>>   manager=<null>
>>   id=200024
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeInsert: com.mysql.jdbc.ServerPreparedStatement[8] - INSERT INTO 
>> INHERITANCE_EXECUTIVE 
>> (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES 
>> (200024,1138898488078,'department_2',200022,1138898488078) 
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
> A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN 
>> A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN 
>> INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
> =A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND 
> A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>> AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS 
>> OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN 
>> INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND 
>> A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) 
>> AND A0.OBJ_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: ReportQuery from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive count(*)  
>> where [managerId = 200022, managerId_2 = 1138898488078]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[12] - SELECT 
>> count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE 
>> A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND 
>> A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON 
>> A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 
>> 200022) AND A0.MANAGER_ID_2 = 1138898488078
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@4f459c[
>>   id=200021
>>   id_2=1138898488078
>>   name=employee_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[13] - DELETE 
>> FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = 200021  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@193c0cf[
>>   department=department_1
>>   manager=<null>
>>   id=200023
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = ?  AND OBJ_ID_2 = 
>> ? [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[14] - DELETE 
>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200023  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG: 
>> getCollectionByQuery (class 
>> org.apache.ojb.broker.util.collections.RemovalAwareCollection, class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive, 
>> QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078])
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeQuery: com.mysql.jdbc.ServerPreparedStatement[15] - SELECT 
>> A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE 
>> WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN 
>> A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 
>> 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS 
>> OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN 
>> INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND 
>> A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON 
>> A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN 
>> INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND 
>> A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 200022) AND 
>> A0.MANAGER_ID_2 = 1138898488078
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: 
>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: 
>> QueryByCriteria from class 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where 
>> [managerId = 200022, managerId_2 = 1138898488078], class descriptor: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive]] 
>> initialized
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@da6bf4[
>>   department=department_2
>>   manager=<null>
>>   id=200024
>>   id_2=1138898488078
>>   name=executive_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[16] - DELETE 
>> FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200024  AND OBJ_ID_2 = 
>> 1138898488078 [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] 
>> DEBUG: executeDelete: 
>> org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@11381e7[
>>   executives=org.apache.ojb.broker.core.proxy.ListProxyDefaultImpl@100363
>>   consortiumKey=<null>
>>   department=<null>
>>   manager=<null>
>>   id=200022
>>   id_2=1138898488078
>>   name=manager_testDelete_1138898488078
>>   address=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: 
>> SQL:DELETE FROM INHERITANCE_MANAGER WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: 
>> executeDelete: com.mysql.jdbc.ServerPreparedStatement[17] - DELETE 
>> FROM INHERITANCE_MANAGER WHERE OBJ_ID = 200022  AND OBJ_ID_2 = 
>> 1138898488078 ------------- ---------------- ---------------
>>
>> Testcase: testDelete took 2.828 sec
>> Testcase: testHsqldbShutdown took 0.016 sec
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


Re: Super class record not being deleted.

Posted by Armin Waibel <ar...@apache.org>.
Hi Chris,

Christopher Lowe wrote:
> Hi All,
> 
> 	I ran the junit test suite for the broker api and got the same
> result. When a base class object is deleted the corresponding record in the
> database is removed but not the super class object record. I ran only the
> testDelete() method in the InheritanceMultipleTableTest class. I'm attaching
> the output with debug on for the sql output. Please see the attached file.
> Is anyone else getting this problem? Is there a fix for this?
>

This sounds like a bug (thanks for detailed description). Could you add 
a bug report on JIRA. I will start working on this issue ASAP.

regards,
Armin


> Regards,
> Chris
> 
> -----Original Message-----
> From: Christopher Lowe [mailto:c_lowe@caribsurf.com] 
> Sent: Tuesday, January 31, 2006 6:57 PM
> To: 'OJB Users List'
> Subject: RE: Super class record not being deleted.
> 
> Hi Armin,
> 
> I'm using the PersistenceBroker API.
> 
> Chris.
> 
> -----Original Message-----
> From: Armin Waibel [mailto:arminw@apache.org] 
> Sent: Tuesday, January 31, 2006 4:08 PM
> To: OJB Users List
> Subject: Re: Super class record not being deleted.
> 
> Hi Chris,
> 
> which api do you use?
> 
> Armin
> 
> Christopher Lowe wrote:
>> Hi All,
>>             I have an inheritance relationship between my Product and Car
>> objects. New inserts of car objects work fine. The problem I'm
> experiencing
>> is that when I remove a car the corresponding product record is not being
>> removed from the product table. The mappings are shown below. I'm using
>> version db-ojb-1.0.4, the oscahce for caching, and the remote locking
>> implementation. Is there something wrong with my mappings? I've included
> my
>> stack trace so that you can observe that the car and all the relationships
>> are removed correctly, but not the product entry. Please advise.
>>  
>> Thank you,
>> Chris
>>  
>> Mappings:
>>  
>> <class-descriptor class="com.dm.beans.Product" schema="destinationdb"
>> table="product">
>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>> primarykey="true" nullable="false" autoincrement="true"/>
>>     <field-descriptor name="supplierId" column="SUPPLIER_ID"
>> jdbc-type="INTEGER"/>
>>     <field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" />
>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>> jdbc-type="BIGINT" locking="true"/>
>>     <reference-descriptor 
>>         name="supplier" 
>>         class-ref="com.dm.beans.suppliers.Supplier" 
>>         proxy="true" 
>>         auto-update="link" 
>>         auto-delete="none"
>>     >
>>         <foreignkey field-ref="supplierId"/>
>>     </reference-descriptor>
>> </class-descriptor>
>>  
>> <class-descriptor class="com.dm.beans.car.Car" schema="destinationdb"
>> table="car">
>>     <field-descriptor name="id" column="ID" jdbc-type="INTEGER"
>> primarykey="true" nullable="false"/>
>>     <field-descriptor name="modelId" column="MODEL_ID" jdbc-type="INTEGER"
>> />
>>     <field-descriptor name="typeId" column="TYPE_ID" jdbc-type="INTEGER"
> />
>>     <field-descriptor name="largePassenger" column="LARGE_PASSENGER"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="mediumPassenger" column="MEDIUM_PASSENGER"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="smallPassenger" column="SMALL_PASSENGER"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="largeLuggage" column="LARGE_LUGGAGE"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="mediumLuggage" column="MEDIUM_LUGGAGE"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="smallLuggage" column="SMALL_LUGGAGE"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="quantity" column="QUANTITY"
> jdbc-type="INTEGER"
>> />
>>     <field-descriptor name="allocation" column="ALLOCATION"
>> jdbc-type="INTEGER" />
>>     <field-descriptor name="ackOptLock" column="ACK_OPT_LOCK"
>> jdbc-type="BIGINT" locking="true"/>
>>     <reference-descriptor 
>>         name="super" 
>>         class-ref="com.dm.beans.Product"
>>     >
>>         <foreignkey field-ref="id"/>
>>     </reference-descriptor>
>>     <reference-descriptor 
>>         name="model" 
>>         class-ref="com.dm.beans.type.CarModel" 
>>         proxy="true" 
>>         auto-update="link" 
>>         auto-delete="false"
>>     >
>>         <foreignkey field-ref="modelId"/>
>>     </reference-descriptor>
>>     <reference-descriptor 
>>         name="type" 
>>         class-ref="com.dm.beans.type.CarType" 
>>         proxy="true" 
>>         auto-update="link" 
>>         auto-delete="false"
>>     >
>>         <foreignkey field-ref="typeId"/>
>>     </reference-descriptor>
>>     <collection-descriptor
>>          name="amenities"
>>  
>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>>          element-class-ref="com.dm.beans.type.Amenity"
>>          auto-update="link"
>>          auto-delete="link"
>>          proxy="true"
>>          indirection-table="product_amenity"
>>       >
>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>          <fk-pointing-to-element-class column="AMENITY_ID"/>
>>     </collection-descriptor>
>>     <collection-descriptor
>>          name="mediaFiles"
>>  
>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>>          element-class-ref="com.dm.beans.Multimedia"
>>          auto-update="link"
>>          auto-delete="link"
>>          proxy="true"
>>          indirection-table="product_multimedia"
>>       >
>>          <fk-pointing-to-this-class column="PRODUCT_ID"/>
>>          <fk-pointing-to-element-class column="MULTIMEDIA_ID"/>
>>     </collection-descriptor>
>>     <collection-descriptor
>>          name="rates"
>>  
>> collection-class="org.apache.ojb.broker.util.collections.RemovalAwareList"
>>          element-class-ref="com.dm.beans.car.CarRate"
>>          auto-update="true"
>>          auto-delete="true"
>>          proxy="true"
>>     >
>>         <inverse-foreignkey field-ref="productId"/>
>>     </collection-descriptor>    
>> </class-descriptor>
>>  
>> Stack Trace:
>>  
>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
> remove():
>> 518
>> 2006-01-31 15:35:24,312 DEBUG implementations.CarDAOOJBImpl      -
> remove():
>> com.dm.beans.car.Car@1ac8b37[
>>   id=518
>>   supplierId=<null>
>>   name=<null>
>>   modelId=<null>
>>   typeId=<null>
>>   adults=<null>
>>   children=<null>
>>   infants=<null>
>>   largeLuggage=<null>
>>   mediumLuggage=<null>
>>   smallLuggage=<null>
>>   quantity=<null>
>>   allocation=<null>
>> ]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>> SQL:DELETE FROM product_amenity WHERE PRODUCT_ID=?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
> executeUpdateSQL:
>> DELETE FROM product_amenity WHERE PRODUCT_ID=?
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>> SQL:DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG:
> executeUpdateSQL:
>> DELETE FROM product_multimedia WHERE PRODUCT_ID=?
>> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG:
>> getCollectionByQuery (class
>> org.apache.ojb.broker.util.collections.RemovalAwareList, class
>> com.dm.beans.car.CarRate, QueryByCriteria from class
>> com.dm.beans.car.CarRate  where [productId = 518])
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
> 518]
>> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG:
>> SQL:SELECT
>>
> A0.ID,A0.CAR_ID,A0.START_DATE,A0.END_DATE,A0.COMMISSION,A0.DAY1,A0.DAY2,A0.D
>> AY3,A0.DAY4,A0.DAY5,A0.DAY6,A0.DAY7,A0.EXTRA,A0.ACK_OPT_LOCK FROM
>> destinationdb.car_rate A0 WHERE A0.CAR_ID = ?
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery:
>> org.apache.commons.dbcp.DelegatingPreparedStatement@1284903
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
>> RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query:
>> QueryByCriteria from class com.dm.beans.car.CarRate  where [productId =
>> 518], class descriptor: com.dm.beans.car.CarRate]] initialized
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
>> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>> com.dm.beans.car.CarRate@1d16ecf[
>>   id=29
>>   commission=21%
>>   day1=49.15
>>   day2=98.3
>>   day3=136.13
>>   day4=181.5
>>   day5=198.0
>>   day6=198.0
>>   day7=198.0
>>   extra=28.29
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>> org.apache.commons.dbcp.DelegatingPreparedStatement@c1dc0b
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>> com.dm.beans.car.Car@598a5d[
>>   id=518
>>   supplierId=173
>>   name=Daihatsu - Mini Moke
>>   modelId=61
>>   typeId=7
>>   adults=2
>>   children=2
>>   infants=0
>>   largeLuggage=0
>>   mediumLuggage=0
>>   smallLuggage=1
>>   quantity=2
>>   allocation=2
>> ]
>> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete:
>> org.apache.commons.dbcp.DelegatingPreparedStatement@8b1323
>>  
>>  
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 
> ------------------------------------------------------------------------
> 
> Testsuite: org.apache.ojb.broker.AllTests
> Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 3.235 sec
> ------------- Standard Output ---------------
> [BOOT] INFO: -- boot log messages -->
> [BOOT] INFO: Loading OJB's properties: file:/C:/db-ojb-1.0.4/target/test/ojb/OJB.properties
> [BOOT] INFO: Found logging properties file: OJB-logging.properties
> [BOOT] INFO: Logging: Found logger class 'org.apache.ojb.broker.util.logging.PoorMansLoggerImpl
> 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@15856a5[
>   id=<null>
>   id_2=1138898488078
>   name=employee_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES (?,?,?,?) 
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.TABLENAME,A0.MAX_KEY,A0.GRAB_SIZE,A0.VERSION FROM OJB_HL_SEQ A0 WHERE A0.TABLENAME = ?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeUpdate: org.apache.ojb.broker.util.sequence.HighLowSequence@f42ad0[name=SEQ_INHERITANCE_EMPLOYEE,grabSize=20,version=1,maxKey=200040,currentKey=200020]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:UPDATE OJB_HL_SEQ SET MAX_KEY=?,GRAB_SIZE=?,VERSION=? WHERE TABLENAME = ?  AND VERSION = ? 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeUpdate: com.mysql.jdbc.ServerPreparedStatement[2] - UPDATE OJB_HL_SEQ SET MAX_KEY=200040,GRAB_SIZE=20,VERSION=2 WHERE TABLENAME = 'SEQ_INHERITANCE_EMPLOYEE'  AND VERSION = 1 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[1] - INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES (200021,1138898488078,'employee_testDelete_1138898488078',null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>   executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>   department=department_1
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>   department=department_2
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]]
>   consortiumKey=<null>
>   department=<null>
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=manager_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[2] - INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES (200022,1138898488078,'manager_testDelete_1138898488078',null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>   executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>   department=department_1
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>   department=department_2
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]]
>   consortiumKey=<null>
>   department=<null>
>   manager=<null>
>   id=200022
>   id_2=1138898488078
>   name=manager_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:INSERT INTO INHERITANCE_EXECUTIVE (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES (?,?,?,?,?) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[3] - INSERT INTO INHERITANCE_EXECUTIVE (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES (200022,1138898488078,null,null,null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@9980d5[
>   executives=[org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>   department=department_1
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ], org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>   department=department_2
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]]
>   consortiumKey=<null>
>   department=<null>
>   manager=<null>
>   id=200022
>   id_2=1138898488078
>   name=manager_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) VALUES (?,?,?) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[4] - INSERT INTO INHERITANCE_MANAGER (OBJ_ID,OBJ_ID_2,FK_CONSORTIUM) VALUES (200022,1138898488078,null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>   department=department_1
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[5] - INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES (200023,1138898488078,'executive_testDelete_1138898488078',null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@1d95492[
>   department=department_1
>   manager=<null>
>   id=200023
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[6] - INSERT INTO INHERITANCE_EXECUTIVE (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES (200023,1138898488078,'department_1',200022,1138898488078) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>   department=department_2
>   manager=<null>
>   id=<null>
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[7] - INSERT INTO INHERITANCE_EMPLOYEE (OBJ_ID,OBJ_ID_2,NAME,FK_ADDRESS) VALUES (200024,1138898488078,'executive_testDelete_1138898488078',null) 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@13f7281[
>   department=department_2
>   manager=<null>
>   id=200024
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeInsert: com.mysql.jdbc.ServerPreparedStatement[8] - INSERT INTO INHERITANCE_EXECUTIVE (OBJ_ID,OBJ_ID_2,DEPARTMENT,MANAGER_ID,MANAGER_ID_2) VALUES (200024,1138898488078,'department_2',200022,1138898488078) 
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.NAME,A0.FK_ADDRESS,A1.OBJ_ID,A1.OBJ_ID_2,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' WHEN A1.OBJ_ID IS NOT NULL AND A1.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Employee' END AS OJB_CLAZZ FROM INHERITANCE_EMPLOYEE A0 LEFT OUTER JOIN INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID
=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.FK_CONSORTIUM,A1.DEPARTMENT,A1.MANAGER_ID,A1.MANAGER_ID_2,A2.NAME,A2.FK_ADDRESS,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' END AS OJB_CLAZZ FROM INHERITANCE_MANAGER A0 INNER JOIN INHERITANCE_EXECUTIVE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 INNER JOIN INHERITANCE_EMPLOYEE A2 ON A1.OBJ_ID=A2.OBJ_ID AND A1.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A0.OBJ_ID=A3.OBJ_ID AND A0.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.OBJ_ID = ?) AND A0.OBJ_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery: ReportQuery from class org.apache.ojb.broker.InheritanceMultipleTableTest$Executive count(*)  where [managerId = 200022, managerId_2 = 1138898488078]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery: com.mysql.jdbc.ServerPreparedStatement[12] - SELECT count(*) FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 200022) AND A0.MANAGER_ID_2 = 1138898488078
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: org.apache.ojb.broker.InheritanceMultipleTableTest$Employee@4f459c[
>   id=200021
>   id_2=1138898488078
>   name=employee_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:DELETE FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: com.mysql.jdbc.ServerPreparedStatement[13] - DELETE FROM INHERITANCE_EMPLOYEE WHERE OBJ_ID = 200021  AND OBJ_ID_2 = 1138898488078 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@193c0cf[
>   department=department_1
>   manager=<null>
>   id=200023
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: com.mysql.jdbc.ServerPreparedStatement[14] - DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200023  AND OBJ_ID_2 = 1138898488078 
> [org.apache.ojb.broker.core.QueryReferenceBroker] DEBUG: getCollectionByQuery (class org.apache.ojb.broker.util.collections.RemovalAwareCollection, class org.apache.ojb.broker.InheritanceMultipleTableTest$Executive, QueryByCriteria from class org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where [managerId = 200022, managerId_2 = 1138898488078])
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery: QueryByCriteria from class org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where [managerId = 200022, managerId_2 = 1138898488078]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = ?) AND A0.MANAGER_ID_2 = ?
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery: com.mysql.jdbc.ServerPreparedStatement[15] - SELECT A0.OBJ_ID,A0.OBJ_ID_2,A0.DEPARTMENT,A0.MANAGER_ID,A0.MANAGER_ID_2,A1.NAME,A1.FK_ADDRESS,A2.OBJ_ID,A2.OBJ_ID_2,A2.FK_CONSORTIUM,A3.OBJ_ID,A3.OBJ_ID_2,A3.SHARE_,CASE WHEN A3.OBJ_ID IS NOT NULL AND A3.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Shareholder' WHEN A2.OBJ_ID IS NOT NULL AND A2.OBJ_ID_2 IS NOT NULL THEN 'org.apache.ojb.broker.InheritanceMultipleTableTest$Manager' ELSE 'org.apache.ojb.broker.InheritanceMultipleTableTest$Executive' END AS OJB_CLAZZ FROM INHERITANCE_EXECUTIVE A0 INNER JOIN INHERITANCE_EMPLOYEE A1 ON A0.OBJ_ID=A1.OBJ_ID AND A0.OBJ_ID_2=A1.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_MANAGER A2 ON A0.OBJ_ID=A2.OBJ_ID AND A0.OBJ_ID_2=A2.OBJ_ID_2 LEFT OUTER JOIN INHERITANCE_SHAREHOLDER A3 ON A2.OBJ_ID=A3.OBJ_ID AND A2.OBJ_ID_2=A3.OBJ_ID_2 WHERE (A0.MANAGER_ID = 200022) AND A0.MANAGER_ID_2 = 1138898488078
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: QueryByCriteria from class org.apache.ojb.broker.InheritanceMultipleTableTest$Executive  where [managerId = 200022, managerId_2 = 1138898488078], class descriptor: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive]] initialized
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
> [org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> false
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: org.apache.ojb.broker.InheritanceMultipleTableTest$Executive@da6bf4[
>   department=department_2
>   manager=<null>
>   id=200024
>   id_2=1138898488078
>   name=executive_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: com.mysql.jdbc.ServerPreparedStatement[16] - DELETE FROM INHERITANCE_EXECUTIVE WHERE OBJ_ID = 200024  AND OBJ_ID_2 = 1138898488078 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: org.apache.ojb.broker.InheritanceMultipleTableTest$Manager@11381e7[
>   executives=org.apache.ojb.broker.core.proxy.ListProxyDefaultImpl@100363
>   consortiumKey=<null>
>   department=<null>
>   manager=<null>
>   id=200022
>   id_2=1138898488078
>   name=manager_testDelete_1138898488078
>   address=<null>
> ]
> [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:DELETE FROM INHERITANCE_MANAGER WHERE OBJ_ID = ?  AND OBJ_ID_2 = ? 
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeDelete: com.mysql.jdbc.ServerPreparedStatement[17] - DELETE FROM INHERITANCE_MANAGER WHERE OBJ_ID = 200022  AND OBJ_ID_2 = 1138898488078 
> ------------- ---------------- ---------------
> 
> Testcase: testDelete took 2.828 sec
> Testcase: testHsqldbShutdown took 0.016 sec
> 
> 
> 
> ------------------------------------------------------------------------
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org