[
https://issues.apache.org/jira/browse/KNOX-3206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18029531#comment-18029531
]
ASF subversion and git services commented on KNOX-3206:
-------------------------------------------------------
Commit 2c99fe3065de245dd85100a8090d9b2c1604cb2d in knox's branch
refs/heads/master from Sandor Molnar
[ https://gitbox.apache.org/repos/asf?p=knox.git;h=2c99fe306 ]
KNOX-3206 - Include io.netty in Knox's final deliverable (#1094)
> Add netty to Knox as dependency
> -------------------------------
>
> Key: KNOX-3206
> URL: https://issues.apache.org/jira/browse/KNOX-3206
> Project: Apache Knox
> Issue Type: Task
> Components: Server
> Affects Versions: 2.1.0
> Reporter: Sandor Molnar
> Assignee: Sandor Molnar
> Priority: Major
> Fix For: 3.0.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> With a recent change - KNOX-3182 -, all io.netty dependencies have been
> excluded from the final Knox deliverable. As a result, when Ranger
> authorization is enabled in a topology, there are issue when auditing to SOLR
> (using the Knox Ranger plugin) is failing with the following error message:
> {code:java}
> 2025-09-04 14:08:07,167 ERROR provider.BaseAuditHandler
> (BaseAuditHandler.java:logError(359)) - Error sending message to Solr
> java.lang.NoClassDefFoundError: io/netty/channel/ChannelHandler
> at java.lang.Class.forName0(Native Method) ~[?:1.8.0_232]
> at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_232]
> at
> org.apache.zookeeper.ZooKeeper.getClientCnxnSocket(ZooKeeper.java:3094)
> ~[zookeeper.jar:3.8.1.7.3.2.0-516]
> at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:674)
> ~[zookeeper.jar:3.8.1.7.3.2.0-516]
> at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:828)
> ~[zookeeper.jar:3.8.1.7.3.2.0-516]
> at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:511)
> ~[zookeeper.jar:3.8.1.7.3.2.0-516]
> at
> org.apache.solr.common.cloud.SolrZooKeeper.<init>(SolrZooKeeper.java:50)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.common.cloud.ZkClientConnectionStrategy.createSolrZooKeeper(ZkClientConnectionStrategy.java:110)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.common.cloud.DefaultConnectionStrategy.connect(DefaultConnectionStrategy.java:38)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.common.cloud.SolrZkClient.<init>(SolrZkClient.java:172)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.common.cloud.ZkStateReader.<init>(ZkStateReader.java:360)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider.getZkStateReader(ZkClientClusterStateProvider.java:196)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider.connect(ZkClientClusterStateProvider.java:181)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.impl.BaseCloudSolrClient.connect(BaseCloudSolrClient.java:349)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.impl.BaseCloudSolrClient.requestWithRetryOnStaleState(BaseCloudSolrClient.java:876)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.impl.BaseCloudSolrClient.request(BaseCloudSolrClient.java:866)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:214)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:106)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:71)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:85)
> ~[solr-solrj.jar:8.11.2.7.3.2.0-516 7d0451842ce782b3c5a91c7770f00af2fa090b78
> - jenkins - 2025-09-03 08:34:28]
> at
> org.apache.ranger.audit.destination.SolrAuditDestination.lambda$addDocsToSolr$0(SolrAuditDestination.java:515)
> ~[ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at java.security.AccessController.doPrivileged(Native Method)
> ~[?:1.8.0_232]
> at
> org.apache.ranger.audit.destination.SolrAuditDestination.lambda$addDocsToSolr$0(SolrAuditDestination.java:515)
> ~[ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at java.security.AccessController.doPrivileged(Native Method)
> ~[?:1.8.0_232]
> at javax.security.auth.Subject.doAs(Subject.java:422) ~[?:1.8.0_232]
> at
> org.apache.ranger.audit.utils.AbstractKerberosUser.doAs(AbstractKerberosUser.java:147)
> ~[ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at
> org.apache.ranger.audit.utils.KerberosAction.execute(KerberosAction.java:71)
> ~[ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at
> org.apache.ranger.audit.destination.SolrAuditDestination.addDocsToSolr(SolrAuditDestination.java:521)
> ~[ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at
> org.apache.ranger.audit.destination.SolrAuditDestination.log(SolrAuditDestination.java:167)
> [ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at
> org.apache.ranger.audit.queue.AuditBatchQueue.runLogAudit(AuditBatchQueue.java:324)
> [ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at
> org.apache.ranger.audit.queue.AuditBatchQueue.run(AuditBatchQueue.java:233)
> [ranger-plugins-audit-2.6.0.7.3.2.0-516.jar:2.6.0.7.3.2.0-516]
> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_232]
> Caused by: java.lang.ClassNotFoundException: io.netty.channel.ChannelHandler
> at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
> ~[?:1.8.0_232]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
> ~[?:1.8.0_232]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> ~[?:1.8.0_232]
> ... 30 more {code}
> Since Knox already references the {{io.netty}} dependency in its pom.xml
> (current version is {{{}4.1.123.Final{}}}), it's a relatively easy task to
> add the following Netty components in Knox's dep folder:
> * {{netty-common}} → shared utilities (base for all)
> * {{netty-buffer}} → ByteBuf implementation
> * {{netty-transport}} → Channel, EventLoop, and socket APIs
> * {{netty-handler}} → Handlers for SSL, Websocket, HTTP, etc...
> Apart from including these 3 commonly used Netty modules, we should also
> upgrade to {{4.1.127.Final}} to remove all CVEs associated with the currently
> used version.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)