[
https://issues.apache.org/jira/browse/STORM-1537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15141923#comment-15141923
]
P. Taylor Goetz commented on STORM-1537:
----------------------------------------
[~posco]
The API changes aren't too bad:
1. Package names: backtype.storm --> or.apache.storm and storm -->
org.apache.storm
2. Thrift API changes to support rolling upgrades.
The latter might be the biggest issue for you. We can't really help with Heron,
for obvious reasons.
I'd diff storm.thrift against what you have for a better idea.
> Upgrade to Kryo 3
> -----------------
>
> Key: STORM-1537
> URL: https://issues.apache.org/jira/browse/STORM-1537
> Project: Apache Storm
> Issue Type: Improvement
> Reporter: Oscar Boykin
>
> In storm, Kryo (2.21) is used for serialization:
> https://github.com/apache/storm/blob/02a44c7fc1b7b3a1571b326fde7bcae13e1b5c8d/pom.xml#L231
> The user must use the same version storm does, or there will be a java class
> error at runtime.
> Storm depends on a quasi-abandoned library: carbonite:
> https://github.com/apache/storm/blob/02a44c7fc1b7b3a1571b326fde7bcae13e1b5c8d/pom.xml#L210
> which depends on Kryo 2.21 and Twitter chill 0.3.6:
> https://github.com/sritchie/carbonite/blob/master/project.clj#L8
> Chill, currently on 0.7.3, would like to upgrade to Kryo 3.0.3:
> https://github.com/twitter/chill/pull/245
> because Spark, also depending on chill, would like to upgrade for performance
> improvements and bugfixes.
> https://issues.apache.org/jira/browse/SPARK-11416
> Unfortunately, summingbird depends on storm:
> https://github.com/twitter/summingbird/blob/develop/build.sbt#L34
> so, if chill is upgraded, and that gets on the classpath, summingbird will
> break at runtime.
> I propose:
> 1) copy the carbonite code into storm. It is likely the only consumer.
> 2) bump the storm kryo dependency after chill upgrades: recall that storm
> actually depends on chill-java. A dependency that could possibly be removed
> after you pull carbonite in.
> 3) once a new version of storm is published, summingbird (and scalding) can
> upgrade to the latest chill.
> Also, I hope for:
> 4) we as a JVM community get better about classpath isolation and versioning.
> Diamonds like this in one big classpath make large codebases very fragile.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)