Welcome! Log In Create A New Profile

Advanced

Another "silent" failure

Posted by fxm 
fxm
Another "silent" failure
January 22, 2010 07:35AM
Update time at fresh boot.
This time there is a .dmp

See .zip for .conf, .log, .dmp
Attachments:
open | download - peerblock.zip (324.3 KB)
Re: Another "silent" failure
January 22, 2010 10:15AM
avatar
Yep, this is another instance of Issue #24.  Really need to finish reworking our list-updating code to work around that libcurl bug...  Hopefully soon...

        ---  Mark  ---




Lead developer of PeerBlock
fxm
Re: Another "silent" failure
January 22, 2010 03:32PM
MarkSide Wrote:
-------------------------------------------------------

> another instance of Issue #24. 

Does this occur only when there is a "double update" (boot update together with timer update), or is it random so to speak?
Anonymous User
Re: Another "silent" failure
January 23, 2010 01:56PM
I had this failure in the past. I just downloaded PeerBlock-Setup_v1[1].0.0.r181.exe and it seems to be running OK. That is it didn't crash my system on updating and it shows "enabled". Is there any other indicator I can check to ensure that the program is functioning ?
Re: Another "silent" failure
January 23, 2010 07:12PM
avatar
gordoncr Wrote:
-------------------------------------------------------
> I had this failure in the past. I just downloaded
> PeerBlock-Setup_v1[1].0.0.r181.exe and it seems to
> be running OK. That is it didn't crash my system
> on updating and it shows "enabled". Is there any
> other indicator I can check to ensure that the
> program is functioning ?


the best way to do so is to go to: start>command prompt> type "ping 3.0.0.0" w/o the quotes and if it comes back as "general failure" then its working properly but if it comes back "request timed out" or some other then its not working.

hope this helps.




Life is like a box of chocolates................................umm chocolate, yummy grinning smiley
Anonymous User
Re: Another "silent" failure
January 23, 2010 07:49PM
When I do that I get a quick flash on the screen of a window but it is gone before it can be read. How do I keep the window open to read the message?
Anonymous User
Re: Another "silent" failure
January 23, 2010 07:56PM
Please ignore my last question. I got the answer to my question on another thread.
Re: Another "silent" failure
January 25, 2010 10:25AM
avatar
fxm Wrote:
-------------------------------------------------------
> Does this occur only when there is a "double
> update" (boot update together with timer update),
> or is it random so to speak?

Nope, this is random.  The problem is with the DNS resolver in the third-party code (libcurl) we use to download files via HTTP.  It appears to be more frequent the more lists you have - meaning the more simultaneous name-resolve actions the library is performing - but is otherwise random.  It's occurred only once on my Win7 install over the course of the past 6 (?) months, whereas on some other people's machines it happens much more often than that.

While the libcurl team apparently has little traction on root-causing this problem, there is a workaround: changing the way we're interfacing to libcurl to use a different resolving scheme.  Reworking our code to apply this workaround is a work-in-progress, and I really do hope to have it done soon.

        ---  Mark  ---




Lead developer of PeerBlock
fxm
Re: Another "silent" failure
January 25, 2010 04:13PM
MarkSide Wrote:

> the more simultaneous name-resolve actions the
> library is performing

No easy way to serialize, I gather?
Perhaps a brute-force "sleep"?
fxm
Re: Another "silent" failure
January 31, 2010 01:30PM
fxm Wrote:
-------------------------------------------------------
> MarkSide Wrote:
>
> > the more simultaneous name-resolve actions the
> > library is performing
>
> No easy way to serialize, I gather?
> Perhaps a brute-force "sleep"?

I happened to watch a list update cycle today. It appears that PB opens as many connections as there are lists "simultaneously"
I wonder whether some users are running up against the OS limit on half-open connections.
And I also wonder (again) whether an x-millisecond delay before opening each connection would eliminate the libcurl issue.
Re: Another "silent" failure
February 01, 2010 11:30AM
avatar
Yes, we are opening connections for all lists simultaneously.  The root cause of the problem is a known bug in the third-party "libcurl" code we're using to download these lists; specifically, in their asynchronous DNS resolver.  The "correct" workaround would be to either use a different resolver, either a different asynchronous one (of which there are a couple options available, that do not hit the bug we're hitting) or else a synchronous/serialized one.  Or gut the code and force it to serialize all downloads like you've suggested, which while is a requested feature for e.g. dialup users is a suboptimal solution for the rest of us.  You're right. it should prevent this problem from happening though.

Seriously, it all just comes down to time.  This is likely not going to be a trivial amount of work, and to be honest I've kinda been putting it off for that reason.  As soon as we release our next Beta, though - should be just a few days out at this point - I plan on working this issue at top priority.  I don't hit the bug myself, but I know that some of you do . . . and often.

        ---  Mark  ---




Lead developer of PeerBlock
fxm
Re: Another "silent" failure
February 01, 2010 01:19PM
MarkSide Wrote:
-------------------------------------------------------

> gut the code and force it to serialize all
> downloads

Actually, you only have to serialize the DNS calls.
On the face of it that could be as simple a "sleep" in the loop that spawns the threads.
The added time would be trivial (since everything other than the "open" would still run in parallel).
Sorry, only registered users may post in this forum.

Click here to login