You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by "José Varela (JIRA)" <ji...@apache.org> on 2017/05/11 13:44:04 UTC

[jira] [Commented] (COUCHDB-2989) Too little timeout causes _changes to crash

    [ https://issues.apache.org/jira/browse/COUCHDB-2989?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16006441#comment-16006441 ] 

José Varela commented on COUCHDB-2989:
--------------------------------------

Hello,
I am having this issue too, but in my case the problem is when I add "since=now".
In other words if I do: "http://localhost:5984/DB/_changes?feed=eventsource&include_docs=true" - works like a charm;
But if I do: "http://localhost:5984/edp_content/_changes?feed=eventsource&include_docs=true&since=now" - causes an 500 - Internal Server Error which I only I could check with Wireshark. And the server log:

{panel}
[notice] 2017-05-11T13:41:32.017174Z couchdb@localhost <0.1817.0> f435c68857 localhost:5984 127.0.0.1 undefined GET /DB/_changes?feed=eventsource&include_docs=true&since=now 500 ok 5479
[error] 2017-05-11T13:41:32.017247Z couchdb@localhost <0.5196.0> 2974d4a407 req_err(3344793007) badrecord : cacc
{panel}

> Too little timeout causes _changes to crash
> -------------------------------------------
>
>                 Key: COUCHDB-2989
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-2989
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Database Core
>            Reporter: Sebastian Rothbucher
>            Priority: Minor
>
> Reproduce: create a DB, pull changes (here: copied from changes.js test cases as eventsource): this will still work; create a doc, pull changes again with very small timeout: crashes. Leaving the timeout out or specifying a sufficient one will work OK. Otherwise, the stream will abort with HTTP 500 (which in fact is not valid for chunked transfer (i.e. causes a cryptic libcurl/curl error message). 
> Use curl --raw for testing, so you see the effect.
> Here's the log: 
> {noformat}
> 2016-04-14 16:27:40.210 [notice] node1@127.0.0.1 <0.19523.0> a9dc01022c 127.0.0.1 localhost:15984 GET /test_suite_db_ykrdxkom/_changes?feed=eventsource&timeout=0&since=0 500 ok 39
> 2016-04-14 16:27:56.449 [error] node1@127.0.0.1 <0.19886.0> req_err(3566922760) badrecord : cacc
>     [<<"chttpd_db:changes_callback/2 L181">>,<<"fabric_view_changes:handle_message/3 L285">>,<<"rexi_utils:process_mailbox/6 L55">>,<<"rexi_utils:recv/6 L49">>,<<"fabric_view_changes:receive_results/4 L215">>,<<"fabric_view_changes:send_changes/6 L176">>,<<"fabric_view_changes:keep_sending_changes/8 L82">>,<<"fabric_view_changes:go/5 L43">>]
> 2016-04-14 16:27:56.449 [error] node1@127.0.0.1 <0.19886.0> httpd 500 error response:
>  {"error":"badrecord","reason":"cacc","ref":3566922760}
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)