[
https://issues.apache.org/jira/browse/COUCHDB-1510?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13430329#comment-13430329
]
Jay Beavers commented on COUCHDB-1510:
--------------------------------------
I have also run into this problem while writing a custom replication partner.
> new_edits=false on new document causes function_clause error
> ------------------------------------------------------------
>
> Key: COUCHDB-1510
> URL: https://issues.apache.org/jira/browse/COUCHDB-1510
> Project: CouchDB
> Issue Type: Bug
> Affects Versions: 1.2
> Reporter: Robert Newson
> Assignee: Robert Newson
> Fix For: 1.2.1, 1.3
>
>
> The code for handling new_edits=false assumes a previous revision;
> couch_db_updater.erl;
> fun({Client, {#doc{revs={Pos,[_Rev|PrevRevs]}}=NewDoc, Ref}}, AccTree) ->
> but in the case of a new document, there isn't one. The user then receives an
> error, the updater process dies with a function clause.
> The problem here is that a user (elliotcm) is doing new_edits=false for all
> requests, and the intensity of the gen_server crashes under load is
> sufficient to propogate upward to the top supervisor, crashing couchdb.
> So, is the correct behavior to return a 400 or a 201?
> #!/bin/sh
>
>
> URL=http://localhost:5984/mergetest
> curl -XDELETE $URL
> curl -XPUT $URL
> curl -XPUT -d '{}' $URL/doc?new_edits=false
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira