-
Bug
-
Resolution: Unresolved
-
P4
-
21, 23
ct.sym is a zip file containing symbol data created by the CreateSymbols build
tool. It takes an EPOCH timestamp to set the date of the ZipEntries, however
it uses ZipEntry.setTime(timestamp) which will set the encoded ZipEntry content, with a local timestamp dependent on the build system TimeZone.
This is thus not-reproducible, as can be seen in this example of two builds
on different timezone machines:
Length Date Time Name
--------- ---------- ----- ----
0 2024-01-16 00:00 8/java.activation/javax/activation/
Length Date Time Name
--------- ---------- ----- ----
0 2024-01-15 19:00 8/java.activation/javax/activation/
The CreateSymbols build tool needs to use setTimeLocal(UTCtimestamp) to be reproducible.
tool. It takes an EPOCH timestamp to set the date of the ZipEntries, however
it uses ZipEntry.setTime(timestamp) which will set the encoded ZipEntry content, with a local timestamp dependent on the build system TimeZone.
This is thus not-reproducible, as can be seen in this example of two builds
on different timezone machines:
Length Date Time Name
--------- ---------- ----- ----
0 2024-01-16 00:00 8/java.activation/javax/activation/
Length Date Time Name
--------- ---------- ----- ----
0 2024-01-15 19:00 8/java.activation/javax/activation/
The CreateSymbols build tool needs to use setTimeLocal(UTCtimestamp) to be reproducible.
- relates to
-
JDK-8241616 Timestamps on ct.sym entries lead to non-reproducible builds
- Resolved