Houdini needs better debug logging

   5654   12   1
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
I've experienced crashes with Houdini. I've reported them to SideFX. It typically went like this:


Me: *send crashlog*
Support: Could you send your system spec and Houdini diagnostic info?
Me: Ok *send said info*
Support: Could you send the .hip file that crashed?
Me: Ok *send said file*
Support: Sorry we couldn't reproduce it, and we can't fix unreproducible issues.
Me: Ok *sad face*

Conversation ended because there was nothing left to do.

Yeah, of course you can't reproduce it. I couldn't reproduce it either! It was a random crash! As anyone who wrote C/C++ knows, crashes typically happen because you use freed memory, and it depends on the whole series of instructions you did, the memory layout etc. Most crashes are not easily reproducible (otherwise they would have been fixed, of course).

Now when my Houdini crashes, I don't know whether I should bother to report. (or should I even keep using Houdini...) I know the support will just repeat the above conversation. It's not his/her fault tho. What could they do? There must be a policy preventing them from adding "random crashes" to their issue tracking system, and it's justified: otherwise their dev's queue will be flooded with unfixable bugs.

I don't know how to improve this situation. But lately I encountered an issue with Rider (an IDE). This is their response:



Maybe it's what Houdini lacks? A way to collect logs for debugging.
Edited by raincole - Dec. 16, 2021 11:31:00

Attachments:
Screenshot 2021-12-16 042304.png (79.4 KB)

User Avatar
Member
1718 posts
Joined: March 2009
Online
raincole
Maybe it's what Houdini lacks? A way to collect logs for debugging.

When it segfaults, there should be a traceback in the console you started it from (or where you redirected that to), this has helped in the past to sniff out the reasons for crashes. Don't you get those?
Martin Winkler
money man at Alarmstart Germany
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
protozoan
When it segfaults, there should be a traceback in the console you started it from (or where you redirected that to), this has helped in the past to sniff out the reasons for crashes. Don't you get those?

AFAIK there is no way to start a "foreground" console process [www.sidefx.com] of Houdini on Windows. At least that's what the doc says and the support told me. If there is a way to get it on Windows, please share :'(
User Avatar
Member
1718 posts
Joined: March 2009
Online
raincole
on Windows

Oh, I'm afraid I have no idea about windows
Martin Winkler
money man at Alarmstart Germany
User Avatar
Member
8043 posts
Joined: Sept. 2011
Offline
raincole
protozoan
When it segfaults, there should be a traceback in the console you started it from (or where you redirected that to), this has helped in the past to sniff out the reasons for crashes. Don't you get those?

AFAIK there is no way to start a "foreground" console process [www.sidefx.com] of Houdini on Windows. At least that's what the doc says and the support told me. If there is a way to get it on Windows, please share :'(

The traceback is written to a text file along with the hip file to the temp directory on all platforms, if it can. Some crashes seem to subvert the crash handler.
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
jsmack
The traceback is written to a text file along with the hip file to the temp directory on all platforms, if it can. Some crashes seem to subvert the crash handler.

You mean .crashlog in %temp%? I've sent several of them. But it always went as my original post stated.

- I send .crashlog.
- Support says they need diagnostic info.
- I send diagnostic info.
- Support says they need the .hip.
- I send the .hip.
- Support says they can't reproduce the crash.

Then they apologize. That's it. No more emails about the issue.
Edited by raincole - Dec. 16, 2021 11:36:45
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
But can I blame them? My most recent .crashlog of Houdini looks like this:

Crash report from rainc; Houdini FX Version 19.0.455
Uptime 1121 seconds
Sun Dec 12 23:33:54 2021
Caught signal 11

Traceback from 57056 ThreadId=0x0000dd38
CURRENT THREAD 56632
+0x1511ebea C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libJEDI.dll
+0x11f808cf C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libUI.dll
+0x11f7df89 C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libUI.dll
+0x11f7e46d C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libUI.dll
+0x114cd8b6 C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libSI.dll
+0x114ce235 C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\libSI.dll
+0x14000196e C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\houdini.exe
+0x14000222a C:\Program Files\Side Effects Software\Houdini 19.0.455\bin\houdini.exe
+0x7ffdb1e07034 C:\Windows\System32\KERNEL32.DLL
+0x7ffdb3d22651 C:\Windows\SYSTEM32\ntdll.dll

Yeah, it's that short. How can the devs debug from this?
User Avatar
Member
67 posts
Joined: May 2013
Offline
people were getting these crashes with that error when using space B when changing viewports with 17...
User Avatar
Member
392 posts
Joined: Nov. 2008
Offline
Hi, debugging random crashes on an unknown remote system is hard, e.g. I had to debug a crash that was present only on a certain CPU model recently.

Typically when you submitted the issue, it gets in the bug database, it just has a "cannot reproduce" status. If you find a way how to reproduce the crash it might get solved faster.

It's usually best to send crash logs, houdini info.txt (from the menu), hip file, steps to reproduce (if you have an obvious one), any additional info that might be relevant.

E.g. figuring out the steps that result in a crash helps a lot even if they cannot reproduce it on their system. Record a video of these steps and attach it to the report.
A combination of your preferences might have an effect too (e.g. what desktop is on, UI scale, etc.).

Windows could log an event for the crash, check Event Log.

If you have PDB files (symbols) installed for that build (be sure you downloaded/installed pdb for matching build) your crash log might have additional information that is useful for devs. The easiest is to install pdb files from Houdini Launcher.

You can configure Windows to produce crash dump files (e.g. https://www.meziantou.net/tip-automatically-create-a-crash-dump-file-on-error.htm [www.meziantou.net] )
These have memory state/stack trace that might help to narrow the issue.
If the Houdini hangs on the crash, you can save the dump file from Task Manager (Right-click on the process -> Create Dump File).
If you have Visual Studio installed it will try to debug the crash (and you can save the dump file, but it might be too late)
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
pezetko
You can configure Windows to produce crash dump files (e.g. https://www.meziantou.net/tip-automatically-create-a-crash-dump-file-on-error.htm [www.meziantou.net] )
These have memory state/stack trace that might help to narrow the issue.
If the Houdini hangs on the crash, you can save the dump file from Task Manager (Right-click on the process -> Create Dump File).
If you have Visual Studio installed it will try to debug the crash (and you can save the dump file, but it might be too late)

Thank you for the information! I'll try this.
User Avatar
Member
539 posts
Joined: Aug. 2019
Offline
Unfortunately, it doesn't work for me. I've set the registry, but when Houdini crashes, there is still no crash dump at all.

Edit: I contacted the support, and they explicitly stated they won't log the crashes that they can't constantly reproduce. I guess I'll just stop reporting crashes. (and stop migrating my workflow to Houdini...)
Edited by raincole - Jan. 7, 2022 10:01:01

Attachments:
Screenshot 2022-01-07 225849.png (58.2 KB)

User Avatar
Member
29 posts
Joined: Aug. 2016
Offline
I get UI random crashes quite often recently hope sidefx can find a way to log or fix that.
User Avatar
Member
250 posts
Joined: March 2013
Offline
What are you expecting them to do to solve the issue, if they cannot reproduce it?
It could absolutely come down to your hardware, OS, and what you are doing.

Linux does have better logging, but what verbosity level are you setting houdini to?
What is the DSO error level set to?

If they cannot repro it, maybe you can post it here, with steps that you take to create the crash?
So far I haven't seen you list any of the steps you are doing to create the crash, if you could list them,
and supply the hip file here, we can all try to repro it.


L
I'm not lying, I'm writing fiction with my mouth.
  • Quick Links