Forums / Support / 1.97 build 100 Binary boy unresponsive for 90 seconds while parsing .NZB file

1.97 build 100 Binary boy unresponsive for 90 seconds while parsing .NZB file

I recently reinstalled windows and by relation, binary boy as well.

When I parse any .NZB from any website, binary boy will become unresponsive for about 90 seconds, appearing that it is hung. After about a minute and a half it suddenly starts working and then very quickly downloads the targets.

The only non-default action I have configured in preferences is to delete temporary files older than 1 day. I confirmed that even if I manually clean the parts folder out it doesn't fix it.

Any ideas?
 

BinaryBoy's reply to kodack10 #15908 @

The NZB parser in build 100 and other recent builds is pretty fast so that shouldn't happen. If you'd like to send me an NZB file as a file attachment, you can send to support at binaryboy dot com. Normally when something like this happens it's a virus scanner tying things up. If possible, try disabling scanning of .nzb files or temporarily disable file scanning and try loading again.
 

BinaryBoy's reply to BinaryBoy #15909 @

Also... On the Privacy tab in the Settings, make sure all are set to Recycle or Delete rather than the overwrite options.
 

kodack10's reply to BinaryBoy #15910 @

I have virus scan, I'll give it a shot.

**update

I disabled scanning of .nzb and it had no effect.

I have privacy tab set to recycle.
 

BinaryBoy's reply to kodack10 #15911 @

How big are the nzb files you're loading?
 

BinaryBoy's reply to BinaryBoy #15912 @

I just did a search and downloaded all 100 results as a 4MB nzb. It loaded into the queue in less than a second on a 3 - 4 year old computer. Are your nzb files a lot larger than that?
 

kodack10's reply to BinaryBoy #15913 @

No they are small nzb's. The size doesn't seem to effect the delay. Is there some kind of debug logging switch I can turn on?

I looked at it with procmon while it was hung and it was using 25% cpu on a Q8800 and I had plenty of memory free. Disk usage and memory were almost nonexistant during it. Then it will unfreeze and work normally.
 

BinaryBoy's reply to kodack10 #15914 @

Build 101 doesn't but 102 will. Uploading in a few minutes. You can enable the logging from the Start button by typing this: binboy.exe -log

File | View Log will show the time at each step of the loading process. The first line of the process is "Loading file to memory"

The most recent code attempts to skip formal XML rules and parses it quickly. If it finds it can't take the shortcuts, it falls back to doing things the old way with a full blown (and slow) XML parser. If that's what's happening, it will log "Load failed. Falling back to old code". In that case, you're welcome to send me a sample NZB if you like so I can track down the problem and attempt to adapt the code.

http://binaryboy.com/patch.php
 

kodack10's reply to BinaryBoy #15917 @

Thank you for taking the time to help me out with this. Sorry it's been a few days, had something come up. I just downloaded the new load and I'll let you know what I find.

So I deleted the current log.txt, did master reset etc. It hung as usual when I loaded the .nzb and the interesting thing is the log.txt did not get created while this was going on. When the program finally started responding some 40 seconds after opening the .nzb it created the log.txt which I've included the top of below. This makes it seem to me that the delay is in loading the .nzb not in parsing it. You had mentioned virus scan and that fits the symptoms but I had completely disabled it and had no effect. When I get some time I'll try disabling the virusscan services so they don't load and re-try.

##-------------------------------------------------
## Binary Boy Log File
##
## Created: Nov 14, 2012 00:19:16:
##
00:19:16: CSearchSession::LoadNZB: Loading NZB C:\Users\myname~1\AppData\Local\Temp\myfile.nzb
00:19:16: CDownloadQueue::LoadNZB(): Loading file to memory
00:19:16: CDownloadQueue::LoadNZB(): Stepping through files
00:19:16: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:16: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:16: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:16: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Stepping through segments
00:19:17: CDownloadQueue::LoadNZB(): Finished file loop
00:19:17: CDownloadQueue::LoadNZB(): Adding to queue
00:19:17: CDownloadQueue::LoadNZB(): Updating window
00:19:17: CDownloadQueue::LoadNZB(): Finished
 

BinaryBoy's reply to kodack10 #15919 @

Yeah Binary Boy doesn't even open the NZB file until right after it says "Loading file to memory". One thing it does right before that though is to load the master list of newsgroups. That should be reasonably fast but could potentially be optimized further if that's the problem.

Try this. Click the List Editor button on the toolbar and open an existing list. Is there a long delay between the time you click Open (or double click a filename) and the time the actual editor is displayed? It loads the master list at that point so you should see a delay there if the master list is the problem.
 

kodack10's reply to BinaryBoy #15949 @

Yeah Binary Boy doesn't even open the NZB file until right after it says "Loading file to memory". One thing it does right before that though is to load the master list of newsgroups. That should be reasonably fast but could potentially be optimized further if that's the problem.

Try this. Click the List Editor button on the toolbar and open an existing list. Is there a long delay between the time you click Open (or double click a filename) and the time the actual editor is displayed? It loads the master list at that point so you should see a delay there if the master list is the problem.


Bingo! I click "List editor" and it goes immediately to "not responding" and mimics the symptoms I see when opening a .nzb. It asked me to create a new list and when I clicked yes that is when the lag started. Now that we've isolated the problem at the list level how do I fix it?

*edit

When I get to the list and I start typing a search term to narrow down the list I started to type binary and tried to backspace to add the alt. in front of it and it froze again and hard locked, didn't recover.

We should discuss disk and news server.

I'm on an 11mbps cable modem to giganews. I have 3 hard drives .
boot: 120GB SSD
newsgroups go to E:\newsgroup with parts as well.

I had the same config before without the problem, all I did was re-install windows 7.
 

BinaryBoy's reply to kodack10 #15950 @

I'm not on the right computer at the moment but as a temporary solution run regedit.exe and go here:

HKEY_CURRENT_USER\Software\Hochsw\BinaryBoy\1.00

Find the master list path in MasterListFolderT

Go to that folder on the hard drive. You should see a file called masterlist.txt How large is this file? You can rename it to something else and it should speed things up temporarily. The downside is you will not have a master list of newsgroups in the group list editor. You could try re-downloading with the Newsgroups button in case there's something corrupted inside the file, although I'm guessing it's just a very large list.

I'll work on optimizing this and also will look for any errors that could cause a lockup in case optimization isn't the problem.
 

BinaryBoy's reply to BinaryBoy #15958 @

I installed Binary Boy on a different computer and am now able to reproduce the problem. No more logs needed. Thanks. I'll get this fixed.
 

BinaryBoy's reply to BinaryBoy #15959 @

A new build is available at http://binaryboy.com/patch.php You should see a significant difference in the load times. There was a bug causing it to work a lot harder than it needed to.
 

kodack10's reply to BinaryBoy #15975 @

The master list was 2.3 MB. I put the new load on and the problem is resolved. Thank you again for your prompt attention.
 

BinaryBoy's reply to kodack10 #15976 @

Great. Thanks for reporting the problem. Happy downloading!
 

Sanjuanita77's reply to BinaryBoy #15978 @

Very good written story. It will be supportive to everyone who employess it, as well as me. Keep doing what you are doing - i will definitely read more posts.best wishes
 

nikkil's reply to kodack10 #16159 @

Thanks kodack10. Thanks for sharing this to us. A lot of users would be able to benefit from this.