Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-15453

Upgrade Guava to the same version as master on 3.11 branch

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Triage Needed
    • Normal
    • Resolution: Unresolved
    • None
    • Dependencies
    • None
    • All
    • None

    Description

      Can we backport the Guava version upgrade (CASSANDRA-15248) into 3.11 branch?

      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.

      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 .

      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. 

      Shading?

      Shading makes build process complex. When things go wrong due to this, it's hard to debug (JLBP18).

      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?

      Attachments

        1. cass-3.11-guava-19.0.patch
          6 kB
          Tatu Saloranta
        2. cass-3.11-diff.txt
          6 kB
          Tatu Saloranta

        Activity

          People

            Unassigned Unassigned
            suztomo Tomo Suzuki
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: