Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 355FF8F9D for ; Fri, 12 Aug 2011 23:35:51 +0000 (UTC) Received: (qmail 6173 invoked by uid 500); 12 Aug 2011 23:35:50 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 5964 invoked by uid 500); 12 Aug 2011 23:35:49 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 5948 invoked by uid 99); 12 Aug 2011 23:35:49 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Aug 2011 23:35:49 +0000 X-ASF-Spam-Status: No, hits=-2000.8 required=5.0 tests=ALL_TRUSTED,NORMAL_HTTP_TO_IP,RP_MATCHES_RCVD,WEIRD_PORT X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Aug 2011 23:35:47 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 3772ABAE83 for ; Fri, 12 Aug 2011 23:35:27 +0000 (UTC) Date: Fri, 12 Aug 2011 23:35:27 +0000 (UTC) From: "Erick Tryzelaar (JIRA)" To: dev@couchdb.apache.org Message-ID: <188397154.35170.1313192127224.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Created] (COUCHDB-1248) 500 http error when replicating with doc_ids=null MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 500 http error when replicating with doc_ids=3Dnull ------------------------------------------------- Key: COUCHDB-1248 URL: https://issues.apache.org/jira/browse/COUCHDB-1248 Project: CouchDB Issue Type: Bug Components: Replication Affects Versions: 1.1 Environment: Apple OS X 10.6, CouchDB 1.1.0, Erlang R14B03 Reporter: Erick Tryzelaar Fix For: 1.0.2 Couchdb 1.1.0 throws an exception when passing a null doc_ids. This error d= oes not happen in 1.0.2. Here's an example: $ curl -H "content-type: application/json" -XPUT "http://127.0.0.1:5984/cou= chrest-test" $ curl -H "content-type: application/json" -XPUT "http://127.0.0.1:5984/cou= chrest-test-replication" $ curl -H "content-type: application/json" -XPOST -d "{\"doc_ids\":null,\"t= arget\":\"couchrest-test-replication\",\"create_target\":false,\"continuous= \":false,\"source\":\"http://127.0.0.1:5984/couchrest-test\"}" "http://127.= 0.0.1:5984/_replicate" {"error":"case_clause","reason":"{error,\n {{{badmatch,\n {erro= r,\n {{case_clause,null},\n [{couch_rep_changes_= feed,init,1},\n {gen_server,init_it,6},\n {pr= oc_lib,init_p_do_apply,3}]}}},\n [{couch_rep,do_init,1},\n {couc= h_rep,init,1},\n {gen_server,init_it,6},\n {proc_lib,init_p_do_= apply,3}]},\n {child,undefined,\"f88508b53ee0a5ccd49aa64197f385ae\",\n = {gen_server,start_link,\n [couch_rep,\n [\= "f88508b53ee0a5ccd49aa64197f385ae\",\n {[{<<\"doc_ids\">>,nul= l},\n {<<\"target\">>,<<\"couchrest-test-replication\">>},\= n {<<\"create_target\">>,false},\n {<<\"con= tinuous\">>,false},\n {<<\"source\">>,<<\"http://127.0.0.1:= 5984/couchrest-test\">>}]},\n {user_ctx,null,\n = [<<\"_admin\">>],\n <<\"{couch_httpd_auth, default_a= uthentication_handler}\">>}],\n []]},\n temporary,1,wo= rker,\n [couch_rep]}}}"} The couchdb log file reports: [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6901.0>] 127.0.0.1 - - 'HEAD' /c= ouchrest-test/ 200 [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6902.0>] 127.0.0.1 - - 'GET' /co= uchrest-test/ 200 [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6904.0>] 127.0.0.1 - - 'GET' /co= uchrest-test/_local/f88508b53ee0a5ccd49aa64197f385ae 404 [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6905.0>] 127.0.0.1 - - 'GET' /co= uchrest-test/_local/95173aa20da0c34f68b0ae173cf37d1e 404 [Fri, 12 Aug 2011 23:30:24 GMT] [error] [<0.6928.0>] {error_report,<0.328.0= >, {<0.6928.0>,crash_report, [[{initial_call, {couch_rep_changes_feed,init,['Argument__1'= ]}}, {pid,<0.6928.0>}, {registered_name,[]}, {error_info, {exit, {{case_clause,null}, [{couch_rep_changes_feed,init,1}, {gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}, [{gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}}, {ancestors, [<0.6919.0>,couch_rep_sup, couch_primary_services,couch_server_sup, <0.329.0>]}, {messages,[]}, {links,[<0.6919.0>]}, {dictionary,[]}, {trap_exit,true}, {status,running}, {heap_size,610}, {stack_size,24}, {reductions,134}], []]}} [Fri, 12 Aug 2011 23:30:24 GMT] [error] [<0.6919.0>] {error_report,<0.328.0= >, {<0.6919.0>,crash_report, [[{initial_call,{couch_rep,init,['Argument__1']}}, {pid,<0.6919.0>}, {registered_name,[]}, {error_info, {exit, {{badmatch, {error, {{case_clause,null}, [{couch_rep_changes_feed,init,1}, {gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}}}, [{couch_rep,do_init,1}, {couch_rep,init,1}, {gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}, [{gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}}, {ancestors, [couch_rep_sup,couch_primary_services, couch_server_sup,<0.329.0>]}, {messages, [{'EXIT',<0.6928.0>, {{case_clause,null}, [{couch_rep_changes_feed,init,1}, {gen_server,init_it,6}, {proc_lib,init_p_do_apply,3}]}}]}, {links,[<0.379.0>]}, {dictionary,[]}, {trap_exit,true}, {status,running}, {heap_size,2584}, {stack_size,24}, {reductions,3370}], []]}} [Fri, 12 Aug 2011 23:30:24 GMT] [error] [<0.6900.0>] Uncaught error in HTTP= request: {error, {case_clause, {error, {{{badmatch, {error, {{case_clause, null}, [{couch_rep_ch= anges_feed, init,1}, {gen_server, init_it,6}, {proc_lib, init_p_do_ap= ply, 3}]}}}, [{couch_rep, do_init,1}, {couch_rep,init,= 1}, {gen_server, init_it,6}, {proc_lib, init_p_do_apply= , 3}]}, {child,undefined, "f88508b53ee0a5cc= d49aa64197f385ae", {gen_server, start_link, [couch_rep, ["f88508b53ee0a= 5ccd49aa64197f385ae", {[{<<"doc_ids"= >>, null}, {<<"target">= >, <<"couchres= t-test-replication">>}, {<<"create_t= arget">>, false}, {<<"continuo= us">>, false}, {<<"source">= >, <<"http://1= 27.0.0.1:5984/couchrest-test">>}]}, {user_ctx,null= , [<<"_admin">>= ], <<"{couch_htt= pd_auth, default_authentication_handler}">>}], []]}, temporary,1,worke= r, [couch_rep]}}}}} [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6900.0>] Stacktrace: [{io_lib_pr= etty,cind_tag_tuple,7}, {io_lib_pretty,while_fail,3}, {io_lib_pretty,print,6}, {io_lib_format,build,3}, {io_lib_format,build,3}, {io_lib_format,build,3}, {io_lib_format,build,3}, {io_lib_format,build,3}] [Fri, 12 Aug 2011 23:30:24 GMT] [info] [<0.6900.0>] 127.0.0.1 - - 'POST' /_= replicate 500 In comparison, here's the replication without null doc_ids: $ curl -H "content-type: application/json" -XPOST -d "{\"target\":\"couchre= st-test-replication\",\"create_target\":false,\"continuous\":false,\"source= \":\"http://127.0.0.1:5984/couchrest-test\"}" "http://127.0.0.1:5984/_repli= cate" {"ok":true,"no_changes":true} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira