Jörg Schaible wrote:
> Jörg Schaible wrote:
> 
>> Jörg Schaible wrote:
>>
>>> Hi Phil,
>>>
>>> Phil Steitz wrote:
>>>
>>> [snip]
>>>
>>>>>> 1.4 (JDBC 4) version:
>>>>>> http://people.apache.org/~psteitz/dbcp-1.4-rc1
>>>>>> http://people.apache.org/~psteitz/dbcp-1.4-rc1/site
>>>>>> http://people.apache.org/~psteitz/dbcp-1.4-rc1/maven
>>>>>> http://svn.apache.org/repos/asf/commons/proper/dbcp/tags/DBCP_1_4_RC1/
>>>>> Builds from source and runs tests with IcedTea6 1.6.2, Sun JDK 1.6 and
>>>>> Sun JDK 1.7.0.0.alpha69 (add to README.txt ?!?). However it fails with
>>>>> IBM 1.6.0.6:
>>>>>
>>>>> ========================== %< ================================
>>>>>
> -------------------------------------------------------------------------------
>>>>> Test set: org.apache.commons.dbcp.managed.TestBasicManagedDataSource
>>>>>
> -------------------------------------------------------------------------------
>>>>> Tests run: 46, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 3.398
>>>>> sec <<< FAILURE!
>>>>>
> testReallyClose(org.apache.commons.dbcp.managed.TestBasicManagedDataSource)
>>>>> Time elapsed: 0.066 sec  <<< FAILURE!
>>>>> junit.framework.AssertionFailedError: Expecting SQLException -
>>>>> XAResources orphaned
>>>>> at junit.framework.Assert.fail(Assert.java:47)
>>>>> at
>>>>>
> org.apache.commons.dbcp.managed.TestBasicManagedDataSource.testReallyClose(TestBasicManagedDataSource.java:72)
>>>> I could use some help debugging this one.  I do not have the JDK to
>>>> test with and the failure makes no sense to me.  Does it happen
>>>> every time?
>>> It seems it was caused by a difference in the WeakReference
>>> implementation. The DelegactingConnection returned the same hashCode than
>>> the inner connection. However, both instances were kept in the registry
>>> in xaReference (a WeakMap).

Need to figure out why that is happening.  This could be a test bug.
 The connection should only be added once to the registry.

 After using a distinguishable hashCode, the
>>> test succeeds also with IBM JDK.
>>>
>>> Additionally I dropped the JDK 1.4 deps from the POM.

That is OK for the trunk POM.  Thanks.
>>>
>>> I'll look into DBCP 1.3 ASAP - it got too late now ;-)
>> Guess it was really too late yesterday. While TestBasicManagedDataSource
>> works now, my change borked the TestManagedDataSourceInTx tests
>> (interestingly 33 with Sun JDK, but only 28 with IBM). Basically my change
>> broke the contract with hashCode that should be the same for "equal"
>> objects.
>>
>> Question is now, what to do. If we revert the change, the IBM JDK is
>> broken and it fails to release the transactions. Otherwise we have to
>> change additionally the equals method, so that a DelegatingConnection is
>> not equal to the wrapped Connection. However, this may case even more
>> hick-ups.
> 
> I've reverted the hashCode change for now that brings back the IBM JDK 
> problem. :-/

Thanks, Jorg.  I think changing equals is not a good idea.  Thanks
again for your help.

Phil
> 
> - Jörg
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to