Comment 32 for bug 523964

Revision history for this message
ooze (zoe-gauthier) wrote :

I have been running gwibber-service manually and this is the traceback when the problem happens:

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 541, in refresh
    operations = list(self.collector.get_operations())
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 161, in get_operations
    for acct in self.accounts.get_records(COUCH_TYPE_ACCOUNT, True):
  File "/usr/lib/python2.6/dist-packages/desktopcouch/records/server_base.py", line 482, in get_records
    exists = self.view_exists(view_name, design_doc)
  File "/usr/lib/python2.6/dist-packages/desktopcouch/records/server_base.py", line 429, in view_exists
    self.with_reconnects(self.db.__getitem__, doc_id)["views"]
  File "/usr/lib/python2.6/dist-packages/desktopcouch/records/server_base.py", line 164, in with_reconnects
    return func(*args, **kwargs)
  File "/usr/lib/pymodules/python2.6/couchdb/client.py", line 316, in __getitem__
    resp, data = self.resource.get(id)
  File "/usr/lib/pymodules/python2.6/couchdb/client.py", line 978, in get
    return self._request('GET', path, headers=headers, **params)
  File "/usr/lib/pymodules/python2.6/couchdb/client.py", line 1014, in _request
    resp, data = _make_request()
  File "/usr/lib/pymodules/python2.6/couchdb/client.py", line 1009, in _make_request
    body=body, headers=headers)
  File "/usr/lib/pymodules/python2.6/httplib2/__init__.py", line 1129, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/usr/lib/pymodules/python2.6/httplib2/__init__.py", line 901, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/usr/lib/pymodules/python2.6/httplib2/__init__.py", line 875, in _conn_request
    conn.connect()
  File "/usr/lib/pymodules/python2.6/httplib2/__init__.py", line 750, in connect
    raise socket.error, msg
socket.error: [Errno 111] Connexion refusée
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/util/couch.py", line 62, in run
    self.curl.perform()
error: (18, 'transfer closed with outstanding read data remaining')

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/util/couch.py", line 62, in run
    self.curl.perform()
error: (18, 'transfer closed with outstanding read data remaining')

Exception in thread Thread-3:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/util/couch.py", line 62, in run
    self.curl.perform()
error: (18, 'transfer closed with outstanding read data remaining')

Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/util/couch.py", line 62, in run
    self.curl.perform()
error: (18, 'transfer closed with outstanding read data remaining')

-----

The socket.error exception seems to confirm that the python-httplib2 patch works. If I try to start gwibber, I get the AttributeError from gwibber, and the following message from gwibber-service:

WARNING:root:DB connection timed out. Reconnecting.

I added a line of code to print the url from the couchdb server object in gwibber-service. It says <OAuthCapableServer 'http://localhost:33312'> all the time. However, when the problem occurs, the couchdb server is no longer listening on this port (actually, it's on 42680.)