Facebook: erratic gwibber-service connection errors

Bug #571923 reported by Michael
38
This bug affects 8 people
Affects Status Importance Assigned to Milestone
Gwibber
New
Undecided
Unassigned

Bug Description

Distribution: Ubuntu 10.04 RC1 NBR (upgraded)
Program version: gwibber 2.30.0.1

The gwibber-service has an erratic behaviour connecting to facebook sometimes successful, sometimes partial success, sometimes no success. There are always the same Python KeyError and TypeError in the gwibber-service output:

Gwibber Dispatcher: DEBUG Refresh interval is set to 5
Gwibber Dispatcher: DEBUG ** Starting Refresh - Thu Apr 29 23:53:45 2010 **
Gwibber Dispatcher: DEBUG <facebook:receive> Performing operation
Gwibber Dispatcher: DEBUG <facebook:responses> Performing operation
Gwibber Dispatcher: ERROR <facebook:responses> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data = PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 220, in responses
    profiles = self._friends()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 195, in _friends
    return dict((p["uid"], p) for p in friends)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 195, in <genexpr>
    return dict((p["uid"], p) for p in friends)
TypeError: string indices must be integers

Gwibber Dispatcher: DEBUG <facebook:images> Performing operation
Gwibber Dispatcher: ERROR <facebook:receive> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data = PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 210, in receive
    profiles = dict((p["id"], p) for p in data["profiles"])
KeyError: 'profiles'

Gwibber Dispatcher: ERROR <facebook:images> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data = PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 233, in images
    return [self._image(post, profiles) for post in data]
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 165, in _image
    user = profiles[data["owner"]]
TypeError: string indices must be integers

Gwibber Dispatcher: INFO Loading complete: 27 - ['Failure', 'Failure', 'Failure']
.
.
.
Gwibber Dispatcher: DEBUG ** Starting Refresh - Fri Apr 30 00:04:32 2010 **
Gwibber Dispatcher: DEBUG <facebook:responses> Performing operation
Gwibber Dispatcher: DEBUG <facebook:receive> Performing operation
Gwibber Dispatcher: ERROR <facebook:receive> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data = PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 210, in receive
    profiles = dict((p["id"], p) for p in data["profiles"])
KeyError: 'profiles'

Gwibber Dispatcher: DEBUG <facebook:images> Performing operation
Gwibber Dispatcher: ERROR <facebook:images> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data = PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 233, in images
    return [self._image(post, profiles) for post in data]
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py", line 165, in _image
    user = profiles[data["owner"]]
TypeError: string indices must be integers

Gwibber Dispatcher: DEBUG <facebook:responses> Finished operation
Gwibber Dispatcher: INFO Loading complete: 46 - ['Failure', 'Success', 'Failure']
Gwibber Dispatcher: DEBUG Refresh interval is set to 5
Gwibber Dispatcher: DEBUG ** Starting Refresh - Fri Apr 30 00:04:54 2010 **
Gwibber Dispatcher: DEBUG <facebook:receive> Performing operation
Gwibber Dispatcher: DEBUG <facebook:responses> Performing operation
Gwibber Dispatcher: DEBUG <facebook:responses> Finished operation
Gwibber Dispatcher: DEBUG <facebook:images> Performing operation
Gwibber Dispatcher: DEBUG <facebook:receive> Finished operation
Gwibber Dispatcher: DEBUG <facebook:images> Finished operation
Gwibber Dispatcher: INFO Loading complete: 47 - ['Success', 'Success', 'Success']

Revision history for this message
Omer Akram (om26er) wrote :

Micael, Which fonts are you using?

Revision history for this message
Michael (mick3-de) wrote :

> Micael, Which fonts are you using?

Sans/Monospace? The distribution's default I guess as I haven't changed anything. :)
Anyway, I still get this connection error most of the time and therefore no facebook updates.
Best, M.

Revision history for this message
Lael Locher (lael-locher) wrote :
Download full text (4.0 KiB)

I have the same error, Twitter is working fine albeit a little slow on the updates, but my Facebook isn't working at all other then authorizing and adding it correctly. I get nothing at all from Facebook and my log file is very similar only I just have TypeError: string indices must be integers. I've increased the connection timeout in facebook.py which worked for some people but not for me. I'm running a fresh install of Lucid with all updates applied. When I first authorized Facebook it was working for about an hour then it stopped and I can't figure out why. I haven't changed any of the default settings, font, language etc are all still at their default settings.

Traceback (most recent call last):
  File
"/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data =
PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 211, in receive
    return [self._message(post, profiles) for post in data["posts"]]
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 118, in _message
    "text": item["text"],
TypeError: string indices must be integers

Gwibber Dispatcher: DEBUG <facebook:images> Performing operation
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/network.py",
line 32, in __init__
    self.curl.perform()
error: (28, 'SSL connection timeout')
Gwibber Dispatcher: ERROR Failed to communicate with
https://api.facebook.com/restserver.php?api_key=71b85c6d8cb5bbb9f1a3f8bbdcdd4b05&v=1.0&sig=2fb4eb7bffd1e857a7bcd189c62c0258&format=json&query=%0A++++++SELECT+name%2C+profile_url%2C+pic_square%2C+username%2C+uid%0A++++++++FROM+user+WHERE+uid+in+%28SELECT+uid2+FROM+friend+WHERE+uid1%3D678270321%29%0A++++++&session_key=e3784eb27a73da31a642815d-678270321&method=facebook.fql.query&call_id=1274984829000
Gwibber Dispatcher: ERROR Failed to parse the response, error was: No
JSON object could be decoded
Gwibber Dispatcher: ERROR <facebook:responses> Operation failed
Gwibber Dispatcher: DEBUG Traceback:
Traceback (most recent call last):
  File
"/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 75, in perform_operation
    message_data =
PROTOCOLS[account["protocol"]].Client(account)(opname, **args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 198, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 220, in responses
    profiles = self._friends()
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 195, in _friends
    return dict((p["uid"], p) for p in friends)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
line 195, in <genexpr>
    return dict((p["uid"], p) for p in friends)
TypeError: string indices must be integers, not str

Gwibber Dispatcher: DEBUG <twitter:re...

Read more...

Revision history for this message
Andreas Jonsson (sonofjon) wrote :

Confirmed on Fresh Lucid install with all current updates applied.

Revision history for this message
Daniel O'Donnell (daniel-odonnell) wrote :

Me too. The "TypeError: string indices must be integers" seems to be crucial. On the other hand, I'm not getting twitter receives, either.

I was able to send when I changed the time outs in the python scripts to something more reasonable than the defaults (/usr/lib/python2.6/dist-packages/gwibber/microblog/util/facelib.py and /usr/lib/python2.6/dist-packages/gwibber/microblog/network.py [search for "timeout" and multiply the values by 20).

Revision history for this message
Omer Akram (om26er) wrote : Re: [Bug 571923] Re: Facebook: erratic gwibber-service connection errors
Download full text (6.6 KiB)

please enable lucid-proposed repository from software sources and install
the proposed version of gwibber. it solves many problems

On Sat, Jul 10, 2010 at 6:02 AM, Daniel O'Donnell
<email address hidden>wrote:

> Me too. The "TypeError: string indices must be integers" seems to be
> crucial. On the other hand, I'm not getting twitter receives, either.
>
> I was able to send when I changed the time outs in the python scripts to
> something more reasonable than the defaults (/usr/lib/python2.6/dist-
> packages/gwibber/microblog/util/facelib.py and /usr/lib/python2.6/dist-
> packages/gwibber/microblog/network.py [search for "timeout" and multiply
> the values by 20).
>
> --
> Facebook: erratic gwibber-service connection errors
> https://bugs.launchpad.net/bugs/571923
> You received this bug notification because you are subscribed to
> Gwibber.
>
> Status in Gwibber: New
>
> Bug description:
> Distribution: Ubuntu 10.04 RC1 NBR (upgraded)
> Program version: gwibber 2.30.0.1
>
> The gwibber-service has an erratic behaviour connecting to facebook
> sometimes successful, sometimes partial success, sometimes no success. There
> are always the same Python KeyError and TypeError in the gwibber-service
> output:
>
> Gwibber Dispatcher: DEBUG Refresh interval is set to 5
> Gwibber Dispatcher: DEBUG ** Starting Refresh - Thu Apr 29 23:53:45 2010
> **
> Gwibber Dispatcher: DEBUG <facebook:receive> Performing operation
> Gwibber Dispatcher: DEBUG <facebook:responses> Performing operation
> Gwibber Dispatcher: ERROR <facebook:responses> Operation failed
> Gwibber Dispatcher: DEBUG Traceback:
> Traceback (most recent call last):
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py",
> line 75, in perform_operation
> message_data = PROTOCOLS[account["protocol"]].Client(account)(opname,
> **args)
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 198, in __call__
> return getattr(self, opname)(**args)
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 220, in responses
> profiles = self._friends()
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 195, in _friends
> return dict((p["uid"], p) for p in friends)
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 195, in <genexpr>
> return dict((p["uid"], p) for p in friends)
> TypeError: string indices must be integers
>
> Gwibber Dispatcher: DEBUG <facebook:images> Performing operation
> Gwibber Dispatcher: ERROR <facebook:receive> Operation failed
> Gwibber Dispatcher: DEBUG Traceback:
> Traceback (most recent call last):
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py",
> line 75, in perform_operation
> message_data = PROTOCOLS[account["protocol"]].Client(account)(opname,
> **args)
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 198, in __call__
> return getattr(self, opname)(**args)
> File "/usr/lib/python2.6/dist-packages/gwibber/microblog/facebook.py",
> line 210, in receive
> profiles = dict((p["id"], p) for p in data["profiles"])
> KeyError: 'profiles'
>...

Read more...

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.