+1 

this sounds like an excellent idea.


On Jan 23, 2011, at 12:21 AM, kowsik wrote:

> I've been spending a fair bit of time on profiling the performance
> aspects of Couch. One common recurring theme is updating documents on
> a write-heavy site. This is currently what happens:
> 
> PUT /db/doc_id
>    <- 409 indicating conflict
> 
> loop do
>    GET /db/doc_id
>        <- 200
> 
>    PUT /db/doc_id
>        <- 201 (successful and returns the new _rev)
> end until we get a 201
> 
> What would be beneficial is if I can request the "current" doc during
> PUT like so:
> 
> PUT /db/doc_id?include_doc=true
>    <- 409 conflict (but the 'doc' at the current _rev is returned)
> 
> This would allow the caller to simply take the doc that was returned,
> update it and try PUT again (eliminate the extra GET). This is
> especially valuable when the app is on one geo and the db is in yet
> another (think couchone or cloudant).
> 
> 2 cents,
> 
> K.
> ---
> http://twitter.com/pcapr
> http://labs.mudynamics.com

Reply via email to