couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Adam Kocoloski <adam.kocolo...@gmail.com>
Subject Re: [jira] Commented: (COUCHDB-504) HTTP/1.1 keep alive fails with AB
Date Tue, 15 Sep 2009 22:22:27 GMT
There's no keep-alive in HTTP/1.0 ...

Sent from my iPhone

On Sep 15, 2009, at 6:11 PM, "Paul Joseph Davis (JIRA)"  
<jira@apache.org> wrote:

>
>    [ https://issues.apache.org/jira/browse/COUCHDB-504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12755734#action_12755734

>  ]
>
> Paul Joseph Davis commented on COUCHDB-504:
> -------------------------------------------
>
> http://code.google.com/p/couchdb-python/issues/detail?id=85
>
> Looks like this could be related.
>
>> HTTP/1.1 keep alive fails with AB
>> ---------------------------------
>>
>>                Key: COUCHDB-504
>>                URL: https://issues.apache.org/jira/browse/COUCHDB-504
>>            Project: CouchDB
>>         Issue Type: Bug
>>         Components: HTTP Interface
>>   Affects Versions: 0.10
>>        Environment: Trunk
>>           Reporter: Paul Joseph Davis
>>           Assignee: Paul Joseph Davis
>>           Priority: Blocker
>>
>> Reported on dev@
>> On Tue, Sep 15, 2009 at 3:33 PM, thomas hallaran  
>> <thallaran@gmail.com> wrote:
>>> Hi all,
>>> We are using couchdb in production and have come across what  
>>> appears to be a
>>> bug in the HTTP implementation. Apparently http keep alive  
>>> requests are not
>>> correctly supported by couchdb.
>>>
>>> This problem has been verified for both couchdb .10 a running on   
>>> ubuntu
>>> with erlang 13.b1 and couchdb .91 running on osx.  We have also  
>>> reproduced
>>> it with multiple http clients, the apache hc java client, curl and  
>>> ab.
>>>
>>> To Reproduce: ab -v 4 -k -n1
>>> http://localhost:5984/{COUCHDB_GET_ENDPOINT}<http://localhost:5984/%7BCOUCHDB_GET_ENDPOINT%7D

>>> >times
>>> out. If you add more requests for ab to do (-n4 or something) you  
>>> will
>>> see that rather than reusing the connection, each keepalive  
>>> request times
>>> out and then the connection is reopened and the request made.
>> And I've verified:
>> $ svn up
>> #snipped
>> Updated to revision 815457.
>> $ ./bootstrap && ./configure && make dev
>> #snipped
>> $ ./utils/run
>> Apache CouchDB 0.11.0a815457 (LogLevel=info) is starting.
>> Apache CouchDB has started. Time to relax.
>> # In second terminal
>> $ curl -X PUT http://127.0.0.1:5984/test_fu
>> {"ok":true}
>> $ curl -X PUT -d '{"stuff": "here"}' http://127.0.0.1:5984/test_fu/beer
>> {"ok":true,"id":"beer","rev":"1-9782357dd8b8d18d94843686e510ec92"}
>> $ ab -v 4 -k -n1 http://127.0.0.1:5984/test_fu/beer
>> This is ApacheBench, Version 2.3 <$Revision: 655654 $>
>> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
>> Licensed to The Apache Software Foundation, http://www.apache.org/
>> Benchmarking 127.0.0.1 (be patient)...INFO: POST header ==
>> ---
>> GET /test_fu/beer HTTP/1.0
>> Connection: Keep-Alive
>> Host: 127.0.0.1:5984
>> User-Agent: ApacheBench/2.3
>> Accept: */*
>> ---
>> LOG: header received:
>> HTTP/1.0 200 OK
>> Server: CouchDB/0.11.0a815457 (Erlang OTP/R13B)
>> Etag: "1-9782357dd8b8d18d94843686e510ec92"
>> Date: Tue, 15 Sep 2009 19:44:36 GMT
>> Content-Type: text/plain;charset=utf-8
>> Content-Length: 74
>> Cache-Control: must-revalidate
>> {"_ 
>> id" 
>> :"beer","_rev":"1-9782357dd8b8d18d94843686e510ec92","stuff":"here"}
>> LOG: Response code = 200
>> apr_poll: The timeout specified has expired (70007)
>
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>

Mime
View raw message