Clarification regarding the GitHub Actions pre-submit testing
Alan.Bateman at oracle.com
Fri Mar 19 14:19:16 UTC 2021
On 18/03/2021 13:18, Aleksey Shipilev wrote:
> What I am talking about is much weaker: buildability. I believe it is
> fair to ask that when the mainline integration PR is done, the
> arch-specific code is clearly isolated, new declarations in
> arch-specific headers are done, their implementations are stubbed out
> with NotImplemented(), etc.
> So that VM builds, and then hopefully passes old tests as much as
> possible, and fails on new tests at sensible points where the
> implementation is expected to be.
> I hope this clarifies that I am not suggesting something drastic here.
> I am only talking about the basic quality gate check: buildability on
> primary/secondary ports; tier1 on primary ports.
Asking to keep secondary ports building if possible is not unreasonable.
Most changes aren't massive features so if it's something small and
trivial to avoid a follow-up (and annoying) "broken by JDK-XXXX" issue
then it might be okay, but within reason. I think it would be unfair to
ask someone to spend significant time on a secondary port when they have
no access to such as system.
Maurizio pointed to the integration of the foreign linker API which went
into JDK 16 with only support for x64 and aarch64. It builds on other
architectures but I think the feature is DOA until he gets attention
from port maintainers. I've no doubt there will be some cases where "not
implemented" means the VM can't start so it can't run any tests. Is this
useful? I'm not sure.
My personal view is that the bar for primary platforms needs to be high,
probably more than tier1. A significant chunk of the tests in libraries
areas are currently in tier2 and beyond. I don't know how the VMs for
the GitHub Actions are configured but if there is firewall or other
configuration that is blocking network connections they it could be
I hope this thread will come back to discussing the
platform/ports/features that are considered primary vs. secondary, the
32-bit ports in particular. The discussion lead may lead into the
versions of the various tool chains too.
More information about the jdk-dev