[
https://issues.apache.org/jira/browse/MESOS-3725?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14955857#comment-14955857
]
James Peach commented on MESOS-3725:
------------------------------------
The alternative fix is to retain the {{libraries::path()}} APIs and persist a
set of search paths to manually implement the dynamic dlopen(3) search. IMHO
this is less preferable since it makes it harder for operators to reason about
where libraries will be loaded from; it's also not generally needed since it is
so easy to always use an absolute path.
> shared library loading depends on environment variable updates
> --------------------------------------------------------------
>
> Key: MESOS-3725
> URL: https://issues.apache.org/jira/browse/MESOS-3725
> Project: Mesos
> Issue Type: Bug
> Components: modules, stout
> Reporter: James Peach
> Assignee: James Peach
>
> {{ModuleTest::SetUpTestCase()}} and the various {{libraries::paths()}} is
> stout assume that updating {{LD_LIBRARY_PATH}} or {{DYLD_LIBRARY_PATH}} is
> sufficient to alter the search path used by dlopen(3). It is not; those
> environment variables are only bound at program load.
> My preference is to fix this by requiring the clients of {{DynamicLibrary}}
> to always pass in an absolute path and to remove all mention of these
> environment variables.
> FWIW, the tests in {{ModuleTest::SetUpTestCase()}} only work because the
> libtool wrapper script sets up the library path to the expected value prior
> to running the tests.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)