Cannot reproduce: Error "stream read error" while comparing large binary files.

Bug reports concerning HxD.
Post Reply
johnknox
Posts: 1
Joined: 20 Jan 2018 21:04

Cannot reproduce: Error "stream read error" while comparing large binary files.

Post by johnknox »

Hi, first, thank you so much for giving us HxD! It's indispensable for analyzing large binary files on Windows!

I'm experiencing "stream read error" in the following situation:

1. I'm comparing two large files (~48GB), which differ in size by few kb.
2. The files are identical, EXCEPT for a few kb of metadata at the beginning and end of each of the files (the entire huge middle of the files is identical, but at slightly different offsets).
3. I put the current position cursor at offsets 9CA4 on file 1, and offset 9CB8 on file 2, where their identical content starts within the file.
4. I select "find next difference" (F6).
5. The tool scans past the gigabytes of identical content (takes 17 minutes, normal).
6. The tool stops at the end of the identical section (where the different metadata at the file end begins) as expected, but also shows "stream read error".

The error seems to show up 2/3 of the time, and sometimes it doesn't appear. I saw a similar issue reported before, and the suspicion it might be a race condition. The unreliability of reproduction suggests it might indeed be some sort of race condition.

I thought I'd provide more details, in case the issue was considered resolved, as it's not (I'm using the latest public version).

Thank you again for all your hard work!
Maël
Site Admin
Posts: 1455
Joined: 12 Mar 2005 14:15

Re: Error "stream read error" while comparing large binary files.

Post by Maël »

Thanks for the report.
Can you tell me the exact file sizes and how many bytes exactly are different? It might make a difference for triggering the bug.
Maël
Site Admin
Posts: 1455
Joined: 12 Mar 2005 14:15

Re: Error "stream read error" while comparing large binary files.

Post by Maël »

I tried it with two 1GiB files, no luck.
Maybe it depends on the screen resolution (and therefore the amount of bytes shown).
Do you tile vertically or horizontally?
Is the datainspector open as well?

I am thinking of adding some logging code, so you could send me a report when it happens, in case you'd be willing to run such a build.
Post Reply