OpenDataNode / odn-box

0 stars 2 forks source link

problem with pre-installed java #12

Closed Jan-Marcek closed 9 years ago

Jan-Marcek commented 9 years ago

when java-7-oracle is installed before installation of odn-simple then a user gets stacktrace:

: The following partially installed packages will be configured:
  odn-simple unifiedviews-pgsql unifiedviews-webapp 
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 34 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
perl: warning: Setting locale failed.    
perl: warning: Please check that your locale settings:
 LANGUAGE = (unset),
 LC_ALL = (unset),
 LC_CTYPE = "UTF-8",
 LANG = "C"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up unifiedviews-webapp (1.6.0) ...
[ ok ] Starting Tomcat servlet engine: tomcat7.
Setting up unifiedviews-pgsql (1.6.0) ...
Setting up odn-simple (0.11.0) ...
>> set_ckans_hostname: 
 tknap
<< 
[ ok ] Stopping Tomcat servlet engine: odn-solr.
[ ok ] Starting Tomcat servlet engine: odn-solr.
wait for restart
>> default_java
update-java-alternatives: directory does not exist: /usr/lib/jvm/java-1.7.0-openjdk-amd64
dpkg: error processing odn-simple (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 odn-simple
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install.  Trying to recover:
Setting up odn-simple (0.11.0) ...
>> set_ckans_hostname: 
 tknap
<< 
[ ok ] Stopping Tomcat servlet engine: odn-solr.
[ ok ] Starting Tomcat servlet engine: odn-solr.
wait for restart
>> default_java
update-java-alternatives: directory does not exist: /usr/lib/jvm/java-1.7.0-openjdk-amd64
dpkg: error processing odn-simple (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 odn-simple

Facts:

tknap@tknap:~$ cat /etc/apt/sources.list.d/java7.list
deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main
tknap@tknap:~$ /usr/sbin/update-java-alternatives -l
java-7-oracle 1 /usr/lib/jvm/java-7-oracle
Jan-Marcek commented 9 years ago

workaround:

 apt-get install openjdk-7-jre-headless -V
 apt-get install -f
Jan-Marcek commented 9 years ago

This solution is enough for now. But we dealt with similar bug which was fixed by https://github.com/OpenDataNode/odn-box/commit/ba2247bd9a2ac87a0f8f359e9c93bb14991853a3 and by https://github.com/UnifiedViews/Packages/commit/248a5435b07ba8989959ad0d9d2fcff3d1334e5f

odn-box don't set default java and those packages which are using JAVA_HOME take care if JAVA_HOME is set correctly itself.

Jan-Marcek commented 9 years ago

The problem was that oracle-java provides openjdk-7-jre-headless as virtual package. openjdk-7-jre-headless won't be installed even though it is set as dependency explicitly: https://github.com/UnifiedViews/Packages/blob/develop/unifiedviews-backend-shared/src/deb/control/control#L7