GNU bug report logs - #34231
Openjdk11 not reproducilbe

Previous Next

Package: guix;

Reported by: Gábor Boskovits <boskovits <at> gmail.com>

Date: Mon, 28 Jan 2019 08:27:02 UTC

Severity: normal

To reply to this bug, email your comments to 34231 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#34231; Package guix. (Mon, 28 Jan 2019 08:27:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Gábor Boskovits <boskovits <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 28 Jan 2019 08:27:04 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Gábor Boskovits <boskovits <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: Openjdk11 not reproducilbe
Date: Mon, 28 Jan 2019 09:26:18 +0100
The openjdk package, as submitted on the tracker as #34230 is not reproducible.

doc output passes rounds=2
jdk output does not, differing files:

jmods/java.base.jmod:
this is a jmod file.
You can use diffoscope on it, after strippeing of the 4 bytes binary
header, as it becomes a
standard zip archive then.
the only differing file inside the archive is:
classes/module-info.class, and only the module hashes differ.
This also causes the zip CRC to mismatch.
In summary these seems to be the syndrome of modules differing.

lib/classList:
this file has non-deterministic ordering issues. I could just sort it,
but I believe it causes problems in other files. If it turns out to be
not related to other problems, this is trivial to fix.

lib/modules:
This is a jimage file.
Most differences are from metadata.
You can extract the content using the jimage tool, which is available
from any openjdk package.
There are two problems:
1. We can't regenerate the file from the extracted content, as it
needs additional information. We will have to find the spot in the
build system where this file is created to regenerate it, or patch the
jimage tool to create deteministic metadata.
2. unfortunately there are some real differences in the content:
java.base/jdk/internal/module/SystemModules$all.class:
integer differences
also bytecode differences

module-info.class:
hash differences
(this seems to be a sympthom)

I have no info on the out output, as the daemon only reports the first
differing output.

Thanks for Julien in helping me out in collecting these informations.




Information forwarded to bug-guix <at> gnu.org:
bug#34231; Package guix. (Fri, 01 Feb 2019 12:10:02 GMT) Full text and rfc822 format available.

Message #8 received at 34231 <at> debbugs.gnu.org (full text, mbox):

From: Gábor Boskovits <boskovits <at> gmail.com>
To: 34231 <at> debbugs.gnu.org
Subject: Openjdk11 not reproducible
Date: Fri, 1 Feb 2019 13:09:08 +0100
See comments in make/scripts/compare.sh.

It might make sense to add a build system flag to enable reproducible
build, for most people building openjdk should not pay the performance
penalty involved.




This bug report was last modified 6 years and 131 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.