Freeze detection 64bit

contains all delphi packages mentioned below

Freeze detection 64bit

Postby SSchaefer » Thu Dec 12, 2019 4:07 pm

I have noticed multiple times that the freeze detection (including MadTraceProcess) will sometimes not show the main thread for 64bit builds.
The callstacks of all other threads are shown (I think), but the main thread (the one that is actually frozen) is not contained. Is this maybe a known issue?
Attachments
freeze.jpg
freeze.jpg (13.33 KiB) Viewed 4315 times
SSchaefer
 
Posts: 6
Joined: Thu Dec 12, 2019 4:00 pm

Re: Freeze detection 64bit

Postby madshi » Thu Dec 12, 2019 4:30 pm

Not that I'm aware of. Are you sure the main thread still "exists"? It could be crashed and then gone, which would also explain the detected freeze. Windows doesn't stop a process just because the main thread is done. Actually, Windows doesn't even know the concept of a "main" thread. There are just a bunch of threads. And as long as any thread is still running, and nobody calls ExitProcess(), the process lives on.

P.S: Of course if the main thread actually crashes, madExcept should have reported that, though. So maybe not that likely a scenario? I'm not sure...
madshi
Site Admin
 
Posts: 10225
Joined: Sun Mar 21, 2004 5:25 pm

Re: Freeze detection 64bit

Postby obl918 » Tue Jan 14, 2020 2:09 pm

For what it's worth, I have seen this, too. I have a user who uploaded 5 bug reports with no main thread and they were all freeze detection. What's more, she was able to continue using the application without any problems -- except that when the freeze detection interval elapsed, she would get another prompt to upload a bug report.
obl918
 
Posts: 23
Joined: Thu Sep 03, 2015 8:33 pm

Re: Freeze detection 64bit

Postby madshi » Wed Jan 15, 2020 9:15 am

That sounds so weird! I assume it's a VCL (GUI) application? So even though freeze detection complained and the bug reports contained no main thread, all the VCL forms still continued to work fine?
madshi
Site Admin
 
Posts: 10225
Joined: Sun Mar 21, 2004 5:25 pm

Re: Freeze detection 64bit

Postby SSchaefer » Mon Mar 16, 2020 1:30 pm

I'm very sorry for replying so late! I totally forgot to keep looking into the forum and haven't thought about it until now.

It is a VCL / GUI application, correct. I don't think the main thread has actually crashed, the UI still continues to work. To make it even more weird, If I retry to retrieve a report for a frozen application using MadTraceProcess a few times, then eventually it will be able to list the main thread as well. Just not the first few times.

I did a quick test again just now using the 64bit version of our software TreeSize + MadTraceProcess. Even when the main thread is not actually frozen, the report sometimes does not contain the main thread. You might have to try a few times until its reproducible, but after ~5-7 retries, I recieved a report without main thread.
SSchaefer
 
Posts: 6
Joined: Thu Dec 12, 2019 4:00 pm

Re: Freeze detection 64bit

Postby madshi » Tue Mar 24, 2020 9:23 am

Can you reproduce the problem in a simple new (almost empty) test project? If so, can you send that test project to me?
madshi
Site Admin
 
Posts: 10225
Joined: Sun Mar 21, 2004 5:25 pm

Re: Freeze detection 64bit

Postby SSchaefer » Tue Mar 24, 2020 12:23 pm

Unfortunately not. I tried creating a sample project and applied all kinds of settings and parameters, but was not able to reproduce it there, sorry
SSchaefer
 
Posts: 6
Joined: Thu Dec 12, 2019 4:00 pm

Re: Freeze detection 64bit

Postby madshi » Tue Mar 24, 2020 12:51 pm

Too bad, not sure how to fix the problem without being able to reproduce it... :(
madshi
Site Admin
 
Posts: 10225
Joined: Sun Mar 21, 2004 5:25 pm

Re: Freeze detection 64bit

Postby SSchaefer » Wed Mar 25, 2020 9:57 am

I finally managed to reproduce it. I was thinking that maybe the ribbon framework has to do with it, so I added a ribbon menu to the sample application. It still takes quite a few retries until it occurs, but as a repro, I did the following:

- Compile and start the application
- Make sure that the application stays in the foreground, so that the OnUpdate code of the action keeps getting triggered (I think that might have to do with it).
- Run MadTraceProcess64 and select the process Project1.exe
- Check trace report. Retry a few times if necessary (Max ~10 times did it for me. I know that's not ideal, but maybe you can work with this anyway)

Note: You can check "callstack crc" in the first tab to see at first glance if it occured. It will show "$00000000" in that case:
callstack crc : $00000000, $00000000, $d88e605a
SSchaefer
 
Posts: 6
Joined: Thu Dec 12, 2019 4:00 pm

Re: Freeze detection 64bit

Postby SSchaefer » Wed Mar 25, 2020 10:14 am

I can't get the upload to work..
Could you maybe download from our fileshare and attach the file?
https://fileshare.jam-software.de/share.cgi?ssid=0s2YxFD&fid=0s2YxFD&openfolder=forcedownload
SSchaefer
 
Posts: 6
Joined: Thu Dec 12, 2019 4:00 pm


Return to madCollection

Who is online

Users browsing this forum: No registered users and 2 guests

cron