ABE locks up Fx2 for the duration of dns query

Bug reports and enhancement requests
Post Reply
al_9x
Master Bug Buster
Posts: 931
Joined: Thu Mar 19, 2009 4:52 pm

ABE locks up Fx2 for the duration of dns query

Post by al_9x »

ABE seemingly causes Fx2 to perform dns queries synchronously on the ui thread, so a long running and failing query locks up the ui.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20
User avatar
GµårÐïåñ
Lieutenant Colonel
Posts: 3369
Joined: Fri Mar 20, 2009 5:19 am
Location: PST - USA
Contact:

Re: ABE locks up Fx2 for the duration of dns query

Post by GµårÐïåñ »

Although I am not on Fx2, I suspected this might be the issue here: http://forums.informaction.com/viewtopi ... =10&t=2100 but no luck, so hopefully we can find out.
~.:[ Lï£ê ï§ å Lêmðñ åñÐ Ì Wåñ† M¥ Mðñê¥ ßå¢k ]:.~
________________ .: [ Major Mike's ] :. ________________
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1
User avatar
Giorgio Maone
Site Admin
Posts: 9524
Joined: Wed Mar 18, 2009 11:22 pm
Location: Palermo - Italy
Contact:

Re: ABE locks up Fx2 for the duration of dns query

Post by Giorgio Maone »

al_9x wrote:ABE seemingly causes Fx2 to perform dns queries synchronously on the ui thread, so a long running and failing query locks up the ui.
Yes it does, sometimes. It's a Gecko limitation, affecting also Local Rodeo, the current patch attempt by Mozilla for CSRF attacks against internal networks (as I had to note in this comment of mine) and any other thing which needs to make blocking decision based on IP addresses before the request hits the network.

I managed to work around this almost impossible problem on Gecko 1.9 and above (it took at least 50% of the development time of ABE), but none of the several techniques I had to invent and use on 1.9 are possible on older versions.

That's the main reason why ABE is both disabled and invisible in stable NoScript versions for Gecko 1.8.x users (can be made visible by the noscript.abe.legacySupport about:config preference and then enabled manually). Only beta testers have it enabled if they installed early development build prototypes.

This is definitely a WONTFIX. If you want both ABE and performance, you need to upgrade to a decent Gecko version.

@GµårÐïåñ:
the issue you linked, yet to be diagnosed and almost surely due to an extension conflict, is completely unrelated to this topic since you're on Fx 3.5.1.
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1 (.NET CLR 3.5.30729)
User avatar
therube
Ambassador
Posts: 7969
Joined: Thu Mar 19, 2009 4:17 pm
Location: Maryland USA

Re: ABE locks up Fx2 for the duration of dns query

Post by therube »

ABE causes Fx2 to perform dns queries synchronously on the ui thread, so a long running and failing query locks up the ui.
Could you explain that in terms that I might be able to understand?


PS: Should that be, @GµårÐïåñ, the issue you linked too...
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball NoScript FlashGot AdblockPlus
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.22) Gecko/20090605 SeaMonkey/1.1.17
al_9x
Master Bug Buster
Posts: 931
Joined: Thu Mar 19, 2009 4:52 pm

Re: ABE locks up Fx2 for the duration of dns query

Post by al_9x »

therube wrote:
ABE causes Fx2 to perform dns queries synchronously on the ui thread, so a long running and failing query locks up the ui.
Could you explain that in terms that I might be able to understand?
firefox waits for the DNS lookup to complete and does not process user input while it's waiting
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20
al_9x
Master Bug Buster
Posts: 931
Joined: Thu Mar 19, 2009 4:52 pm

Re: ABE locks up Fx2 for the duration of dns query

Post by al_9x »

Giorgio Maone wrote:This is definitely a WONTFIX. If you want both ABE and performance, you need to upgrade to a decent Gecko version.
Understood, I'll probably turn off ABE in Fx2, so it's somewhat moot, but do you want future ABE + 1.8.1 bug reports, like this, for instance?
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20
User avatar
therube
Ambassador
Posts: 7969
Joined: Thu Mar 19, 2009 4:17 pm
Location: Maryland USA

Re: ABE locks up Fx2 for the duration of dns query

Post by therube »

Sure.
You're a bug hunting maven. The more the merrier. :-)
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball NoScript FlashGot AdblockPlus
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.22) Gecko/20090605 SeaMonkey/1.1.17
User avatar
GµårÐïåñ
Lieutenant Colonel
Posts: 3369
Joined: Fri Mar 20, 2009 5:19 am
Location: PST - USA
Contact:

Re: ABE locks up Fx2 for the duration of dns query

Post by GµårÐïåñ »

Giorgio Maone wrote:@GµårÐïåñ:
the issue you linked, yet to be diagnosed and almost surely due to an extension conflict, is completely unrelated to this topic since you're on Fx 3.5.1.
Actually I am nearly 100% certain it has nothing to do with another extension and its easier to dump on other extensions as the cause but the fact is that NS is being tweaked almost every other day in response to a bug and since its the only one being installed repeatedly and in dev form, the problem lies there. Especially that there is a predictable and specific interval for the UI freezing and the connection losses stink of DNS failures as they come back with "Site not found" and on the same ip and connection on a different copy without NS it comes up just fine. SO its not a connection issue, not a DSL issue, not an extension issue. If we don't want to debug it that's one thing but to simply dismiss it and say its a conflict, that's just tacky.
~.:[ Lï£ê ï§ å Lêmðñ åñÐ Ì Wåñ† M¥ Mðñê¥ ßå¢k ]:.~
________________ .: [ Major Mike's ] :. ________________
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1
al_9x
Master Bug Buster
Posts: 931
Joined: Thu Mar 19, 2009 4:52 pm

Re: ABE locks up Fx2 for the duration of dns query

Post by al_9x »

GµårÐïåñ wrote:f we don't want to debug it that's one thing but to simply dismiss it and say its a conflict, that's just tacky.
Here's something you can do to debug it. Configure a bogus DNS server that will swallow queries with 0 response (neither UDP nor ICMP), this (74.125.67.100) google ip works for this purpose. This will maximally extend the query time to the system or firefox timeout value. Then in a new profile navigate to some bogus (so it's not in you local dns cache) address.

In my testing 3.5.1 does not get locked up. I did notice a difference with ABE turned on, there is no "looking up <host>" message in the status bar. Although small, that is a bug, as that message is useful. Georgio, can you address that?
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20
User avatar
Giorgio Maone
Site Admin
Posts: 9524
Joined: Wed Mar 18, 2009 11:22 pm
Location: Palermo - Italy
Contact:

Re: ABE locks up Fx2 for the duration of dns query

Post by Giorgio Maone »

al_9x wrote: I did notice a difference with ABE turned on, there is no "looking up <host>" message in the status bar. Although small, that is a bug, as that message is useful. Georgio, can you address that?
Not sure: the message is not there because from the observer stand-point (the window) there's no DNS query at all (it happens before the window starts listening).
I'll check if it can be surrogate in some way.
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1 (.NET CLR 3.5.30729)
Post Reply