Hi,

Thanks a lot! I found an additional problem (creating and dropping
temporary database objects was not correctly synchronized). I will fix
this problem for the next release.

Regards,
Thomas


On Tue, Jul 21, 2009 at 5:27 PM, Thomas
Mueller<[email protected]> wrote:
> Hi,
>
> I'm sorry for the delay... I will have a look in one week (I'm on
> vacation for one week).
>
> Regards,
> Thomas
>
>
> On Tue, Jun 30, 2009 at 7:25 AM, Eric Faulhaber<[email protected]> 
> wrote:
>> Hello Thomas,
>>
>> During testing of a project which uses H2 v1.1.113 in embedded,
>> multi-threaded mode for temporary table support, we hit a
>> ConcurrentModificationException in DiskFile.java.  A colleague found that
>> unsynchronized access to the potentiallyFreePages set in that class was the
>> cause.
>>
>> I have attached his test case which illustrates the problem (at least on my
>> dual core Ubuntu box using the Sun Linux JVM v1.6.0_05).  The attached zip
>> file also contains a patch which resolves the issue (note the patch is made
>> against h2_head revision 1583 for convenience, but I have only tested the
>> fix with v1.1.113).
>>
>> The fix synchronizes access to the potentiallyFreePages object using the
>> object itself as the monitor, even though the reference to that object may
>> be reset with a new HashSet instance in DiskFile.reset().  I did this to
>> avoid adding another instance variable to the class as a lock object,
>> because it seems like reset() is only called at well known times, such that
>> I presume this to be a safe approach.  If this presumption is incorrect (I
>> could not determine this definitively by reviewing the code), it would be
>> better to synchronize on a separate lock object.
>>
>> Please consider including this fix into the project.
>>
>> Best regards,
>> Eric Faulhaber
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/h2-database?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to