Is the SPI implementation supposed to ever throw a LockException,

definitely

or can it rely on the transient layer doing lock checks upfront?

that's a rhetoric question, right?
the spi impl must not rely on the client to behave properly.
but the client may cover some obvious cases (e.g. if the client
is always updated).

(1) If the transient layer always attempts to check for locks, the SPI code that actually implements lock checks may never be used (code coverage).

as i said before: my intention is, that the client not 'always'
check but does, when it can assume, that a lock is present
(as explained in my last mail)...

(2) Performance - we need to balance between "fail early" and "reduce roundtrips between JCR and SPI layer".

i guess, noone would oppose ;)
that argument is general enough that everybody agrees.

I wouldn't want the transient layer to check for locks, even if CacheBehaviour is INVALIDATE.

auch gut.
feel free to propose concrete changes, that would fit your
needs. then we have something real do to argue about.

regards
angela

Reply via email to