HARS keeps crashing on Ubuntu 22.04

   4922   2   3
User Avatar
Member
2 posts
Joined: 5月 2022
Offline
I'm trying to run houdini engine 18.5 in a python commandlet with Unreal 4.27 UE4Editor-Cmd; however, the following code throws does not work:
    houdini_engine = unreal.HoudiniPublicAPIBlueprintLib.get_api()
    if not houdini_engine:
        unreal.log_error('Houdini engine not found!')

    if not houdini_engine.is_session_valid():
        unreal.log_warning('Restarting houdini session')
        houdini_engine.restart_session()

LogPython: Warning: Restarting houdini session
Thrift: Wed Aug 3 21:41:07 2022 TSocket::open() connect() <Path: : Connection refused

A previous thread (related to C#) suggested calling HARS directly, but that crashes with invalid pointer:

/opt/hfs18.5/HARS -n hapi -a
free(): invalid pointer
2896:  (sent by pid 2896)
-- TRACEBACK BEGIN --
Traceback from HARS 18.5.759 (Compiled on linux-x86_64-gcc6.3):
stackTrace() <libHoudiniUT.so>
signalCallback(UTsignalHandlerArg) <libHoudiniUT.so>
UT_Signal::UT_ComboSignalHandler::operator()(int, siginfo_t*, void*) const <libHoudiniUT.so>
UT_Signal::processSignal(int, siginfo_t*, void*) <libHoudiniUT.so>
__sigaction <libc.so.6>
pthread_kill <libc.so.6>
raise <libc.so.6>
abort <libc.so.6>
__fsetlocking <libc.so.6>
timer_settime <libc.so.6>
__default_morecore <libc.so.6>
free <libc.so.6>
pxrInternal_v0_20__pxrReserved__::_DemangleNewRaw(std::string*) <libpxr_arch.so>
pxrInternal_v0_20__pxrReserved__::ArchDemangle(std::string*) <libpxr_arch.so>
pxrInternal_v0_20__pxrReserved__::ArchGetDemangled(char const*) <libpxr_arch.so>
pxrInternal_v0_20__pxrReserved__::Arch_ValidateAssumptions() <libpxr_arch.so>
pxrInternal_v0_20__pxrReserved__::(anonymous namespace)::Arch_InitConfig() <libpxr_arch.so>
__nptl_change_stack_perm <ld-linux-x86-64.so.2>
__nptl_change_stack_perm <ld-linux-x86-64.so.2>
_dl_catch_exception <libc.so.6>
_dl_rtld_di_serinfo <ld-linux-x86-64.so.2>
_dl_catch_exception <libc.so.6>
_dl_find_dso_for_object <ld-linux-x86-64.so.2>
dlmopen <libc.so.6>
_dl_catch_exception <libc.so.6>
_dl_catch_error <libc.so.6>
dlerror <libc.so.6>
dlopen <libc.so.6>
hapilOpenHAPIDSO(char const*, int) <libHoudiniHAPIL.so>
hapilLoadDSOAndFindSymbols(int, char const*) <libHoudiniHAPIL.so>
HAPI_CreateInProcessSession <libHoudiniHAPIL.so>
(anonymous namespace)::hardCreateProcessor() <libHoudiniHARD.so>
HARD_Server::init(HARD_Server::ThriftServerType, HART_TransportType, std::shared_ptr<apache::thrift::transport::TServerTransport>) <libHoudiniHARD.so>
HARD_Server::HARD_Server(HARD_Server::ThriftServerType, HART_TransportType, bool, std::unique_ptr<HARD_Server::ReadyHandler, std::default_delete<HARD_Server::ReadyHandler> >, char const*, bool) <libHoudiniHARD.so>
_init <HARS>
__libc_init_first <libc.so.6>
__libc_start_main <libc.so.6>
_init <HARS>
-- TRACEBACK END --

This happens when running as normal user or as sudo. How do I fix this? I do have a valid houdini core license; i.e. sesictrl print-license shows an active license.
User Avatar
Member
2 posts
Joined: 5月 2022
Offline
Update: I solved this by running HARS with a LD_PRELOAD; in second terminal; i.e.

LD_PRELOAD="/lib/x86_64-linux-gnu/libc_malloc_debug.so.0" ./HARS -s 9090

IIRC, this was not required on Ubuntu 20.04 or running Houding 19.5 on Ubuntu 22.04
Edited by mbroecker - 2022年8月5日 17:13:21
User Avatar
スタッフ
727 posts
Joined: 10月 2012
Offline
mbroecker
Update: I solved this by running HARS with a LD_PRELOAD; in second terminal; i.e.

LD_PRELOAD="/lib/x86_64-linux-gnu/libc_malloc_debug.so.0" ./HARS -s 9090

IIRC, this was not required on Ubuntu 20.04 or running Houding 19.5 on Ubuntu 22.04

Yeah this was an issue with glibc 2.34 or later, which newer Ubuntu versions have. There was a fix in the 19.0 daily builds, but 18.5 and earlier does not have this fix
  • Quick Links