I'm working on some projects that may be of use to you. I'm already down these rabbit holes!
I have https://github.com/dominictarr/xdiff which diffs and patches json. it can also do a 3-way merge, which is used to reconcile concurrent changes. Also, I have https://github.com/dominictarr/snob which manages series of changes. it's the same architecture as git. but allows you to plug in a difftool (that implements diff, diff3, and patch) since you have already architected your application, xdiff may be more useful to you. either way, i've been working on these mainly because they are interesting problems, and would be very interested to see how they apply in practice. is the browser also sending back changes? or is it only going one way? On Thu, Apr 19, 2012 at 2:56 PM, Mark Hahn <[email protected]> wrote: > I'm sending changed docs from node to the browser. Then the browser > compares the doc to the dom. If i only sent doc changes there would be > less net traffic and several many of changes wouldn't need to be sent at > all. > > The particular situation that caused me to post this question is a case > where only about 1% of the changes are needed. It bugs me to have so much > unneeded traffic. > > I could cache all the data sent to the client to compare in the server. > I've also thought of writing a summary of what is changed on writes along > with the document. I wanted to ask here before I went down any of these > rabbit holes. > > On Wed, Apr 18, 2012 at 6:50 PM, Dominic Tarr <[email protected] > >wrote: > > > couch just doesn't track things at that level, since versioning is done > at > > the document level. > > > > how are you doing handling this at the moment? > > > > are you using a library to do a diff of the conflicted versions or > > something like that? > > > > On Thu, Apr 19, 2012 at 8:28 AM, Mark Hahn <[email protected]> wrote: > > > > > Was there a suggestion in the voting list to tell the user what has > > changed > > > when a change notification or conflict is issued? My app burns a lot > of > > > resources because of this problem. > > > > > >
