Vendored ORE engine package missing its own shared libraries

Table of Contents

This page is a capture in the inbox bucket of the product backlog — a pre-sprint idea, not yet pulled into a sprint as a story.

What

external/ore/packages/ore-1.8.15.0-x64-linux.tar.gz extracts to just two files: manifest.json (naming the executable and its args) and the ore-1.8.15.0-x64-linux binary itself. ldd on that binary shows three of its own shared-library dependencies unresolved: libOREAnalytics.so, libQuantExt.so, libQuantLib.so.1 (only libboost_timer.so.1.90.0 and libc/libstdc++/libgcc resolve, since those happen to already be installed system-wide on this box). Every compute job dispatched to a ores.compute.wrapper node that unpacks this package and runs it fails immediately with "error while loading shared libraries: libOREAnalytics.so: cannot open shared object file". Whatever step assembles/publishes this archive needs to bundle those three .so files alongside the executable (and set LD_LIBRARY_PATH~/~RPATH appropriately so the wrapper can find them at the package's own extracted location, not rely on them being installed system-wide).

Why

Discovered while verifying a compute job runs end-to-end against the Newton deployment via the Acme test scenario (Acme end-to-end smoke test against the Newton deployment) – after fixing the tenant_id dispatch bug (see the Newton deploy task) so a workunit actually reaches a worker node, the engine itself fails to even start. Confirmed via direct reproduction on this dev box (extract the archive, run the binary directly, same error) that this is a pre-existing packaging gap in the vendored archive, not anything specific to containers, Newton, or an older glibc/Debian version – it would have failed identically on localhost had anyone run a compute job through to actual engine execution before now.

References

  • external/ore/packages/ore-1.8.15.0-x64-linux.tar.gz
  • projects/ores.compute/wrapper/ (the process that unpacks and runs this package)

See also

Emacs 29.3 (Org mode 9.6.15)