I thought we made the dependency on the Attach API optional when we added support for JDK 11?
Anthony > On Jul 8, 2020, at 10:17 AM, Kirk Lund <kl...@apache.org> wrote: > > To transition away from Attach API, the community needs a proposal to do so > and we'll need to deprecate the GFSH options that depend on Attach API such > as "--pid" in "status server --pid 20938". Even then we're looking at a > minimum of one major release before we can remove options after they are > deprecated. > > We haven't had a major release in 4+ years so don't hold your breath! :) > > On Wed, Jul 8, 2020 at 9:59 AM Sean Goller <sgol...@vmware.com> wrote: > >> The Liberica JDK does not include the Attach API. I'm investigating why. >> Given the inherent insecurity of this API, I recommend we transition away >> from using it. >> ________________________________ >> From: Kirk Lund <kl...@apache.org> >> Sent: Monday, July 6, 2020 10:36 AM >> To: dev@geode.apache.org <dev@geode.apache.org> >> Subject: Flaky test caused by missing JDK dependency >> >> CI Failure: >> LocatorLauncherRemoteFileIntegrationTest.startDeletesStaleControlFiles >> failed with ConditionTimeoutException >> >> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fissues.apache.org%2Fjira%2Fbrowse%2FGEODE-6183&data=02%7C01%7Cbakera%40vmware.com%7Cdb5c3b93c1994223ff8b08d82362e699%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C637298254971916697&sdata=g67yHspVjXA8pJjp0shhYf7fZWltB7EexUXJ6sck8F8%3D&reserved=0 >> >> I've debugged the latest occurrence of GEODE-6183 (intermittent failure >> CI): >> >> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fconcourse.apachegeode-ci.info%2Fteams%2Fmain%2Fpipelines%2Fapache-support-1-13-main%2Fjobs%2FWindowsCoreIntegrationTestOpenJDK11%2Fbuilds%2F34&data=02%7C01%7Cbakera%40vmware.com%7Cdb5c3b93c1994223ff8b08d82362e699%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C637298254971916697&sdata=bACP7X6c%2By%2FtzyN6S65UEJ0xWRYxgEhM1KyvlYaYbSU%3D&reserved=0 >> >> The underlying cause is a missing dependency: the Attach API. In the Oracle >> JDK, the Attach API is found in the JAVA_HOME/lib/tools.jar. In some JDKs, >> including LibericaJDK, there may not be a tools.jar or it may be missing >> from our image of specific JDKs or a specific OS. I confirmed that the >> Attach API is actually inside a different .jar on some Mac releases of the >> JDK. >> >> Other than JDK differences, I'm not sure why tools.jar would intermittently >> be missing from our testing image, but that's definitely the cause of >> WindowsCoreIntegrationTestOpenJDK11 failing. I've reviewed a couple other >> older runs and it was the same intermittent cause of failure. >> >> Does anyone know if LibericaJDK includes tools.jar or the Attach API? >> >> Does anyone know how to verify that our images all have tools.jar or its >> equivalent? >> >> java.util.ServiceConfigurationError: >> com.sun.tools.attach.spi.AttachProvider: Provider >> sun.tools.attach.WindowsAttachProvider not found >> at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:588) >> at >> >> java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.nextProviderClass(ServiceLoader.java:1211) >> at >> >> java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1220) >> at >> >> java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1264) >> at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1299) >> at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1384) >> at >> >> jdk.attach/com.sun.tools.attach.spi.AttachProvider.providers(AttachProvider.java:258) >> at >> >> jdk.attach/com.sun.tools.attach.VirtualMachine.list(VirtualMachine.java:144) >> at >> >> org.apache.geode.internal.process.AttachProcessUtils.isProcessAlive(AttachProcessUtils.java:35) >> at >> >> org.apache.geode.internal.process.ProcessUtils.isProcessAlive(ProcessUtils.java:99) >> at >> >> org.apache.geode.internal.process.lang.AvailablePid.findAvailablePid(AvailablePid.java:117) >> at >> >> org.apache.geode.distributed.LauncherIntegrationTestCase.setUpAbstractLauncherIntegrationTestCase(LauncherIntegrationTestCase.java:92) >>