cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Connolly (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-1888) Replace lib/high-scale-lib.jar with equivalent from maven central repository
Date Tue, 21 Dec 2010 14:54:02 GMT

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

Stephen Connolly commented on CASSANDRA-1888:
---------------------------------------------

Here is the long answer:

https://github.com/stephenc/high-scale-lib/commit/5c460d6858f552bd9b0c0710c393f1440c1a0c58


Here is the shorter answer

https://github.com/stephenc/high-scale-lib/commit/2d63f18a07e62c62e5e72666a35d36bacbe95798

Here is my summary:
* Improved hash distribution
* Optimized the get(key) to only call key.hashCode() once per get(key)
* Some tweaking of the put logic that escapes me somewhat!
* Added a test case to the test suite

> Replace lib/high-scale-lib.jar with equivalent from maven central repository
> ----------------------------------------------------------------------------
>
>                 Key: CASSANDRA-1888
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1888
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7.0
>            Reporter: Stephen Connolly
>
> As part of my effort to get Cassandra published to Maven Central, there are a number
of libraries which Cassandra depends on but which are not available in Maven Central.
> Perhaps the most interesting of these is the Public Domain high-scale-lib.jar
> The author is an XML build tool hater (and that includes ANT), and the artifact itself
contains a lot of unusual cruft... .CVS folders, etc. The build process uses a build.java,
that effectively is a rewrite of Make in java with the Makefile embedded in the build.java.
> I have rebuilt the artifacts and published them to the Maven Central repository. As part
of the requirements for publishing to Maven Central are to publish a javadoc.jar and a sources.jar
with gpg signatures, etc. It was easier to take the source code and transform it into a Maven
project.  The project is hosted at github: http://stephenc.github.com/high-scale-lib
> I have published the following versions, all signed with by stephenc@apache.org PGP key
> 1.0.0
> 1.0.1
> 1.1.0
> 1.1.1
> 1.1.2
> These should all be equivalent to the releases by Cliff Click, with the only exception
being 1.1.1.
> For 1.1.1 Cliff's original build script did not run the Unit tests correctly, one of
the unit tests consistently fails even on his build process due to an invalid assumption that
element ordering is preserved across serialization for NonBlockingIdentityHashMap. He fixed
the test in 1.1.2, so I back-ported the test change. The code however remains as is.
> In any case, can we change the version of high-scale-lib.jar in the lib directory to
the version from maven central
>   http://repo1.maven.org/maven2/com/github/stephenc/high-scale-lib/high-scale-lib/1.1.1/high-scale-lib-1.1.1.jar
> [The current version used by Cassandra is 1.1.1]
> Or if perhaps even consider upgrading to 1.1.2 [though I can appreciate that this could
be considered riskier]
> My justification for the change is so that I can be sure that consumers of a Maven Central
distribution of Cassandra will have exactly the same dependencies, which have been tested
as part of the Cassandra release process, and not just the "Stephen's very damn sure they
are the same" dependencies ;-) 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message