Bug 1570462

Summary: ZLIB_1.2.9 not found in Rocketchat Image
Product: OpenShift Container Platform Reporter: Andrew Block <andrew.block>
Component: Service BrokerAssignee: Aaron Ogle <aaron>
Status: CLOSED CURRENTRELEASE QA Contact: Zhang Cheng <chezhang>
Severity: high Docs Contact:
Priority: unspecified    
Version: 3.9.0CC: aaron, andrew.block, aos-bugs, bcook, bparees, eparis, jiazha, jkim, jmatthew, jnordell, jokerman, jorton, mfalto, mmccomas, zhsun, zitang
Target Milestone: ---Keywords: Reopened
Target Release: 3.11.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-07-18 22:13:06 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Andrew Block 2018-04-23 02:06:28 UTC
Description of problem:
The following error occurs on container startup which results in the rocketchat server failing to start

Exception in callback of async function: Error: /lib64/libz.so.1: version `ZLIB_1.2.9' not found (required by /opt/app-root/src/bundle/programs/server/npm/node_modules/sharp/build/Release/../../vendor/lib/libpng16.so.16)
    at Object.Module._extensions..node (module.js:672:18)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)
    at Module.require (module.js:587:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/opt/app-root/src/bundle/programs/server/npm/node_modules/sharp/lib/constructor.js:10:15)
    at Module._compile (module.js:643:30)
    at Object.Module._extensions..js (module.js:654:10)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)
    at Module.require (module.js:587:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/opt/app-root/src/bundle/programs/server/npm/node_modules/sharp/lib/index.js:3:15)
    at Module._compile (module.js:643:30)
    at Object.Module._extensions..js (module.js:654:10)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)
    at Module.require (module.js:587:17)
    at require (internal/module.js:11:18)
    at npmRequire (/opt/app-root/src/bundle/programs/server/npm-require.js:133:10)
    at Module.useNode (packages/modules-runtime.js:697:18)
    at fileEvaluate (packages/modules-runtime.js:342:20)
    at require (packages/modules-runtime.js:238:16)
    at FileUpload.js (packages/rocketchat:file-upload/server/lib/FileUpload.js:1:351)
    at fileEvaluate (packages/modules-runtime.js:343:9)
    at require (packages/modules-runtime.js:238:16)
    at /opt/app-root/src/bundle/programs/server/packages/rocketchat_file-upload.js:2081:1
    at /opt/app-root/src/bundle/programs/server/packages/rocketchat_file-upload.js:2095:3
    at /opt/app-root/src/bundle/programs/server/boot.js:411:36
    at Array.forEach (<anonymous>)
    at /opt/app-root/src/bundle/programs/server/boot.js:220:19
    at /opt/app-root/src/bundle/programs/server/boot.js:471:5
    at Function.run (/opt/app-root/src/bundle/programs/server/profile.js:510:12)
    at /opt/app-root/src/bundle/programs/server/boot.js:470:11



Version-Release number of selected component (if applicable):
Tags >= 0.63.1

How reproducible:
Always

Steps to Reproduce:
1. Launch Rocketchat image with tag >= 0.63.1

Actual results:
Server fails to load


Expected results:
Server loads and starts successfully


Additional info:

Comment 1 Ben Parees 2018-04-23 03:07:04 UTC
Andrew are you reporting this as a bug against the s2i-nodejs image that was used to build the rocketchat image, or an issue w/ the rocketchat image itself?

if the former, i'll reassign this bug to the SCL team which owns the s2i-nodejs image.  But if it's the latter, i'm not sure who the bug needs to go to (who owns/creates/distributes the rocketchat image?)

Comment 2 Andrew Block 2018-04-23 15:21:49 UTC
(In reply to Ben Parees from comment #1)
> Andrew are you reporting this as a bug against the s2i-nodejs image that was
> used to build the rocketchat image, or an issue w/ the rocketchat image
> itself?
> 
> if the former, i'll reassign this bug to the SCL team which owns the
> s2i-nodejs image.  But if it's the latter, i'm not sure who the bug needs to
> go to (who owns/creates/distributes the rocketchat image?)

This issue is most likely a compatibility between what is in the base SCL image and the dependencies that RocketChat needs. My assumption is that the RocketChat image should be responsible for ensuring prerequisite libraries are installed.

Comment 4 John Matthews 2018-05-15 19:43:10 UTC
*** Bug 1578192 has been marked as a duplicate of this bug. ***

Comment 5 Aaron Ogle 2018-05-16 02:01:18 UTC
Looks like zlib dependency is missing in the certified image.  I'll take a look.

Comment 7 Joe Orton 2018-05-24 14:59:12 UTC
"npm install sharp" fails for me with node on RHEL7 because there is a bundled version of libpng which isn't compatible with RHEL7 libz; this is an upstream issue not an RHSCL node image issue.

info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.6.1/libvips-8.6.1-linux-x64.tar.gz
prebuild-install WARN install /lib64/libz.so.1: version `ZLIB_1.2.9' not found (required by /opt/rh/rh-nodejs8/node_modules/sharp/build/Release/../../vendor/lib/libpng16.so.16)

Comment 8 John Matthews 2018-05-24 17:42:40 UTC
I'm reopening this as per Brian Cook and reassigning to Aaron Ogle from RocketChat.

This is an issue with a partner created image distributed through the partner connect registry with RHCC.

I'm unsure what's the best component to track this, for now leaving this under ServiceBroker yet the underlying issue is with the RocketChat application image, not the APB.

Comment 9 Mark Anthony Falto 2018-07-09 18:18:31 UTC
Confirmed this issue exists with the :latest image in registry.connect.redhat.com/rocketchat/rocketchat

Comment 10 Aaron Ogle 2018-07-18 22:13:06 UTC
This should now be resolved with the latest.

If you do not want to upgrade you can drop this environment variable in:
`LD_PRELOAD=/opt/app-root/src/bundle/programs/server/npm/node_modules/sharp/vendor/lib/libz.so`

The libz included in the base is too old, and sharp comes bundled with the one needed.