Andreas Hartmann schrieb:
> Jörn Nettingsmeier schrieb:
>
>> Andreas Hartmann wrote:
>
>>>> * SourceNodeRCMLs are now singletons per source URI, i.e. for each
>>>> source URI only one RCML object is created. This allows to synchronize
>>>> access to the RCML methods, avoiding concurrent modifications.
>> let me see if i'm getting this: a source URI is a uuid? or a uuid plus
>> language? or uuid plus language plus revision? no, the last wouldn't
>> make sense... can you elaborate?
>
> ATM source URIs are lenya:// URIs. E.g., the sitetree has a source
> URI which doesn't contain a UUID.
>
>
>>>> * Check-Out is now per session and not per user, i.e. you won't run
>>>> into trouble if you have two browser windows open.
>> makes sense.
>>
>>> Another one:
>>>
>>> * UnitOfWorkImpl.commit()/rollback() are now locked via the class
>>> object. This means that only one session can be committed at a time.
>>> Before, there have been exceptions ("... has been checked out by another
>>> user") when running the load tests and two sessions were committed at
>>> the same time.
>> a lock in the class object? that means a global lock iiuc.
>
> Yes.
>
>> what happens
>> to other sessions that want to commit? do they spin, or are they being
>> notified, or does the user see an error and is prompted to retry?
>
> They are just blocked by the JVM. Committing a session should usually
> be a matter of some milliseconds, so the user shouln't notice. It can
> happ
Ooops :)
It can happen in high load conditions, though.
-- Andreas
> I know this isn't the most elegant approach, but in this area we should
> go for the safest solution. Synchronization issues in the commit stage
> can lead to an inconsistent repository (which occured during my load
> tests).
>
> -- Andreas
>
>> (i
>> know, i should read the code, but it's quite a chunk, and i'm up to
>> other things atm - still trying to get a proxy test environment up...)
>>
>>
>> thanks,
>>
>> jörn
>>
>>
>
>
--
Andreas Hartmann, CTO
BeCompany GmbH
http://www.becompany.ch
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]