Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.6.0
    • Fix Version/s: 0.7.0
    • Component/s: None
    • Labels:
      None

      Description

      Support Scala 2.10.

      1. SAMZA-128.1.patch
        4.17 MB
        Chris Riccomini
      2. SAMZA-128.2.patch
        4.17 MB
        Chris Riccomini
      3. scala_210_support.p1
        13 kB
        Dan Di Spaltro

        Activity

        Hide
        dispalt Dan Di Spaltro added a comment - - edited

        Here is my attempt at a fix.

        Edited: Use reviewboard vs attaching a patch.
        https://reviews.apache.org/r/16804/

        Show
        dispalt Dan Di Spaltro added a comment - - edited Here is my attempt at a fix. Edited: Use reviewboard vs attaching a patch. https://reviews.apache.org/r/16804/
        Hide
        criccomini Chris Riccomini added a comment - - edited

        This looks really good. A few comments/questions:

        1. Can you post the diff as a patch here, as well? This is what actually assigns the rights to Apache.
        2. I tried running the tests, but I'm having problems. I did a build of Kafka 2.10, and put the 0.8.1 jars in the samza-kafka/lib directory (named kafka_2.10-0.8.1-SNAPSHOT.jar and kafka_2.10-0.8.1-SNAPSHOT-tes.jar), but Gradle seems to be ignoring them. I get compilation errors when I run `-PscalaVersion=2.10 clean test`. Tests for 2.8.1 and 2.9.2 pass. What are the steps you followed to get the Kafka jars to work for tests?
        3. Should we use scalaLibVersion for the Kafka dependencies in build.gradle instead of scalaVersion? I think this is technically the format that SBT builds.

        Show
        criccomini Chris Riccomini added a comment - - edited This looks really good. A few comments/questions: 1. Can you post the diff as a patch here, as well? This is what actually assigns the rights to Apache. 2. I tried running the tests, but I'm having problems. I did a build of Kafka 2.10, and put the 0.8.1 jars in the samza-kafka/lib directory (named kafka_2.10-0.8.1-SNAPSHOT.jar and kafka_2.10-0.8.1-SNAPSHOT-tes.jar), but Gradle seems to be ignoring them. I get compilation errors when I run `-PscalaVersion=2.10 clean test`. Tests for 2.8.1 and 2.9.2 pass. What are the steps you followed to get the Kafka jars to work for tests? 3. Should we use scalaLibVersion for the Kafka dependencies in build.gradle instead of scalaVersion? I think this is technically the format that SBT builds.
        Hide
        dispalt Dan Di Spaltro added a comment -

        1. Sure
        2. Make sure you copy the artifacts from the kafka "core" project and not the top level artifacts, that tripped me up a bit too. They should be many megabytes.
        3. I think the way I have it is right

        Show
        dispalt Dan Di Spaltro added a comment - 1. Sure 2. Make sure you copy the artifacts from the kafka "core" project and not the top level artifacts, that tripped me up a bit too. They should be many megabytes. 3. I think the way I have it is right
        Hide
        dispalt Dan Di Spaltro added a comment -

        Attached patch for 2.10 support.

        Show
        dispalt Dan Di Spaltro added a comment - Attached patch for 2.10 support.
        Hide
        criccomini Chris Riccomini added a comment -

        Ok! Got it working. Looks like Kafka trunk's API has changed enough to introduce some backwards incompatibility. I had to build the Kafka jars for 2.10 at with checksum ea3961fc84c5a45a5458b9db4080b32f28855f7b. The build commands used were:

        ./sbt clean "++2.10.2 package" ./sbt "++2.10.2 test:package"
        

        Copying the resulting jar files from core made everything work.

        All tests pass. I've updated the patch only to include the properly built jars for 2.10. Everything else should be the same as Dan Di Spaltro's patch.

        +1

        If no one else has objections, I'll commit it.

        Show
        criccomini Chris Riccomini added a comment - Ok! Got it working. Looks like Kafka trunk's API has changed enough to introduce some backwards incompatibility. I had to build the Kafka jars for 2.10 at with checksum ea3961fc84c5a45a5458b9db4080b32f28855f7b. The build commands used were: ./sbt clean "++2.10.2 package" ./sbt "++2.10.2 test:package" Copying the resulting jar files from core made everything work. All tests pass. I've updated the patch only to include the properly built jars for 2.10. Everything else should be the same as Dan Di Spaltro 's patch. +1 If no one else has objections, I'll commit it.
        Hide
        criccomini Chris Riccomini added a comment -

        Updated patch with README.md listing 2.10 as a potential build option.

        Merged and committed.

        Thanks!

        Show
        criccomini Chris Riccomini added a comment - Updated patch with README.md listing 2.10 as a potential build option. Merged and committed. Thanks!

          People

          • Assignee:
            Unassigned
            Reporter:
            dispalt Dan Di Spaltro
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development