You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cayenne.apache.org by "Andrus Adamchik (JIRA)" <de...@cayenne.apache.org> on 2008/02/03 23:43:34 UTC

[JIRA] Closed: (CAY-971) ROP GraphDiff "compressor"

     [ https://issues.apache.org/cayenne/browse/CAY-971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrus Adamchik closed CAY-971.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 3.0

> ROP GraphDiff "compressor"
> --------------------------
>
>                 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
>             Fix For: 3.0
>
>
> 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.