Setting a new property value causes a read of the previous property value
-------------------------------------------------------------------------

                 Key: JCR-1508
                 URL: https://issues.apache.org/jira/browse/JCR-1508
             Project: Jackrabbit
          Issue Type: Bug
          Components: jackrabbit-jcr2spi
    Affects Versions: 1.4
            Reporter: David Rauschenbach


When using JCR2SPI with a custom SPI, getProperty is called when one attempts 
to set a new property value with disregard to the previous value. The current 
JCR2SPI implementation causes a getPropertyInfo, which requests the old value 
from the back-end. This is fundamentally unsound, and kills performance.

An SPI has no choice but to guard against this by returning a PropertyInfo 
proxy that performs lazy-loading of the value. The problem is that if an error 
occurs when dereferencing the value, and when performing the lazy-load, JCR2SPI 
is ill-suited to hande an unchecked exception at such a time. Besides, it is a 
"hack upon a hack", because JCR2SPI could do this work itself, by making proper 
use of the SPI functions for requesting property type information.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to