[Baypiggies] Need help root causing exception http.client.BadStatusLine

Shubhra Sharma sharma.shubhra07 at gmail.com
Mon Oct 29 04:17:52 CET 2012


So nc -l localhost 8080 in one terminal tab and running my client in
another tab. My client does several POST, PUT and some GETs. I did a Ctrl-C
but didnot hit the Bad StatusLine on my OSX10.7.x. I never hit the Bad
StatusLine on my OSX10.7.x. It occurs only on CentOS. Maybe I am missing
something?

Thanks for your help,
Shubhra

On Sun, Oct 28, 2012 at 7:09 PM, AM <ams.fwd at gmail.com> wrote:

> I think what Guido meant was that the server was alive but did not respond
> with anything, instead closing the connection.
>
> Assuming you are running on linux or OSX a quick way to check it is to use
> the netcat tool in a terminal:
>
> nc -l -p 8080
>
> Then have your client connect to localhost:8080/...
>
> In the terminal you should see the request. Ctrl-C netcat and you should
> (afaik) see the BadStatusLine error.
>
> What that would mean is that somewhere tomcat decided to simply close the
> connection before any response was sent out.
>
> HTH
> AM
>
>
> On 10/28/2012 06:37 PM, Shubhra Sharma wrote:
>
>> Hi Guido,
>>
>> Thanks for responding.I will check the catalina logs to see what happened.
>>
>> When tomcat is not running on my setup I see the following error:
>>
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**site-packages/httplib2/__init_**_.py", line
>> 1207, in request
>>     (response, content) = self._request(conn, authority, uri,
>> request_uri, method, body, headers, redirections, cachekey)
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**site-packages/httplib2/__init_**_.py", line
>> 961, in _request
>>     (response, content) = self._conn_request(conn, request_uri, method,
>> body, headers)
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**site-packages/httplib2/__init_**_.py", line
>> 898, in _conn_request
>>     conn.connect()
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**http/client.py", line 724, in connect
>>     self.timeout, self.source_address)
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**socket.py", line 404, in create_connection
>>     raise err
>>   File "/opt/local/Library/**Frameworks/Python.framework/**
>> Versions/3.2/lib/python3.2/**socket.py", line 395, in create_connection
>>     sock.connect(sa)
>> socket.error: [Errno 61] Connection refused
>>
>> I did not see the BadStatusLine exception in my unittesting. Is there
>> anything I can do to catch this exception, the try catch around the http
>> request did not catch it? I am using httplib2 if that helps
>> Thanks,
>> Shubhra
>>
>> On Sun, Oct 28, 2012 at 5:28 PM, Guido van Rossum <guido at python.org<mailto:
>> guido at python.org>> wrote:
>>
>>     That particular line where this is raised means the server closed the
>>     connection without sending any response at all. Check your server
>>     logs?
>>
>>     On Sun, Oct 28, 2012 at 4:00 PM, Shubhra Sharma
>>     <sharma.shubhra07 at gmail.com <mailto:sharma.shubhra07@**gmail.com<sharma.shubhra07 at gmail.com>
>> >>
>>
>>     wrote:
>>     > Hi Aahz,
>>     >
>>     > Thanks for responding. I'm not sending an Expect Header and I'm
>>     using
>>     > Apache-Coyote/1.1
>>     >
>>     > Thanks,
>>     > Shubhra
>>     >
>>     >
>>     > On Sun, Oct 28, 2012 at 2:06 PM, Aahz <aahz at pythoncraft.com
>>     <mailto:aahz at pythoncraft.com>> wrote:
>>     >>
>>     >> On Sun, Oct 28, 2012, Shubhra Sharma wrote:
>>     >> >
>>     >> > I am encountering http.client.BadStatusLine exception when I
>>     run my
>>     >> > python
>>     >> > scripts on CentOS6.32 but things seem to work fine on MAC
>>     OSX10.7.5 and
>>     >> > 10.8. I'm on Python3.2.3.
>>     >> >
>>     >> > I searched for answers on the internet  and looked at the python
>>     >> > documentation as well without much luck. As per the
>>     documentation  if a
>>     >> > server responds with a HTTP status code that we don?t
>>     understand this
>>     >> > error
>>     >> > is raised. The server is a Tomcat server. Any ideas on how to
>>     debug this
>>     >> > will be greatly appreciated.
>>     >> >
>>     >> > Here's a snippet of the error:
>>     >> > response = conn.getresponse()
>>     >> >   python3.2/http/client.py", line 1049, in getresponse
>>     >> >     response.begin()
>>     >> >   python3.2/http/client.py", line 346, in begin
>>     >> >     version, status, reason = self._read_status()
>>     >> >   python3.2/http/client.py", line 328, in _read_status
>>     >> >     raise BadStatusLine(line)
>>     >> > http.client.BadStatusLine:
>>     >>
>>     >> I've seen various causes for this, but I'd start by making sure
>>     that
>>     >> you're not sending an Expect: header and doing HTTP/1.0 connection.
>>     >> --
>>     >> Aahz (aahz at pythoncraft.com <mailto:aahz at pythoncraft.com>)
>>      <*>
>>
>>     >> http://www.pythoncraft.com/
>>     >>
>>     >> "We've just found a line in a perl script that invokes a shell
>>     script to
>>     >> call
>>     >> a lisp program which invokes the very-same perl script."
>>      --anonymous
>>     >> ______________________________**_________________
>>     >> Baypiggies mailing list
>>     >> Baypiggies at python.org <mailto:Baypiggies at python.org>
>>
>>     >> To change your subscription options or unsubscribe:
>>     >> http://mail.python.org/**mailman/listinfo/baypiggies<http://mail.python.org/mailman/listinfo/baypiggies>
>>     >
>>     >
>>     >
>>     > ______________________________**_________________
>>     > Baypiggies mailing list
>>     > Baypiggies at python.org <mailto:Baypiggies at python.org>
>>
>>     > To change your subscription options or unsubscribe:
>>     > http://mail.python.org/**mailman/listinfo/baypiggies<http://mail.python.org/mailman/listinfo/baypiggies>
>>
>>
>>
>>     --
>>     --Guido van Rossum (python.org/~guido <http://python.org/%7Eguido>)
>>
>>
>>
>>
>>
>> ______________________________**_________________
>> Baypiggies mailing list
>> Baypiggies at python.org
>> To change your subscription options or unsubscribe:
>> http://mail.python.org/**mailman/listinfo/baypiggies<http://mail.python.org/mailman/listinfo/baypiggies>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/baypiggies/attachments/20121028/76653963/attachment-0001.html>


More information about the Baypiggies mailing list