Gwibber does not receive twitter messages [error: (6, 'name lookup timed out')]

Bug #571858 reported by mihai.ile
28
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Gwibber
Fix Released
Undecided
Unassigned
gwibber (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Binary package hint: gwibber

I am using 10.04 LTS final version.

Messages I post do get online, but does not receive any messages, even with manual refresh.

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

What social networking site is it that you're having this problem with? If it is Twitter, and you're using a language/locale other than English (United States) then please check https://bugs.launchpad.net/ubuntu/+source/gwibber/+bug/533017/comments/25 (and the other comments on that page). If changing your Language Support settings to English (United States) as mentioned in the linked comment enables you to see Twitter timeline, then please:
a) On bug #533017, please mark it as also affecting you
b) Please mark this bug as a duplicate of bug #533017

Thank you,
Ed.

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

Oops, apologies - didn't notice the title of your bug :-P but only read the description. Please do try what I mentioned in my earlier comment.

Thanks,
Ed.

Revision history for this message
mihai.ile (mihai.ile) wrote :

Ok, I do not understand, as on the Language and Support window I have:
Englush (United States)
English
...other grayed entries...

In text tab I have English (United States)

So I don't actually know what to change after reading that post 25 of the other bug. It seems that I already have the "correct" settings...

My login language was always English (United States)

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

OK, thanks, mihai007 - I was just trying to find out if your problem was similar to mine :-) It appears that yours is a different problem.

Could you please look at the comment https://bugs.launchpad.net/ubuntu/+source/gwibber/+bug/573505/comments/4 and try the steps mentioned there, including pasting a debug log here so others can have more information on your bug?

Thanks,
Ed.

Revision history for this message
mihai.ile (mihai.ile) wrote :
Download full text (3.7 KiB)

Hello again.
I just removed all indicated folders, checked if I have python-indicate installed (i have it) and the error it gives is:

mihai007@mihai007-laptop:~$ gwibber-service -d -o
Updating...
Gwibber Dispatcher: DEBUG Setting up monitors
Gwibber Dispatcher: DEBUG Monitors are up
Gwibber Dispatcher: INFO Gwibber Service is reloading account credentials
Gwibber Dispatcher: DEBUG Refresh interval is set to 5
Gwibber Dispatcher: DEBUG ** Starting Refresh - Wed May 5 09:53:05 2010 **
Gwibber Dispatcher: DEBUG <twitter:responses> Performing operation
Gwibber Dispatcher: DEBUG <twitter:receive> 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: (6, 'name lookup timed out')
Gwibber Dispatcher: ERROR Failed to communicate with https://twitter.com/statuses/mentions.json?count=200
Gwibber Dispatcher: ERROR Failed to parse the response, error was: No JSON object could be decoded
Gwibber Dispatcher: ERROR <twitter:responses> Operation failed
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/network.py", line 32, in __init__
    self.curl.perform()
error: (6, 'name lookup timed out')
Gwibber Dispatcher: ERROR Failed to communicate with https://twitter.com/statuses/home_timeline.json?count=200
Gwibber Dispatcher: ERROR Failed to parse the response, error was: No JSON object could be decoded
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/twitter.py", line 146, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 155, in responses
    return self._get("statuses/mentions.json", count=count, since_id=since)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 136, in _get
    if data.has_key("error"):
AttributeError: 'str' object has no attribute 'has_key'

Gwibber Dispatcher: ERROR <twitter: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/twitter.py", line 146, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 149, in receive
    return self._get("statuses/home_timeline.json", count=count, since_id=since)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 136, in _get
    if data.has_key("error"):
AttributeError: 'str' object has no attribute 'has_key'

Gwibber Dispatcher: DEBUG <twitter:private> Performing operation
Gwibber Dispatcher: DEBUG <twitter:private> Finished operat...

Read more...

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

> Now looking at it for a while, it says:
> error: (6, 'name lookup timed out')

I forget which bug number now (been commenting on so many) but on one bug, people reported that they solved DNS problems by changing their system to use OpenDNS (or Google DNS). Could you try that and see if it gets rid of the name lookup timeout?

BTW, the "if data.has_key("error")" trace can be ignored - it is itself bad code, as I have mentioned at https://bugs.launchpad.net/ubuntu/+source/gwibber/+bug/574979 which I hope will be acted on soon because the stack traces are really confusing.

Revision history for this message
mihai.ile (mihai.ile) wrote :

Yes, I can confirm that using OpenDNS servers the problem is fixed and gwibber-service gives:

mihai007@mihai007-laptop:~$ gwibber-service -d -o
Updating...
Gwibber Dispatcher: DEBUG Setting up monitors
Gwibber Dispatcher: DEBUG Monitors are up
Gwibber Dispatcher: INFO Gwibber Service is reloading account credentials
Gwibber Dispatcher: DEBUG Refresh interval is set to 5
Gwibber Dispatcher: DEBUG ** Starting Refresh - Wed May 5 12:39:46 2010 **
Gwibber Dispatcher: DEBUG <twitter:receive> Performing operation
Gwibber Dispatcher: DEBUG <twitter:responses> Performing operation
Gwibber Dispatcher: DEBUG <twitter:responses> Adding record
Gwibber Dispatcher: DEBUG <twitter:responses> Adding record
Gwibber Dispatcher: DEBUG Checking message 13086023542 timestamp (2010-04-29 21:43:39.00) to see if it is newer than 2010-05-05 12:29:47.85
Gwibber Dispatcher: DEBUG <twitter:responses> Adding record
Gwibber Dispatcher: DEBUG Checking message 13083563150 timestamp (2010-04-29 20:45:33.00) to see if it is newer than 2010-05-05 12:29:47.89
Gwibber Dispatcher: DEBUG <twitter:responses> Adding record
.............
..........
.........
Gwibber Dispatcher: DEBUG Checking message 12705520861 timestamp (2010-04-23 16:37:35.00) to see if it is newer than 2010-05-05 12:30:03.65
Gwibber Dispatcher: DEBUG Raising gwibber client
Gwibber Dispatcher: DEBUG Gwibber Client raised

Removing the openDNS servers brings the error back.

Now how can this happen I don't know but I will definitely don't use openDNS servers, I prefer don't use gwibber until the problem will be fixed.

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

Great! :-) So now we know the reason for your Gwibber Twitter problem.

Well, I don't like OpenDNS either, because they redirect what should be NXDOMAIN replies to their own pages (and used to also grab my Google searches!!) so I understand your not wanting to use their DNS.

However, I now use a local installation of bind9 as my DNS - it is faster than using any DNS server on the Net - and have set Google's DNS as a forwarder (though this is not required). I have not encountered the Gwibber name lookup timeout error even once on my system, because of the local DNS. It also speeds up everything else that requires DNS on my system :) Perhaps you may want to try something like this yourself - you don't need to use OpenDNS at all.

The reason the errors come back when you remove OpenDNS may be that the timeout settings in Gwibber are too small to wait for replies from slow DNS servers... and some ISP's servers can get really slow :-(

Revision history for this message
Taras Perebeynosov (taras-perebeynosov) wrote :
Download full text (11.1 KiB)

I was installed bind9, but problem repeat.

taras@ubuntu:~/Software/Source/skype-2.1.0.81$ gwibber-service -d -o
Updating...
Gwibber Dispatcher: DEBUG Setting up monitors
Gwibber Dispatcher: DEBUG Monitors are up
Gwibber Dispatcher: INFO Gwibber Service is reloading account credentials
Gwibber Dispatcher: DEBUG Refresh interval is set to 5
Gwibber Dispatcher: DEBUG ** Starting Refresh - Tue May 18 12:49:12 2010 **
Gwibber Dispatcher: DEBUG <twitter:receive> Performing operation
Gwibber Dispatcher: DEBUG <twitter:responses> 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: (6, 'name lookup timed out')
Gwibber Dispatcher: ERROR Failed to communicate with https://twitter.com/statuses/home_timeline.json?count=200
Gwibber Dispatcher: ERROR Failed to parse the response, error was: No JSON object could be decoded
Gwibber Dispatcher: ERROR <twitter: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/twitter.py", line 146, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 149, in receive
    return self._get("statuses/home_timeline.json", count=count, since_id=since)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 136, in _get
    if data.has_key("error"):
AttributeError: 'str' object has no attribute 'has_key'

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/network.py", line 32, in __init__
    self.curl.perform()
error: (6, 'name lookup timed out')
Gwibber Dispatcher: ERROR Failed to communicate with https://twitter.com/statuses/mentions.json?count=200&since_id=2544835821
Gwibber Dispatcher: ERROR Failed to parse the response, error was: No JSON object could be decoded
Gwibber Dispatcher: ERROR <twitter: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/twitter.py", line 146, in __call__
    return getattr(self, opname)(**args)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 155, in responses
    return self._get("statuses/mentions.json", count=count, since_id=since)
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 136, in _get
    if data.has_key("error"):
AttributeError: 'str' object has no attribute 'has_key'

Gwibber Dispatcher: DEBUG <twitter:private> Performing operation
Gwibber Dispatcher: DEBUG <twitter:user_messages> Performing operation
Traceback (most recent call last):
  Fil...

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

@taras:
If you haven't done this yet:
In NetworkManager, edit the network connections, select your connection that goes to the Internet (probably 'Auto eth0') and edit it. On the IPv4 Settings tab, change Method to "Automatic (DHCP) Addresses only". In the DNS Servers text entry, enter 127.0.0.1. Click Apply, enter your password when prompted, and exit the Network Connections dialog. Right-click the Networkmanager icon in the system tray, and click "Enable Networking". Wait a couple of seconds, and click the same option again. This should restart your networking, and bring the locally installed bind9 into use.

Revision history for this message
Taras Perebeynosov (taras-perebeynosov) wrote :

It works! Thank you!

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

You're welcome :)
I had other problems with Gwibber, and wound up uninstalling it. I replaced it with Pino, another Twitter client.

As such things go, I wound up running into Pino crashes as well, recently. With a bit of Googling, I found it was probably a PulseAudio bug (http://code.google.com/p/pino-twitter/issues/detail?id=245) and arrived at a bit of a kludgy workaround (http://code.google.com/p/pino-twitter/issues/detail?id=245#c9 and also read comment 10). However, with system sounds off, Pino is currently working without problems for me. Doubtless there is some bug still lurking in the background, but I cannot debug system code, so this workaround is fine.

If you only use Twitter, and not Facebook, perhaps Pino will be enough for you... I like it :)

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

maybe this and bug 530195 are the same ?

Changed in gwibber (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
Ed S (edgar-b-dsouza)
summary: - Gwibber does not receive twitter messages
+ Gwibber does not receive twitter messages [error: (6, 'name lookup timed
+ out')]
Revision history for this message
Ed S (edgar-b-dsouza) wrote :

@Omer:

Bug 530195 is a long and confusing one :) with many different symptoms and possible root causes/code bugs/solutions. For example: https://bugs.launchpad.net/ubuntu/+source/gwibber/+bug/530195/comments/51 (changing DNS didn't work); Comments 54 and 57 (CouchDB not running); Comment 58 (unknown - gwibber-service not running?); Comments 59, 62, 63 (unknown); Comment 69 (auth errors hidden); Comment 80 (locale setting problem)...

Although some of the 'Solved, working' comments in bug 530195 *are* related to DNS, plenty of others are not. In contrast, in this bug itself, by comment 7 we have already established that this error in log output: "error: (6, 'name lookup timed out')" means it is a DNS failure causing this particular problem. I think that this bug is a nice, short, straight-line test for whether Gwibber Twitter problems are due to DNS failures; if people reading this bug fail to find the given error message in their debug output, then they would, of course, search the many other Gwibber bugs, for symptoms matching the ones they see. Therefore, I've just changed this bug's title to include the defining error message from the log; hopefully people can find this bug, and get a potential solution, quickly.

It's up to you, Omer, if you want to mark this as a duplicate of the other bug; I don't think it's a good idea because as cited above, there are too many suggestions and different problems in the other bug, while this one, so far, nails down exactly one problem.

Thanks,
Ed.

Revision history for this message
Kevin Green (kevgreen7) wrote :

I followed the instructions to install bind9 and then the NetworkManager settings and it solved my problem. Thanks!

Revision history for this message
Ed S (edgar-b-dsouza) wrote :

Kevin, thanks for the feedback, and glad to know you found a solution...
Cheers,
Ed.

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

this bug is fixed in gwibber 2.30.1 and 2.31.2.

Changed in gwibber:
status: New → Fix Released
Revision history for this message
Omer Akram (om26er) wrote :

gwibber 2.30.1 is in lucid-proposed please enable that repository from software sources.

Changed in gwibber (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Omer Akram (om26er) wrote :

gwibber 2.30.1 is now in Lucid updates.

Changed in gwibber (Ubuntu):
status: Fix Committed → Fix Released
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.