You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Tatu Saloranta (Jira)" <ji...@apache.org> on 2021/10/12 17:10:00 UTC

[jira] [Comment Edited] (CASSANDRA-15453) Upgrade Guava to the same version as master on 3.11 branch

    [ https://issues.apache.org/jira/browse/CASSANDRA-15453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17427795#comment-17427795 ] 

Tatu Saloranta edited comment on CASSANDRA-15453 at 10/12/21, 5:09 PM:
-----------------------------------------------------------------------

Diff for patch to use Guava 20.0:  - removed -

EDIT: unfortunately as I noted on CASSANDRA-15248 there is a test dependency that croaks with Guava 20.0 (wrt something called `FutureFallback`), which needs to be tackled separately. Since it's a test failure, not runtime, likely would not affect users but I can't just break tests obviously.

So I will attach a patch for just going to 19.0 first, with fixes for `CharMatcher.DIGIT` and `Futures.transform()`.


was (Author: cowtowncoder):
Diff for patch to use Guava 20.0:  [^cass-3.11-diff.txt]

 

> Upgrade Guava to the same version as master on 3.11 branch
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-15453
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15453
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Dependencies
>            Reporter: Tomo Suzuki
>            Priority: Normal
>         Attachments: cass-3.11-diff.txt
>
>
> Can we backport the Guava version upgrade (CASSANDRA-15248) into 3.11 branch?
> h3. Background
> I'm trying to upgrade Apache Beam's dependencies to latest versions. Apache Beam depends on Cassandra 3 ({{org.apache.cassandra:cassandra-all:3.11.3}}).
> Cassandra 3 touches on Guava's old fields (and potentially methods), such as CharMatcher.DIGIT, are blocking Apache Beam's Guava dependency upgrade (BEAM-8911); the field is removed in Guava 26.0. Because of this, Apache Beam's Guava dependency must be lower than version 26.0.
> I see the latest cassandra-all release on 3.X is 3.11.5, which still relies on Guava 18. This version does not have {{CharMatcher.digit()}}, the replacement of old {{CharMatcher.DIGIT}}. To get rid of {{CharMatcher.DIGIT}} and thus let Apache Beam to use Guava 26 and higher, we need to upgrade Cassandra3's Guava version.
> h4. Test failure Beam's HadoopFormatIOCassandraTest
> Apache Beam's {{:sdks:java:io:hadoop-format}} has {{HadoopFormatIOCassandraTest}} that failed when I tried to upgrade Guava version to 26: https://github.com/GoogleCloudPlatform/cloud-opensource-java/issues/1028#issuecomment-557680928 .
> h3. How about waiting for Cassandra version 4(-alpha)?
> I thought about Cassandra "4", which has a recent version of Guava. However, I believe quite a few Cassandra/Beam users will keep using Casandra 3 for several years. I want such users to be able to use the higher version of Guava. 
> h3. Shading?
> Shading makes build process complex. When things go wrong due to this, it's hard to debug ([JLBP18|https://jlbp.dev/JLBP-18.html]). 
> h3. CASSANDRA-15248 "Upgrade Guava to latest on master branch",
> I found CASSANDRA-15248 "Upgrade Guava to latest on master branch", but this did not go into 3.11 branch. Can we backport this Guava version upgrade (CASSANDRA-15248) into 3.11 branch?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org