jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Felix Meschberger (JIRA)" <j...@apache.org>
Subject [jira] Created: (JCR-15) PersistentNode.store() ignores status when storing
Date Fri, 29 Oct 2004 07:40:32 GMT
PersistentNode.store() ignores status when storing

         Key: JCR-15
         URL: http://issues.apache.org/jira/browse/JCR-15
     Project: Jackrabbit
        Type: Bug
 Environment: Jackrabbit SVN revision 55714
    Reporter: Felix Meschberger

While looking for a performance bottle neck I came across this issue: When a PersistentNodeState
is asked to store itself in the PersistentNodeState.store() method, it calls its PersistenceManager
to store it.

This is not a problem in itself. The problem is, that if the PersistentNodeState has not been
modified, the object does not need to be stored. Doiing it anyway just consumes cycles ! In
the case of a deep, unmodified hierarchy, this just results in nodes being written to persistence
for nothing.

Comes to it, that this method sends an event, which in the case of an unmodified node state
will be notifyStateUpdated(), which is complete nonsense, because nothing has actually been

I suggest to modify the PersistentNodeState.store() method to only do work if modified.

Note: I encountered this issue, whily tracking down performance problems when creating versionable
nodes, which turned out to be located somewhere within the PersistentVersionManager.createVersionHistory(NodeImpl)
method. And there, predominantly the store() methods consume time.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
If you want more information on JIRA, or have a bug to report see:

View raw message