AWS Thinkbox Discussion Forums

Mantra - Cryptomatte in separate .exr missing after render

Hello, I am trying to render Cryptomattes into a separate .exr with mantra (19.0.622).
The Job gets submitted from a Win machine by writing out IFDs (win paths).
The worker is on-prem Linux (centos7). Pathmapping is setup correctly, no problems with jobs that don’t use cryptomattes.
Also a local render on the win-machine works fine.

On the linux worker though:
The render ALF_PROGRESS arrives at 100% and post-render Infos are printed in the log but then mantra crashes with an segmentation fault error code 139. I guess this happens due to a missing cryptomatte.exr or the other way around.

There is no error when I do not use a separate file for the crypto.exr.

This makes me think that the problem lies somewhere during the pathmapping process also because the cryptomatte entry in the IFD is the only one that uses escapes because of the Json Array-Style.

For comparison, this is the swapping of the deepresolver which works (I shortened the paths with … ):

CheckPathMapping: Swapped " ray_property image deepresolver camera deepcompression 3 filename “w:/_projects/…/…deep.1050.exr” ofsize 1 zbias 0.0100000000000000002
" with " ray_property image deepresolver camera deepcompression 3 filename “/mnt/threedee/_projects/…/…deep.1050.exr” ofsize 1 zbias 0.0100000000000000002

Here is the Cryptomatte resolver:

CheckPathMapping: Swapped " ray_property image cryptoresolver “{“prop”: “name”, “rank”: 6, “name”: “cryptoNode”, “output”: “w:/_projects/…/…cryptoNode.1050.exr”}”
" with " ray_property image cryptoresolver “{“prop”: “name”, “rank”: 6, “name”: “cryptoNode”, “output”: “/mnt/threedee/_projects/…/…cryptoNode.1050.exr”}”

Finally the part of the worker-log that contains the error:

2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: [10:57:27] Frame Wall Clock Time: 0:03:33.54
2022-09-27 10:57:28:  0: STDOUT: [10:57:27] Frame Wall Clock Time: 0:03:33.54
2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: [10:57:27] Total Wall Clock Time: 0:03:37.14
2022-09-27 10:57:28:  0: STDOUT: [10:57:27] Total Wall Clock Time: 0:03:37.14
2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: [10:57:27]        Total CPU Time: 0:22:31.12
2022-09-27 10:57:28:  0: STDOUT: [10:57:27]        Total CPU Time: 0:22:31.12
2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: [10:57:27]  System CPU Time Only: 0:00:21.65
2022-09-27 10:57:28:  0: STDOUT: [10:57:27]  System CPU Time Only: 0:00:21.65
2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: [10:57:27]     Peak Memory Usage: 2.85 GB
2022-09-27 10:57:28:  0: STDOUT: [10:57:27]     Peak Memory Usage: 2.85 GB
2022-09-27 10:57:28:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:28:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
**2022-09-27 10:57:43:  0: STDOUT: 32074: Fatal error: Segmentation fault (sent by pid 88)**
2022-09-27 10:57:43:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:43:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:44:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:44:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:44:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:44:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:45:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): True    m_process.IsStdoutAvailable(): True
2022-09-27 10:57:45:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: -- TRACEBACK BEGIN --
2022-09-27 10:57:45:  0: STDOUT: -- TRACEBACK BEGIN --
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: Traceback from mantra 19.0.622 (Compiled on linux-x86_64-gcc9.3):
2022-09-27 10:57:45:  0: STDOUT: Traceback from mantra 19.0.622 (Compiled on linux-x86_64-gcc9.3):
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: stackTrace(UTsignalHandlerArg) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: stackTrace(UTsignalHandlerArg) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: signalCallback(UTsignalHandlerArg) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: signalCallback(UTsignalHandlerArg) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: UT_Signal::UT_ComboSignalHandler::operator()(int, siginfo_t*, void*) const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: UT_Signal::UT_ComboSignalHandler::operator()(int, siginfo_t*, void*) const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: UT_Signal::processSignal(int, siginfo_t*, void*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: UT_Signal::processSignal(int, siginfo_t*, void*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_Plane::getColorModel() const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_Plane::getColorModel() const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_Plane::getDataType() const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_Plane::getDataType() const <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_OpenEXR::reorderPlanes(char const*) <IMG_OpenEXR.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_OpenEXR::reorderPlanes(char const*) <IMG_OpenEXR.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_OpenEXR::open() <IMG_OpenEXR.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_OpenEXR::open() <IMG_OpenEXR.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_File::openFile(char const*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_File::openFile(char const*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMG_File::open(char const*, IMG_FileParms const*, IMG_Format const*, UT_Array<IMG_Format const*> const*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: IMG_File::open(char const*, IMG_FileParms const*, IMG_Format const*, UT_Array<IMG_Format const*> const*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: IMGfindAndSetDataWindow(char const*, char const*, double, long, bool, int, bool, bool, char const*, double, bool, std::ostream*, std::ostream*, bool, UT_Options*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: STDOUT: IMGfindAndSetDataWindow(char const*, char const*, double, long, bool, int, bool, bool, char const*, double, bool, std::ostream*, std::ostream*, bool, UT_Options*) <libHoudiniUT.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_CryptoResolver::close() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_CryptoResolver::close() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_Imager::clearCryptoResolver() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_Imager::clearCryptoResolver() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_Imager::close() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_Imager::close() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_Scene::finishRender() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_Scene::finishRender() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_Scene::render() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_Scene::render() <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_SceneIO::doRender(CMD_Args&) <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_SceneIO::doRender(CMD_Args&) <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: CMD_Manager::runCommand(char*) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: STDOUT: CMD_Manager::runCommand(char*) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: CMD_Manager::internalExecute(char const*) [clone .localalias] <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: STDOUT: CMD_Manager::internalExecute(char const*) [clone .localalias] <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: CMD_Manager::processInput(CMD_Source*, char const*) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: STDOUT: CMD_Manager::processInput(CMD_Source*, char const*) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: CMD_Manager::internalSendInput(char const*, bool) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: STDOUT: CMD_Manager::internalSendInput(char const*, bool) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: CMD_Manager::sendInputNoLock(char const*, bool) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: STDOUT: CMD_Manager::sendInputNoLock(char const*, bool) <libHoudiniPRM.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: RAY_Scene::load(UT_IStream&) <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: STDOUT: RAY_Scene::load(UT_IStream&) <libHoudiniRAY.so>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: _init <mantra-bin>
2022-09-27 10:57:45:  0: STDOUT: _init <mantra-bin>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: __libc_start_main <libc.so.6>
2022-09-27 10:57:45:  0: STDOUT: __libc_start_main <libc.so.6>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: _init <mantra-bin>
2022-09-27 10:57:45:  0: STDOUT: _init <mantra-bin>
2022-09-27 10:57:45:  0: DEBUG: ManagedProcess.HandleStdoutLine: parsing stdout: -- TRACEBACK END --
2022-09-27 10:57:45:  0: STDOUT: -- TRACEBACK END --
2022-09-27 10:57:46:  0: DEBUG: ManagedProcess.Execute: m_process.IsRunning(): False    m_process.IsStdoutAvailable(): False
2022-09-27 10:57:46:  0: DEBUG: ManagedProcess.Execute: child process has exited
2022-09-27 10:57:46:  0: DEBUG: PopupHandler.CheckForPopups: Getting popup handles
2022-09-27 10:57:46:  0: DEBUG: ManagedProcess.Execute: checking exit code
2022-09-27 10:57:46:  0: INFO: Process exit code: 139
2022-09-27 10:57:46:  0: DEBUG: ManagedProcess.Execute: calling CheckExitCode()
2022-09-27 10:57:46:  0: DEBUG: ManagedProcess.Execute: returning
2022-09-27 10:57:46:  0: Done executing plugin command of type 'Render Task'

Update:

I resolved the issue by altering the Mantra.py as described in this post:

Privacy | Site terms | Cookie preferences