deduplicate NodePropertyChangeOperations in ROP commit
------------------------------------------------------

                 Key: CAY-971
                 URL: https://issues.apache.org/cayenne/browse/CAY-971
             Project: Cayenne
          Issue Type: Improvement
          Components: Cayenne Core Library
            Reporter: Ari Maniatis
            Assignee: Andrus Adamchik


In ROP, NodePropertyChangeOperation events are sent from the client to the 
server on commit. These make up a ObjectContextChangeLog and are applied in 
order on the server. However this results in excess network traffic in 
situations where the client application might update attributes many times 
before commit. In our case,  we update on every keystroke.

Currently, ObjectContextChangeLog is an ArrayList of GraphDiffs 
(NodePropertyChangeOperations in this situation). Markers seem to also separate 
groups of GraphDiffs (is this for rollback and nested transactions?)

Should this become an ArrayList of markerGroups, each of is a 
Map<ObjectAttribute, GraphDiff> and therefore redundant events will not end up 
in the ObjectContextChangeLog? Or is this too simplistic...

-- 
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