What's your actual function? Update functions should work fine for your use case, but can be a little finicky to get working, particularly the first time.
On Apr 5, 2011, at 7:01 PM, Luis Miguel Silva <[email protected]> wrote: > Thank you! I'll probably have to evaluate it then... > > I've looked at the update handlers but i can't get them to work :o\... > I'm creating a _design document with a "updates" field with an update > function inside but i can't seem to get it to work. > > Either way, i think it's time i evaluate MongoDB :o((... (this was > unexpected, i was completely sold on CouchDB :o|). > > On Tue, Apr 5, 2011 at 4:50 PM, Sean Copenhaver > <[email protected]> wrote: >> Ah, the problem is that couchdb does not do partial updates. It writes the >> whole doc. MongoDB I believe does support partial updates though. No >> experience with it. >> >> >> >> On Apr 5, 2011, at 6:41 PM, Luis Miguel Silva >> <[email protected]> wrote: >> >>> More or less! >>> >>> The most common scenario will be: >>> - two or more processes writing to the same document, but only to a >>> specific attribute (not overwriting the whole document) >>> >>> If, by any chance, two processes overwrite the same field, i'm ok with >>> the last one always winning. >>> >>> Thanks, >>> Luis >>> >>> On Tue, Apr 5, 2011 at 4:26 PM, Robert Newson <[email protected]> >>> wrote: >>>> "Ideally, we would be able to update without specifying the _rev, just >>>> posting (or, in this case PUTting) to the document..." >>>> >>>> So you want to blindly overwrite some unknown data? >>>> >>>> B. >>>> >>>> On 5 April 2011 22:57, Zachary Zolton <[email protected]> wrote: >>>>> Luis, >>>>> >>>>> Checkout _update handlers: >>>>> >>>>> http://wiki.apache.org/couchdb/Document_Update_Handlers >>>>> >>>>> >>>>> Cheers, >>>>> >>>>> Zach >>>>> >>>>> On Tue, Apr 5, 2011 at 4:46 PM, Luis Miguel Silva >>>>> <[email protected]> wrote: >>>>>> Dear all, >>>>>> >>>>>> I'm trying to play around with updates and i'm bumping into some >>>>>> problems. >>>>>> >>>>>> Let's image we have to clients that poll a document from the server at >>>>>> the same time and get the same _rev. >>>>>> Then one of them updates the doc based on the _rev it got: >>>>>> [root@xkitten ~]# curl -X PUT -d >>>>>> '{"_rev":"3-0d519bcf08130bf784f3c35d79760740","hello2":"fred2"}' >>>>>> http://localhost:5984/benchmark/test?conflicts=true >>>>>> {"ok":true,"id":"test","rev":"4-03640ebafbb4fcaf127844671f8e2de7"} >>>>>> Then another one tries to update the doc based on the same exact _rev: >>>>>> [root@xkitten ~]# curl -X PUT -d >>>>>> '{"_rev":"3-0d519bcf08130bf784f3c35d79760740","hello3":"fred3"}' >>>>>> http://localhost:5984/benchmark/test?conflicts=true >>>>>> {"error":"conflict","reason":"Document update conflict."} >>>>>> [root@xkitten ~]# >>>>>> >>>>>> Is there a way to avoid this?! (like...make the update just create a >>>>>> new _rev or something)?? >>>>>> >>>>>> Ideally, we would be able to update without specifying the _rev, just >>>>>> posting (or, in this case PUTting) to the document... >>>>>> >>>>>> Thoughts?? >>>>>> >>>>>> Thank you, >>>>>> Luis >>>>>> >>>>> >>>> >>
