Bug 136526 - loolwsd 7.0.0.2 doesn't honor ${CONFIGURATION_LAYERS}: dlopen(…/program/libmergedlo.so) can't find config
Summary: loolwsd 7.0.0.2 doesn't honor ${CONFIGURATION_LAYERS}: dlopen(…/program/libme...
Status: RESOLVED INSUFFICIENTDATA
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All Linux (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-09-06 20:52 UTC by guilhem
Modified: 2022-11-30 03:51 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description guilhem 2020-09-06 20:52:44 UTC
loolwsd doesn't honor the custom LibreOffice registry location set in program/fundamentalrc:CONFIGURATION_LAYERS).  The dlopen(…/program/libmergedlo.so) seems to unconditionally look for it at …/share/registry, and the missing *.xcd lead to bootstrapping exceptions:

    [ forkit ] TRC  dlopen(…/program/libmergedlo.so, RTLD_GLOBAL|RTLD_NOW)|
kit/Kit.cpp:2833
    [ forkit ] TRC  Invoking lok_preinit(…/program", "file:///user")|
kit/Kit.cpp:2887
    Init vcl
    Bootstrapping exception 'cannot find /org.openoffice.TypeDetection.Types/Types
…/configmgr/source/rootaccess.cxx:213'
    [ forkit ] TRC  Finished lok_preinit(…/program", "file:///user") in 25
ms.| kit/Kit.cpp:2897
    […]
    Bootstrapping exception 'cannot find /org.openoffice.Setup/L10N
…/configmgr/source/rootaccess.cxx:213'

Such a loolwsd is not functional: all client connections timeout.  A workaround is to create symlinks …/share/registry/*.xcd to their actual location before starting loolwsd.  (Didn't look for a minimal list of .xcd files to create, but AFAICT at least main.xcd and pdfimport.xcd are required.)

[Originally filed at https://bugs.debian.org/969653 .]
Comment 1 Rene Engelhard 2020-09-07 05:11:32 UTC
For reference:

$ cat /usr/lib/libreoffice/program/fundamentalrc 
[Bootstrap]
BRAND_BASE_DIR=file:///usr/lib/libreoffice
BRAND_INI_DIR=${ORIGIN}
BRAND_SHARE_RESOURCE_SUBDIR=program/resource
BRAND_SHARE_SUBDIR=share
CONFIGURATION_LAYERS=xcsxcu:file:///etc/libreoffice/registry res:file:///etc/libreoffice/registry dconf:* bundledext:${${BRAND_BASE_DIR}/program/lounorc:BUNDLED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini sharedext:${${BRAND_BASE_DIR}/program/lounorc:SHARED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini userext:${${BRAND_BASE_DIR}/program/lounorc:UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini user:!${$BRAND_BASE_DIR/program/bootstraprc:UserInstallation}/user/registrymodifications.xcu
LO_JAVA_DIR=${BRAND_BASE_DIR}/program/classes
LO_LIB_DIR=${BRAND_BASE_DIR}/program
BAK_EXTENSIONS=${$ORIGIN/lounorc:TMP_EXTENSIONS}
BUNDLED_EXTENSIONS=${$ORIGIN/lounorc:BUNDLED_EXTENSIONS}
BUNDLED_EXTENSIONS_USER=${$ORIGIN/lounorc:BUNDLED_EXTENSIONS_USER}
SHARED_EXTENSIONS_USER=${$ORIGIN/lounorc:SHARED_EXTENSIONS_USER}
UNO_SHARED_PACKAGES_CACHE=${$ORIGIN/lounorc:UNO_SHARED_PACKAGES_CACHE}
TMP_EXTENSIONS=${$ORIGIN/lounorc:TMP_EXTENSIONS}
UNO_USER_PACKAGES_CACHE=${$ORIGIN/lounorc:UNO_USER_PACKAGES_CACHE}
URE_BIN_DIR=${BRAND_BASE_DIR}/program
URE_MORE_JAVA_CLASSPATH_URLS= file:///usr/share/java/hsqldb1.8.0.jar
URE_OVERRIDE_JAVA_JFW_SHARED_DATA=${BRAND_BASE_DIR}/share/config/javasettings_${_OS}_${_ARCH}.xml
URE_OVERRIDE_JAVA_JFW_USER_DATA=${${BRAND_BASE_DIR}/program/bootstraprc:UserInstallation}/user/config/javasettings_${_OS}_${_ARCH}.xml
URE_MORE_JAVA_TYPES=${BRAND_BASE_DIR}/program/classes/ridl.jar ${BRAND_BASE_DIR}/program/classes/ScriptFramework.jar ${${$ORIGIN/lounorc:PKG_UserUnoFile}:UNO_JAVA_CLASSPATH} ${${$ORIGIN/lounorc:PKG_SharedUnoFile}:UNO_JAVA_CLASSPATH} ${${$ORIGIN/lounorc:PKG_BundledUnoFile}:UNO_JAVA_CLASSPATH}
URE_MORE_SERVICES=${${$ORIGIN/lounorc:PKG_UserUnoFile}:UNO_SERVICES} ${${$ORIGIN/lounorc:PKG_SharedUnoFile}:UNO_SERVICES} ${${$ORIGIN/lounorc:PKG_BundledUnoFile}:UNO_SERVICES} <$ORIGIN/services>*
URE_MORE_TYPES=<$ORIGIN/types>* ${${$ORIGIN/lounorc:PKG_UserUnoFile}:UNO_TYPES} ${${$ORIGIN/lounorc:PKG_SharedUnoFile}:UNO_TYPES} ${${$ORIGIN/lounorc:PKG_BundledUnoFile}:UNO_TYPES}
Comment 2 Rene Engelhard 2020-09-17 05:03:18 UTC
I somewhow start to believe this is not a bug in loolwsd itself but in LOs core (libmerged) which is called by loolwsd....

Anways, for 7.0.2 packages I'll work around this by symlinking /usr/lib/libreoffice/share/registry -> /etc/libreoffice/registry..

But still I think LO stuff should honour LOs rc files :-)
Comment 3 Xisco Faulí 2022-05-02 13:59:53 UTC
A new major release of LibreOffice is available since this bug was reported.
Could you please try to reproduce it with the latest version of LibreOffice
from https://www.libreoffice.org/download/libreoffice-fresh/ ?
I have set the bug's status to 'NEEDINFO'. Please change it back to
'UNCONFIRMED' if the bug is still present in the latest version.
Comment 4 QA Administrators 2022-10-30 03:49:01 UTC Comment hidden (obsolete)
Comment 5 QA Administrators 2022-11-30 03:51:19 UTC
Dear Guilhem Moulin,

Please read this message in its entirety before proceeding.

Your bug report is being closed as INSUFFICIENTDATA due to inactivity and
a lack of information which is needed in order to accurately
reproduce and confirm the problem. We encourage you to retest
your bug against the latest release. If the issue is still
present in the latest stable release, we need the following
information (please ignore any that you've already provided):

a) Provide details of your system including your operating
   system and the latest version of LibreOffice that you have
   confirmed the bug to be present

b) Provide easy to reproduce steps – the simpler the better

c) Provide any test case(s) which will help us confirm the problem

d) Provide screenshots of the problem if you think it might help

e) Read all comments and provide any requested information

Once all of this is done, please set the bug back to UNCONFIRMED
and we will attempt to reproduce the issue. Please do not:

a) respond via email 

b) update the version field in the bug or any of the other details
   on the top section of our bug tracker

Warm Regards,
QA Team

MassPing-NeedInfo-FollowUp