After spending hours trying to figure out why postgresql is tied intimately to java, and why my JAVA_HOME var in my shell was being overwritten by rude ebuild scripts (ant), and discovering a mysterious (and nonstandard) utility "java-config" existed (which means all java distro docs are wrong for java on Gentoo), I hit a sandbox access violation. I'm typing this by hand, so some formatting may be wrong: -------------------------- ACCESS VIOLATION SUMMARY --------------------------- LOG FILE = "/tmp/sandbox-postgresql-7.2.3-30870.log" open_wr: /usr/share/man/man3/Pg.3pm chmod: /usr/share/man/man3/Pg.3pm -------------------------------------------------------------------------------
I believe carpaski committed a fix for this.
could you comment on what the fix was ? ;)
*** Bug 9840 has been marked as a duplicate of this bug. ***
*** Bug 9875 has been marked as a duplicate of this bug. ***
diff -uNr postgresql-7.2.2-orig/work/postgresql-7.2.2/src/interfaces/perl5/GNUmakefile postgresql-7.2.2/work/postgresql-7.2.2/src/interfaces/perl5/GNUmakefile --- src/interfaces/perl5/GNUmakefile Sun Aug 26 18:28:04 2001 +++ src/interfaces/perl5/GNUmakefile Tue Sep 24 17:10:32 2002 @@ -38,7 +38,7 @@ LIBS="-L$$abs_libpq_builddir -lpq" \ INSTALLSITEARCH='$$(DESTDIR)$(perl_installsitearch)' \ INSTALLSITELIB='$$(DESTDIR)$(perl_installsitelib)' \ - INSTALLMAN3DIR='$$(DESTDIR)$(perl_installman3dir)' \ + INSTALLSITEMAN3DIR='$$(DESTDIR)$(perl_installman3dir)' \ MAKEFILE="$$abs_builddir/Makefile"
This happens with postgresql-7.2.3-r1 if java-config is set to blackdown-jdk-1.3.1. >>> Completed installing into /var/tmp/portage/postgresql-7.2.3-r1/image/ --------------------------- ACCESS VIOLATION SUMMARY --------------------------- LOG FILE = "/tmp/sandbox-postgresql-7.2.3-r1-30849.log" open_wr: /usr/share/man/man3/Pg.3pm chmod: /usr/share/man/man3/Pg.3pm -------------------------------------------------------------------------------- If java-config is set to blackdown-jdk-1.4.1_beta or sun-jdk-1.4.1.01 it doesn't get this far. compile: [javac] Compiling 53 source files to /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/build [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/xa/XAConnectionImpl.java:57: cannot resolve symbol [javac] symbol : class RollbackException [javac] location: package transaction [javac] import javax.transaction.RollbackException; [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java:60: org.postgresql.jdbc2.ResultSet should be declared abstract; it does not define getURL(int) in org.postgresql.jdbc2.ResultSet [javac] public class ResultSet extends org.postgresql.ResultSet implements java.sql.ResultSet [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/Statement.java:25: org.postgresql.jdbc2.Statement should be declared abstract; it does not define getMoreResults(int) in org.postgresql.jdbc2.Statement [javac] public class Statement extends org.postgresql.Statement implements java.sql.Statement [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/Connection.java:37: org.postgresql.jdbc2.Connection should be declared abstract; it does not define setHoldability(int) in org.postgresql.jdbc2.Connection [javac] public class Connection extends org.postgresql.Connection implements java.sql.Connection [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java:40: org.postgresql.jdbc2.DatabaseMetaData should be declared abstract; it does not define supportsSavepoints() in org.postgresql.jdbc2.DatabaseMetaData [javac] public class DatabaseMetaData implements java.sql.DatabaseMetaData [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/PreparedStatement.java:32: org.postgresql.jdbc2.PreparedStatement should be declared abstract; it does not define setURL(int,java.net.URL) in org.postgresql.jdbc2.PreparedStatement [javac] public class PreparedStatement extends Statement implements java.sql.PreparedStatement [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/jdbc2/CallableStatement.java:42: org.postgresql.jdbc2.CallableStatement should be declared abstract; it does not define registerOutParameter(java.lang.String,int) in org.postgresql.jdbc2.CallableStatement [javac] public class CallableStatement extends org.postgresql.jdbc2.PreparedStatement implements java.sql.CallableStatement [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/largeobject/PGblob.java:26: org.postgresql.largeobject.PGblob should be declared abstract; it does not define setBytes(long,byte[]) in org.postgresql.largeobject.PGblob [javac] public class PGblob implements java.sql.Blob [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/largeobject/PGclob.java:26: org.postgresql.largeobject.PGclob should be declared abstract; it does not define setString(long,java.lang.String) in org.postgresql.largeobject.PGclob [javac] public class PGclob implements java.sql.Clob [javac] ^ [javac] /var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/org/postgresql/xa/ClientConnection.java:70: org.postgresql.xa.ClientConnection should be declared abstract; it does not define setHoldability(int) in org.postgresql.xa.ClientConnection [javac] final class ClientConnection [javac] ^ [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -deprecation for details. [javac] 10 errors BUILD FAILED file:/var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc/build.xml:72: Compile failed; see the compiler error output for details. Total time: 4 seconds make[3]: *** [all] Error 1 make[3]: Leaving directory `/var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces/jdbc' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src/interfaces' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/tmp/portage/postgresql-7.2.3-r1/work/postgresql-7.2.3/src' make: *** [all] Error 2 !!! ERROR: The ebuild did not complete successfully. !!! Function src_compile, Line 87, Exitcode 2 !!! (no error message)
Peter: can you try commenting this line out of the ebuild: patch -p0 < ${FILESDIR}/${P}-perl-gentoo.diff || die
Ryan: I did that and it had absolutely no effect (using /usr/bin/java-config --set-system-vm=blackdown-jdk-1.4.1_beta). Results identical to those I alredy reported. With blackdown-jdk-1.3.1 I get the same sandbox violation.
Any progress on this? I still get the access violation. Or is there a way to install around this? Everything else seems to build fine (once jav system-vm is set to 1.3.1).
Using blackdown-jdk-1.3.1 and commenting out the line patch -p0 < ${FILESDIR}/${P}-perl-gentoo.diff || die in the ebuild made the install work without the access violation. After fiddeling around for too long I came to the sad conclusion that it's only that jdk that works for now.
Excellent, commenting out the patch (I misconstrued Ryan's same advice, above) provided a clean install. Andreas: As I say, sun-jdk 1.3.1.06 works for me -- it's clearly a Java 1.3/1.4 class lib schism.
closing - 7.3.3 works