Hi list,

Currently, we are skipping the usage of native libraries in Netty as part of 
testing here (1).

In 5.0 branch, we upgraded Netty to 4.1.96 and we brought all native 
dependencies to the class path so they are there in runtime (x86, arm, mac).

I conducted few CI tests for 5.0+ and not having "io.netty.transport.noNative" 
set to "true" introduces no errors. I think we were just too motivated here to 
skip stuff left and right. Having this property enabled seems to have no 
functional effect. Also, one negative side-effect of having this property 
enabled is that it logs exceptions when running in-jvm-dtests e.g. in IDEA and 
it pollutes the logs unnecessarily and it is just a visual clutter to deal with 
every time. To silence this, I set (2) so it skips the logic in (3) completely 
hence no un-necessary logging will occure.

My question is whether we should not remove (4) in 5.0, that means that tests 
will use native libraries too. That also means that we are running tests closer 
to a production environment. I just do not see any reason why we should skip 
this when all tests are just passing with it too with additional benefit of not 
seeing an exception logged every time when testing it locally.

Thanks

(1) 
https://github.com/apache/cassandra-in-jvm-dtest-api/blob/trunk/src/main/java/org/apache/cassandra/distributed/api/ICluster.java#L95-L102
(2) 
https://github.com/apache/cassandra/blob/trunk/test/distributed/org/apache/cassandra/distributed/impl/AbstractCluster.java#L196
(3) 
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/service/NativeTransportService.java#L163
(4) 
https://github.com/apache/cassandra-in-jvm-dtest-api/blob/trunk/src/main/java/org/apache/cassandra/distributed/api/ICluster.java#L101

Reply via email to