-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] tar: opensearch-1.3.0/jdk/...: implausibly old time stamp 1970-01-01 00:00:00 (JDK 11) in 1.3.0 #2412
Comments
@peterzhuamazon I cannot reproduce it on my Ubuntu 21.10 :( |
Interesting, it shows on my AL2 test machine. Thanks. |
Seeing some possibly related notice here: https://bugzilla.redhat.com/show_bug.cgi?id=1229160 |
Seems to be old one, 2017, I will check with different containers as well |
I am specifically testing on AL2 EC2 instance. |
Ran it on Ubuntu 20.04 and AL2 5.1 |
Found a similar issue: https://jira.mongodb.org/browse/TOOLS-2706 But does not seem to be specific to the JDK version. |
@kotwanikunal Any update on the fix for this bug? Please update this thread when you have an answer - https://discuss.opendistrocommunity.dev/t/implausibly-old-time-stamp-1969-12-31-error-while-untarring-opensearch-1-3-0/8989 |
I tried working around the issue with the JDK versions and the tarballing configuration. I haven't had a lot of luck fixing/root causing it. |
@kotwanikunal any update on this? |
@minalsha I don't think this was prioritized and is being actively looked into. |
Checked out the opensearch repo and ran After doing some deep-dive the issue seems to be coming from here. The Can someone please look into this and set this property to |
@rishabh6788 the [1] 6da253b |
Got it! |
Reverting #1995 will break reproducible builds, right? Is there any way around this short of recommending that users supply |
It does not prevent the untar just warnings. |
Yes, it will
Correct, it just floods the output |
My inclination is to keep reproducible builds (and the resulting warning from the untar command) as opposed to reverting #1995. The untar warnings can be suppressed with |
@andrross / @kotwanikunal can one of you summarize the issue and next steps for this issue? |
@minalsha The "reproducible builds" feature is the capability to deterministically produce the same output of a build given the same input. One example of non-determinism is using build-time timestamps on file timestamps when creating the build artifacts. A maintainer for OpenSearch in Arch Linux created a pull request (#1995) against OpenSearch core to change the gradle build settings to make the build reproducible, which involves removing build-time file timestamps (I don't actually know if the times are zeroed out or just omitted...). One side effect of this change is that by default in some environments, the My opinion is that we should probably not do anything here, since reproducible builds seem like a good thing and the tar warnings are harmless (and can be avoided if you pass the |
I think there is a value in reproducible builds, but may be we need a bit different approach then just zeroing timestamps: may be we could always set the timestamp out of the last commit? In this case, whenever the same change set is being build - it is reproducible build. If it sounds like a path worth checking, I could try implementing it out, @andrross wdyt? |
@reta Totally agree that zeroing out timestamps seems odd. But we are following the recommended approach from the Gradle documentation to create reproducible builds. I'm not opposed to using the commit time like you described, but would just worry if it introduced a lot of complexity. |
I am thinking about it as a simple change, if it is not - I will not spend time on it (Gradle is always full of surprises) .... |
This only happens in 1.3.0 after we change to JDK11.
I am not able to understand how this is coming from.
To reproduce, download this and extract it:
Thanks.
The text was updated successfully, but these errors were encountered: