adoptium / adoptium/infrastructure

OpenJDK test B8312065 cannot connect to network on test-docker-ubuntu2404-armv8-6

Open
#4,300 1 comment 0 reactions 0 assignees View on GitHub
docker testFail
Dominant language
Python
Stars
96
Forks
106
Avg merge
1d 23h
Merged PRs (30d)
13

Description

Please set the title to indicate the test name and machine name where known.

To make it easy for the infrastructure team to repeat and diagnose, please
answer the following questions:

- Test suite/name (e.g, BUILD_LIST, TARGET, CUSTOM_TARGET): java/net/Socket/B8312065.java
- Recent `Test_` link to ci.adoptium.net that shows the failure: https://ci.adoptium.net/job/Test_openjdk8_hs_extended.openjdk_aarch64_linux_testList_1/54/
- Recent rerun here: https://ci.adoptium.net/job/Grinder/16872/
- Specific error text (if applicable):
```
16:46:53 Exception in thread "main" java.net.SocketException: Network is unreachable (connect failed)
16:46:53 at java.net.PlainSocketImpl.socketConnect(Native Method)
16:46:53 at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
16:46:53 at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
16:46:53 at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
16:46:53 at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
16:46:53 at java.net.Socket.connect(Socket.java:607)
16:46:53 at B8312065.main(B8312065.java:77)
```
- **Hyperlink** to re-run in Grinder: [Grinder launcher](https://ci.adoptium.net/job/Grinder/parambuild/?SDK_RESOURCE=nightly&TARGET=jdk_custom&TEST_FLAG=&UPSTREAM_TEST_JOB_NAME=&DOCKER_REQUIRED=false&ACTIVE_NODE_TIMEOUT=5&VENDOR_TEST_DIRS=&EXTRA_DOCKER_ARGS=&TKG_OWNER_BRANCH=adoptium%3Amaster&OPENJ9_SYSTEMTEST_OWNER_BRANCH=eclipse%3Amaster&PLATFORM=aarch64_linux&GENERATE_JOBS=true&KEEP_REPORTDIR=true&PERSONAL_BUILD=false&ADOPTOPENJDK_REPO=https%3A%2F%2Fgithub.com%2Fadoptium%2Faqa-tests.git&RERUN_ITERATIONS=0&LABEL=test-docker-ubuntu2404-armv8-6&EXTRA_OPTIONS=&CUSTOMIZED_SDK_URL=&BUILD_IDENTIFIER=&ADOPTOPENJDK_BRANCH=master&LIGHT_WEIGHT_CHECKOUT=false&NON_AQA_TEST_REPOS=&USE_JRE=false&ARTIFACTORY_SERVER=&KEEP_WORKSPACE=false&USER_CREDENTIALS_ID=&JDK_VERSION=8&ITERATIONS=5&VENDOR_TEST_REPOS=&JDK_REPO=https%3A%2F%2Fgithub.com%2Fadoptium%2Fjdk8u&OPENJ9_BRANCH=master&OPENJ9_SHA=&JCK_GIT_REPO=&VENDOR_TEST_BRANCHES=&OPENJ9_REPO=https%3A%2F%2Fgithub.com%2Feclipse-openj9%2Fopenj9.git&UPSTREAM_JOB_NAME=&CLOUD_PROVIDER=&PLATFORM_AND_MACHINE=&CUSTOM_TARGET=java%2Fnet%2FSocket%2FB8312065.java++++&VENDOR_TEST_SHAS=&JDK_BRANCH=&TEST_IMAGES_REQUIRED=true&LABEL_ADDITION=&ARTIFACTORY_REPO=&ARTIFACTORY_ROOT_DIR=&UPSTREAM_TEST_JOB_NUMBER=&DOCKERIMAGE_TAG=&JDK_IMPL=hotspot&TEST_TIME=&SSH_AGENT_CREDENTIAL=&AUTO_DETECT=true&SLACK_CHANNEL=aqavit-bot&DYNAMIC_COMPILE=false&ADOPTOPENJDK_SYSTEMTEST_OWNER_BRANCH=adoptium%3Amaster&APPLICATION_OPTIONS=&CUSTOMIZED_SDK_URL_CREDENTIAL_ID=eclipse_temurin_bot_email_and_token&ARCHIVE_TEST_RESULTS=false&OPENJDK_SHA=&NUM_MACHINES=&RERUN_FAILURE=false&BUILD_LIST=openjdk&USE_TESTENV_PROPERTIES=false&UPSTREAM_JOB_NUMBER=&STF_OWNER_BRANCH=adoptium%3Amaster&TIME_LIMIT=25&JVM_OPTIONS=&PARALLEL=None)
- Any existing issues covering this: This issue may have some overlap: https://github.com/adoptium/aqa-tests/issues/4976
- Machine(s) this test works on:
- [test-docker-ubi9-armv8-2](https://ci.adoptium.net/computer/test-docker-ubi9-armv8-2)
- [test-linux-rhel10-aarch64-76c3a0](https://ci.adoptium.net/computer/test-linux-rhel10-aarch64-76c3a0)
- [test-linux-rhel10-aarch64-d7dc90](https://ci.adoptium.net/computer/test-linux-rhel10-aarch64-d7dc90)
- [test-aws-rhel76-armv8-1](https://ci.adoptium.net/computer/test-aws-rhel76-armv8-1)
- Machine(s) this test fails on: test-docker-ubuntu2404-armv8-6

Any other details:

It looks like this issue is due to the test not handling the SocketException properly when we try to connect to a broadcast address on Ubuntu.

JDK11 and 17 have been changed to catch the SocketException and throw a SkippedException. [The PR can be found here](https://github.com/openjdk/jdk17u/commit/75fa2e7c44d52874fa0054889f1240e0c58fcfd1), and the bug itself can be found [here](https://bugs.openjdk.org/browse/JDK-8350540).

I've added a comment to propose backporting the fix to JDK8, but since this could be mistaken for a problem with the machine itself, I'm raising this issue to clarify the situation.

Contributor guide

Open the contributing guide

Research direction

Start with java/net/Socket/B8312065.java, especially the connection at line 77, and compare the JDK 11/17 handling linked in the issue. Backport the JDK 8 test behavior for SocketException, then rerun the Grinder job on test-docker-ubuntu2404-armv8-6 and confirm the test no longer reports an infrastructure failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
infrastructure, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
56/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.