Skip to content

Commit 5a7e670

Browse files
committed
[GR-71954] Fix SafeDirectoryUpdater when running in a layered container build.
PullRequest: mx/1994
2 parents 9dfcc71 + 4b2d66f commit 5a7e670

File tree

5 files changed

+13
-24
lines changed

5 files changed

+13
-24
lines changed

ci.jsonnet

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ local with(platform, java_release, timelimit="15:00") = {
160160
],
161161
},
162162

163-
build_graalvm_ce:: self.with_name("gate-build-graalvm-ce") + common.deps.sulong + common.deps.truffleruby + {
163+
build_graalvm_ce:: self.with_name("gate-build-graalvm-ce") + common.deps.sulong + {
164164
packages+: {
165165
make: ">=" + versions.make,
166166
},
@@ -169,10 +169,6 @@ local with(platform, java_release, timelimit="15:00") = {
169169
] + self.java_home_in_env("../graal/vm", "vm") + [
170170
# Test the ce env file
171171
[mx, "-p", "../graal/vm", "--env", "ce", "build"],
172-
# Also test building Truffle languages
173-
[mx, "-p", "../graal/vm", "--dy", "truffleruby", "sforceimports"],
174-
[mx, "-p", "../graal/vm", "--dy", "truffleruby", "--env", "../../../truffleruby/mx.truffleruby/native", "graalvm-show"],
175-
[mx, "-p", "../graal/vm", "--dy", "truffleruby", "--env", "../../../truffleruby/mx.truffleruby/native", "build"],
176172
],
177173
},
178174

ci/common.jsonnet

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -286,18 +286,6 @@ local common_json = import "../common.json";
286286
} else {},
287287
},
288288

289-
truffleruby:: {
290-
packages+: (if self.os == "linux" && self.arch == "amd64" then {
291-
ruby: "==3.2.2", # Newer version, also used for benchmarking
292-
} else if (self.os == "windows") then
293-
error('truffleruby is not supported on windows')
294-
else {
295-
ruby: "==3.0.2",
296-
}) + (if self.os == "linux" then {
297-
libyaml: "==0.2.5",
298-
} else {}),
299-
},
300-
301289
graalnodejs:: {
302290
local this = self,
303291
packages+: if self.os == "linux" then {

common.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@
4949
"graalvm-ee-25-ea": {"name": "graalvm-jdk", "version": "25.0.0", "ea": "36", "platformspecific": true },
5050

5151
"oraclejdk-latest": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25.0.1+8", "platformspecific": true, "extrabundles": ["static-libs"]},
52-
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b11", "platformspecific": true },
53-
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b11-debug", "platformspecific": true },
54-
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b11-sulong", "platformspecific": true },
55-
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b11", "platformspecific": true },
56-
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b11-debug", "platformspecific": true },
57-
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b11-sulong", "platformspecific": true }
52+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b12", "platformspecific": true },
53+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b12-debug", "platformspecific": true },
54+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25.0.1+8-jvmci-25.1-b12-sulong", "platformspecific": true },
55+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b12", "platformspecific": true },
56+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b12-debug", "platformspecific": true },
57+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25.0.1+8-jvmci-25.1-b12-sulong", "platformspecific": true }
5858
},
5959

6060
"eclipse": {

src/mx/_impl/mx.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15586,6 +15586,11 @@ def __exit__(self, exc_type, exc_value, traceback):
1558615586
old_target = join(self._workspace, 'to_delete_' + basename(self.target))
1558715587
try:
1558815588
os.rename(self.target, old_target)
15589+
except OSError as e:
15590+
if e.errno == errno.EXDEV: # invalid cross-device link
15591+
# This can happen when building a container, when the old directory isn't in the same layer as the one we are
15592+
# currently building. Assume that in this case there can be no race and just rmtree instead of atomic move.
15593+
rmtree(self.target)
1558915594
except:
1559015595
# Silently assume another process won the race to rename dst_jdk_dir
1559115596
pass

src/mx/mx_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# The version must be updated for every PR (checked in CI) and the comment should reflect the PR's issue
2-
version = "7.68.6" # GR-71754 - Improve sigtest help output and warn if check is run with less than "all".
2+
version = "7.68.7" # GR-71954 SafeDirectoryUpdater in container

0 commit comments

Comments
 (0)