Ubuntu

/usr/lib/jvm VS /lib/jvm under overlayfs.

Reported by Mike Mestnik on 2012-07-21
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openjdk-7 (Ubuntu)
Undecided
Unassigned

Bug Description

Attached is an strace that shows /lib/jvm as the location used to find libjli.so.

java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory

# This fixed the issue.
arcadia:~# ln -s /usr/lib/jvm /lib

arcadia:~# dpkg -S /lib/jvm /usr/lib/jvm
dpkg-query: no path found matching pattern /lib/jvm.
openjdk-7-jre-lib, openjdk-7-jre, icedtea-7-jre-cacao, icedtea-7-jre-jamvm, openjdk-7-jre-headless, icedtea-netx: /usr/lib/jvm

/lib/jvm/java-7-openjdk-i386/jre/bin/../lib/i386/jli/libjli.so
/lib/jvm/java-7-openjdk-i386/jre/bin/../jre/lib/i386/jli/libjli.so

EDIT:
After reading the first few lines of the strace, I realised the issue. /proc/self/exe CAN NOT be used to lookup what file is being run, because not every file-system supports it properly. For that you must at least fall back to using inode and device numbers.

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1007089

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: openjdk-7-jre 7~u3-2.1.1~pre1-1ubuntu3
ProcVersionSignature: Ubuntu 3.2.0-23.31-lowlatency-pae 3.2.14
Uname: Linux 3.2.0-23-lowlatency-pae i686
ApportVersion: 2.0.1-0ubuntu8
Architecture: i386
Date: Sat Jul 21 17:29:43 2012
SourcePackage: openjdk-7
UpgradeStatus: Upgraded to precise on 2012-01-03 (200 days ago)

Mike Mestnik (cheako) wrote :
Mike Mestnik (cheako) on 2012-07-21
description: updated
Mike Mestnik (cheako) on 2012-07-29
summary: - /usr/lib/jvm VS /lib/jvm
+ /usr/lib/jvm VS /lib/jvm under overlayfs.
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers