Running hotspot_containers tests at current Xubuntu 20.04 fails with glibc incompatibility error like this:
$ CONF=linux-x86_64-server-fastdebug make images test TEST=hotspot_containers
STDERR:
stdout: [Error: dl failure on line 542
Error: failed /jdk/lib/server/libjvm.so, because /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /jdk/lib/server/libjvm.so)
];
stderr: []
exitValue = 6
AFAIU, this means that the host glibc (and thus what the tested JDK is using) is newer than the glibc in the image (needed by /lib64/libm.so).
After JDK-8221342, the current image version is selected by:
switch (Platform.getOsArch()) {
case "aarch64":
case "ppc64le":
case "s390x":
return "latest";
default:
return "7.6";
}
I think it would make sense to default to "latest" Ubuntu, so that we get the image with the latest glibc. Which would get much higher chance to work on all hosts, because it would have higher chance to be at least as new as the host glibc. There is still the option to select the image that fits a particular system, but the default should catch as much as possible.
Unfortunately, even the latest oraclelinux:8.3 does not have a glibc that is modern enough to cater for recent Ubuntu desktops.