easyfmxu / concurrentlinkedhashmap

Automatically exported from code.google.com/p/concurrentlinkedhashmap
Apache License 2.0
0 stars 0 forks source link

Version 1.1 was released incorrectly #22

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

Compare the SHA1 in 
http://repo1.maven.org/maven2/com/googlecode/concurrentlinkedhashmap/concurrentl
inkedhashmap-lru/1.1/concurrentlinkedhashmap-lru-1.1.jar.sha1 with the SHA1 in 
http://code.google.com/p/concurrentlinkedhashmap/downloads/detail?name=concurren
tlinkedhashmap-lru-1.1.jar&can=2&q=

What is the expected output? What do you see instead?

They should be the same. They are not.

Please provide any additional information below.

Apparently version 1.1 was released twice. The 1.1 JAR that can be downloaded 
from code.google.com is the result of the second release attempt. The one from 
repo1.maven.org is the result of the first release attempt. This is a big no-no 
with Maven. You cannot release the same non-snapshot version more than once. 
Maven ignores subsequent releases. Even worse, there are actual semantic 
differences 
(http://code.google.com/p/concurrentlinkedhashmap/source/detail?r=494) between 
the first 1.1 release and the second. Maven users will miss out on those 
because the Maven repo did not accept the second release and stuck with the 
first one. 

Could you possibly branch the 1.1 tag and release that as 1.1.1?

Original issue reported on code.google.com by Hannes.S...@gmail.com on 8 Mar 2011 at 8:31

GoogleCodeExporter commented 9 years ago
Ugh. Sorry about that. I tend to fight with Maven and I thought that I had 
actually won a round...

Luckily those changes are basically meaningless and have no impact. I probably 
thought that it hadn't gotten through and retried, optimistically making an 
edit in between.

I'm willing to do the work if that is truly necessary. I'd prefer not to, but 
if its considered important enough then I can give it a shot Friday.

FYI, my goal is to release v1.2 by the end of the month.

Original comment by Ben.Manes@gmail.com on 9 Mar 2011 at 4:01

GoogleCodeExporter commented 9 years ago
Cassandra 0.7.x is currently using the "right" JAR from code.google.com. 
According to 

https://issues.apache.org/jira/browse/CASSANDRA-1851

they will be moving to a Mavenized build with all artifacts coming from a Maven 
repo in which case they would start using the wrong JAR.

I was working on my own Maven packaging of Cassandra 0.7.x but had to postpone 
that task for various reasons. Because of that, this issue is less urgent for 
me. I have doubts though that the changes between the release attempt are 
trivial. Moving from a linked list to an array-based one can have tremendous 
heap and performance impact when the data structure gets large enough which is 
likely in Cassandra. But I may just be spreading FUD here - it's your code and 
you know best what the impact of those changes is.

Original comment by Hannes.S...@gmail.com on 9 Mar 2011 at 10:41

GoogleCodeExporter commented 9 years ago
In this case the LinkedList / ArrayDeque is very short lived and not very large 
(the size is predetermined; 1024 in Cassandra).

So the change was just to take advantage of the array's better behavior in the 
CPU cache. It wouldn't have a noticeable change. I agree, though, that I made a 
mistake when publishing the Maven artifact.

Original comment by Ben.Manes@gmail.com on 9 Mar 2011 at 11:49

GoogleCodeExporter commented 9 years ago
I plan on releasing v1.2 today and will be extra careful to not repeat this 
mistake.

An update by Cassandra to v1.2 would be a reasonable alternative to this 
request.

Please reopen if you disagree.

Original comment by Ben.Manes@gmail.com on 20 May 2011 at 9:39