Fabian Groffen wrote:
> On 19-04-2009 18:56:59 +0000, Martin Kersten wrote:
>> Log Message:
>> The client context record is shared between threads. This means that you
>> have to protect the structure when connection lists are initialized/used.
> 
> "The client context record is shared between threads"
> 
>> U remote.mx
>> Index: remote.mx
>> ===================================================================
>> RCS file: /cvsroot/monetdb/MonetDB5/src/modules/mal/remote.mx,v
>> retrieving revision 1.87
>> retrieving revision 1.88
>> diff -u -d -r1.87 -r1.88
>> --- remote.mx        18 Apr 2009 08:45:34 -0000      1.87
>> +++ remote.mx        19 Apr 2009 18:56:57 -0000      1.88
>> @@ -512,7 +512,6 @@
>>  #endif
>>  
>>      /* part 1: "user" -- this is trivial */
>> -    mal_set_lock(mal_remoteLock, "remote.list");
>     ^^^
>>      c = userconns;
>>      /* walk through the list */
>>      while (c != NULL) {
>> @@ -524,7 +523,6 @@
>>                      break;
>>              }
>>      }
>> -    mal_unset_lock(mal_remoteLock, "remote.list");

>     ^^^
> 
> Was this intended?  A loop through a shared linked list is made here,
> which potentially can be modified while you walk through it, hence the
> lock that was here.
the locks are now placed one level higher in the calling structure.
It was a consequence of first protecting RMTconnect structures.

> 

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
Monetdb-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-developers

Reply via email to