Re: jdk 17 and accumulo testing

2022-12-08 Thread Christopher
Hi Vincent,

Version 2.0.1 is end of life as of the 2.1.0 LTM release, and 2.0 is
not expected to receive any further updates. Version 2.1.0 may work
with ZooKeeper 3.4, but was developed and tested against 3.5 and later
versions. I believe the ZooKeeper community is currently considering
whether to make 3.6 end-of-life themselves, so I would recommend using
Accumulo 2.1.0 with the latest ZooKeeper 3.7 or later to have the best
chance of any kind of support, including JDK 17 support.

As for your specific issues:

1. This is already fixed in 2.1.0
2/3. These issues are likely fixed in newer ZooKeeper versions. I
haven't seen them anytime recently, anyway. Bugs in ZooKeeper itself
are out of scope for the Accumulo developers, but I have tried
building Accumulo 2.1.0 with JDK 17 and ZooKeeper 3.8.0 and haven't
observed any unresolved issues. However, it's difficult to actually
run it because I don't think Hadoop has good JDK 17 support yet. So,
MiniAccumuloCluster seems to work with JDK 17, as does Accumulo and ZK
3.8, but I don't think a full Hadoop cluster would (yet).

On Thu, Dec 8, 2022 at 12:28 PM Vincent Russell
 wrote:
>
> Hello,
>
> We are currently using accumulo 2.0.1.
>
> We are in the process of upgrading our source code to use jdk 17 however we
> are running into some problems with our tests and the MiniAccumuloCluster.
>
> One of our developer encountered the following issues:
>
>1. The MiniAccumumluoClusterImpl._exec is hardcoded with the JVM arg
>-XX:+IUseConcMarkSweepGC, which is no longer tolerated with JDK17.
>2. In Zookeeper 3.4.14, ConetStringParser uses createUnresolved to
>make IPAddresses.  SaslServerPrincipal.WrapperInetSocketAddress.getAddress
>uses InetSocketAddess.getAddress, which returns null because it's not
>resolved, resulting in a failure to connect to the newly-started zookeeper.
>3. StaticHostProvider.getHostString() tries to extract he hostname by
>calling toString on the address and taking everything before the colon, but
>in JDK17, the string format changed to "localhost/:xx" (where
>XX is still the port number).  That's incorrect and it can't resolve the
>names.
>
>
> Has anyone come across/resolved these kinds of issues?  Is it not possible
> to use java17 from a client perspective?  Will upgrading to accumulo 2.1
> help?
>
> Thanks,
> Vincent


jdk 17 and accumulo testing

2022-12-08 Thread Vincent Russell
Hello,

We are currently using accumulo 2.0.1.

We are in the process of upgrading our source code to use jdk 17 however we
are running into some problems with our tests and the MiniAccumuloCluster.

One of our developer encountered the following issues:

   1. The MiniAccumumluoClusterImpl._exec is hardcoded with the JVM arg
   -XX:+IUseConcMarkSweepGC, which is no longer tolerated with JDK17.
   2. In Zookeeper 3.4.14, ConetStringParser uses createUnresolved to
   make IPAddresses.  SaslServerPrincipal.WrapperInetSocketAddress.getAddress
   uses InetSocketAddess.getAddress, which returns null because it's not
   resolved, resulting in a failure to connect to the newly-started zookeeper.
   3. StaticHostProvider.getHostString() tries to extract he hostname by
   calling toString on the address and taking everything before the colon, but
   in JDK17, the string format changed to "localhost/:xx" (where
   XX is still the port number).  That's incorrect and it can't resolve the
   names.


Has anyone come across/resolved these kinds of issues?  Is it not possible
to use java17 from a client perspective?  Will upgrading to accumulo 2.1
help?

Thanks,
Vincent