You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Apache Spark (JIRA)" <ji...@apache.org> on 2017/02/10 16:36:41 UTC

[jira] [Assigned] (SPARK-19552) Upgrade Netty version to 4.1.8 final

     [ https://issues.apache.org/jira/browse/SPARK-19552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Apache Spark reassigned SPARK-19552:
------------------------------------

    Assignee: Apache Spark

> Upgrade Netty version to 4.1.8 final
> ------------------------------------
>
>                 Key: SPARK-19552
>                 URL: https://issues.apache.org/jira/browse/SPARK-19552
>             Project: Spark
>          Issue Type: Improvement
>          Components: Build
>    Affects Versions: 2.1.0
>            Reporter: Adam Roberts
>            Assignee: Apache Spark
>            Priority: Minor
>
> Netty 4.1.8 was recently released but isn't API compatible with previous major versions (like Netty 4.0.x), see http://netty.io/news/2017/01/30/4-0-44-Final-4-1-8-Final.html for details.
> This version does include a fix for a security concern - I don't know if Spark can be used as an attack vector so let's upgrade the version we use to be on the safe side. The security fix I'm especially interested in is not available in the 4.0.x release line.
> As this 4.1 version involves API changes we'll need to implement a few methods and possibly adjust the Sasl tests. I'd also like to know the purpose of the additional netty (without "all" in the artifact name) in our pom that's at version 3.9.9.
> This JIRA and associated pull request starts the process which I'll work on - and any help would be much appreciated! Currently I know:
> {code}
> @Override
> public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise)
>       throws Exception {
>       if (!foundEncryptionHandler) {
>         foundEncryptionHandler =
>           ctx.channel().pipeline().get(encryptHandlerName) != null; <-- this returns false and causes test failures
>       }
>       ctx.write(msg, promise);
>     }
> {code}
> Here's what changes will be required (at least):
> {code}
> common/network-common/src/main/java/org/apache/spark/network/crypto/TransportCipher.java{code} requires touch, retain and transferred methods
> {code}
> common/network-common/src/main/java/org/apache/spark/network/sasl/SaslEncryption.java{code} requires the above methods too
> {code}common/network-common/src/test/java/org/apache/spark/network/protocol/MessageWithHeaderSuite.java{code}
> With "dummy" implementations so we can at least compile and test, we'll see five new test failures to address.
> These are
> {code}
> org.apache.spark.network.sasl.SparkSaslSuite.testFileRegionEncryption
> org.apache.spark.network.sasl.SparkSaslSuite.testSaslEncryption
> org.apache.spark.network.shuffle.ExternalShuffleSecuritySuite.testEncryption
> org.apache.spark.rpc.netty.NettyRpcEnvSuite.send with SASL encryption
> org.apache.spark.rpc.netty.NettyRpcEnvSuite.ask with SASL encryption
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org