Author: slebresne
Date: Thu Dec 22 21:56:00 2011
New Revision: 1222476
URL: http://svn.apache.org/viewvc?rev=1222476&view=rev
Log:
Fix minor issues reported by FindBugs
patch by slebresne; reviewed by jbellis for CASSANDRA-3658
Removed:
cassandra/trunk/src/java/org/apache/cassandra/config/ReplicationStrategy.java
cassandra/trunk/src/java/org/apache/cassandra/net/ProtocolHeader.java
Modified:
cassandra/trunk/CHANGES.txt
cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
cassandra/trunk/src/java/org/apache/cassandra/db/ArrayBackedSortedColumns.java
cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java
cassandra/trunk/src/java/org/apache/cassandra/db/ExpiringColumn.java
cassandra/trunk/src/java/org/apache/cassandra/db/RowIteratorFactory.java
cassandra/trunk/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DynamicCompositeType.java
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
cassandra/trunk/src/java/org/apache/cassandra/dht/LocalToken.java
cassandra/trunk/src/java/org/apache/cassandra/dht/Token.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableLoader.java
cassandra/trunk/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
cassandra/trunk/src/java/org/apache/cassandra/service/AntiEntropyService.java
cassandra/trunk/src/java/org/apache/cassandra/streaming/FileStreamTask.java
cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java
cassandra/trunk/src/java/org/apache/cassandra/utils/FBUtilities.java
cassandra/trunk/src/java/org/apache/cassandra/utils/NodeId.java
Modified: cassandra/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/cassandra/trunk/CHANGES.txt?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/CHANGES.txt (original)
+++ cassandra/trunk/CHANGES.txt Thu Dec 22 21:56:00 2011
@@ -27,6 +27,7 @@
* more efficient allocation of small bloom filters (CASSANDRA-3618)
* Use separate writer thread in SSTableSimpleUnsortedWriter (CASSANDRA-3619)
* fsync the directory after new sstable or commitlog segment are created
(CASSANDRA-3250)
+ * fix minor issues reported by FindBugs (CASSANDRA-3658)
1.0.7
Modified: cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java Thu Dec 22
21:56:00 2011
@@ -913,8 +913,6 @@ public class CliClient
String columnFamily = CliCompiler.getColumnFamily(columnFamilySpec,
keyspacesMap.get(keySpace).cf_defs);
ByteBuffer key = getKeyAsBytes(columnFamily,
columnFamilySpec.getChild(1));
int columnSpecCnt = CliCompiler.numColumnSpecifiers(columnFamilySpec);
- CfDef cfDef = getCfDef(columnFamily);
- boolean isSuper = cfDef.column_type.equals("Super");
byte[] superColumnName = null;
ByteBuffer columnName;
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/ArrayBackedSortedColumns.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ArrayBackedSortedColumns.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/db/ArrayBackedSortedColumns.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/db/ArrayBackedSortedColumns.java
Thu Dec 22 21:56:00 2011
@@ -181,7 +181,7 @@ public class ArrayBackedSortedColumns ex
while (low <= high)
{
mid = (low + high) >> 1;
- if ((result = -compare(get(mid).name(), name)) > 0)
+ if ((result = compare(name, get(mid).name())) > 0)
{
low = mid + 1;
}
Modified: cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java Thu Dec
22 21:56:00 2011
@@ -258,16 +258,19 @@ public class ColumnFamily extends Abstra
return maxTimestamp;
}
+ @Override
public int hashCode()
{
throw new RuntimeException("Not implemented.");
}
+ @Override
public boolean equals(Object o)
{
throw new RuntimeException("Not implemented.");
}
+ @Override
public String toString()
{
StringBuilder sb = new StringBuilder("ColumnFamily(");
Modified: cassandra/trunk/src/java/org/apache/cassandra/db/ExpiringColumn.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ExpiringColumn.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/ExpiringColumn.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/ExpiringColumn.java Thu
Dec 22 21:56:00 2011
@@ -170,4 +170,22 @@ public class ExpiringColumn extends Colu
if (localExpirationTime < 0)
throw new MarshalException("The local expiration time should not
be negative");
}
+
+ @Override
+ public boolean equals(Object o)
+ {
+ // super.equals() returns false if o is not a CounterColumn
+ return super.equals(o)
+ && localExpirationTime == ((ExpiringColumn)o).localExpirationTime
+ && timeToLive == ((ExpiringColumn)o).timeToLive;
+ }
+
+ @Override
+ public int hashCode()
+ {
+ int result = super.hashCode();
+ result = 31 * result + localExpirationTime;
+ result = 31 * result + timeToLive;
+ return result;
+ }
}
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/RowIteratorFactory.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/RowIteratorFactory.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/RowIteratorFactory.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/RowIteratorFactory.java
Thu Dec 22 21:56:00 2011
@@ -90,7 +90,6 @@ public class RowIteratorFactory
iterators.add(scanner);
}
- final Memtable firstMemtable = memtables.iterator().next();
// reduce rows from all sources into a single row
return MergeIterator.get(iterators, COMPARE_BY_KEY, new
MergeIterator.Reducer<IColumnIterator, Row>()
{
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
Thu Dec 22 21:56:00 2011
@@ -35,7 +35,7 @@ public class SizeTieredCompactionStrateg
private static final Logger logger =
LoggerFactory.getLogger(SizeTieredCompactionStrategy.class);
protected static final long DEFAULT_MIN_SSTABLE_SIZE = 50L * 1024L * 1024L;
protected static final String MIN_SSTABLE_SIZE_KEY = "min_sstable_size";
- protected static long minSSTableSize;
+ protected long minSSTableSize;
protected volatile int estimatedRemainingTasks;
public SizeTieredCompactionStrategy(ColumnFamilyStore cfs, Map<String,
String> options)
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java
Thu Dec 22 21:56:00 2011
@@ -97,11 +97,6 @@ public class QueryFilter
{
ColumnFamily curCF = returnCF.cloneMeShallow();
- protected boolean isEqual(IColumn o1, IColumn o2)
- {
- return o1.name().equals(o2.name());
- }
-
public void reduce(IColumn current)
{
if (curCF.isSuper() && curCF.isEmpty())
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
Thu Dec 22 21:56:00 2011
@@ -89,7 +89,7 @@ public abstract class AbstractType<T> im
return 1;
}
- return -AbstractType.this.compare(o1, o2);
+ return AbstractType.this.compare(o2, o1);
}
};
}
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DynamicCompositeType.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DynamicCompositeType.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DynamicCompositeType.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DynamicCompositeType.java
Thu Dec 22 21:56:00 2011
@@ -248,7 +248,7 @@ public class DynamicCompositeType extend
{
int header = 0;
if (isAlias)
- header = 0x8000 | ((byte)comparatorName.charAt(0));
+ header = 0x8000 | (((byte)comparatorName.charAt(0)) & 0xFF);
else
header = comparatorName.length();
putShortLength(bb, header);
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
Thu Dec 22 21:56:00 2011
@@ -69,7 +69,7 @@ public class ReversedType<T> extends Abs
return 1;
}
- return -baseType.compare(o1, o2);
+ return baseType.compare(o2, o1);
}
public String getString(ByteBuffer bytes)
Modified: cassandra/trunk/src/java/org/apache/cassandra/dht/LocalToken.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/dht/LocalToken.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/dht/LocalToken.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/dht/LocalToken.java Thu Dec
22 21:56:00 2011
@@ -24,8 +24,6 @@ import org.apache.cassandra.db.marshal.A
public class LocalToken extends Token<ByteBuffer>
{
- static final long serialVersionUID = 8437543776403014875L;
-
private final AbstractType comparator;
public LocalToken(AbstractType comparator, ByteBuffer token)
Modified: cassandra/trunk/src/java/org/apache/cassandra/dht/Token.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/dht/Token.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/dht/Token.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/dht/Token.java Thu Dec 22
21:56:00 2011
@@ -30,7 +30,7 @@ import org.apache.cassandra.io.ISerializ
import org.apache.cassandra.service.StorageService;
import org.apache.cassandra.utils.ByteBufferUtil;
-public abstract class Token<T> implements RingPosition<Token<T>>, Serializable
+public abstract class Token<T> implements RingPosition<Token<T>>
{
private static final long serialVersionUID = 1L;
Modified:
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
Thu Dec 22 21:56:00 2011
@@ -258,7 +258,7 @@ public class CompressionMetadata
/**
* Holds offset and length of the file chunk
*/
- public class Chunk
+ public static class Chunk
{
public final long offset;
public final int length;
Modified:
cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableLoader.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableLoader.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableLoader.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableLoader.java
Thu Dec 22 21:56:00 2011
@@ -26,6 +26,7 @@ import java.util.*;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import org.apache.cassandra.config.ConfigurationException;
import org.apache.cassandra.dht.IPartitioner;
@@ -165,10 +166,12 @@ public class SSTableLoader
return null;
}
- public Void get(long timeout, TimeUnit unit) throws
InterruptedException
+ public Void get(long timeout, TimeUnit unit) throws
InterruptedException, TimeoutException
{
- latch.await(timeout, unit);
- return null;
+ if (latch.await(timeout, unit))
+ return null;
+ else
+ throw new TimeoutException();
}
public boolean isCancelled()
Modified:
cassandra/trunk/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
Thu Dec 22 21:56:00 2011
@@ -142,9 +142,10 @@ public class PropertyFileSnitch extends
if (key.equals("default"))
{
- defaultDCRack = value.split(":");
- if (defaultDCRack.length < 2)
- defaultDCRack = new String[] { "default", "default" };
+ String[] newDefault = value.split(":");
+ if (newDefault.length < 2)
+ newDefault = new String[] { "default", "default" };
+ defaultDCRack = newDefault;
}
else
{
Modified:
cassandra/trunk/src/java/org/apache/cassandra/service/AntiEntropyService.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/service/AntiEntropyService.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/service/AntiEntropyService.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/service/AntiEntropyService.java
Thu Dec 22 21:56:00 2011
@@ -595,7 +595,7 @@ public class AntiEntropyService
* Triggers repairs with all neighbors for the given table, cfs and range.
* Typical lifecycle is: start() then join(). Executed in client threads.
*/
- class RepairSession extends WrappedRunnable implements
IEndpointStateChangeSubscriber, IFailureDetectionEventListener
+ static class RepairSession extends WrappedRunnable implements
IEndpointStateChangeSubscriber, IFailureDetectionEventListener
{
private final String sessionName;
private final String tablename;
Modified:
cassandra/trunk/src/java/org/apache/cassandra/streaming/FileStreamTask.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/streaming/FileStreamTask.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/streaming/FileStreamTask.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/streaming/FileStreamTask.java
Thu Dec 22 21:56:00 2011
@@ -185,7 +185,7 @@ public class FileStreamTask extends Wrap
assert MessagingService.getBits(msheader, 3, 1) == 0 : "Stream
received before stream reply";
int version = MessagingService.getBits(msheader, 15, 8);
- int totalSize = input.readInt();
+ input.readInt(); // Read total size
String id = input.readUTF();
Header header = Header.serializer().deserialize(input, version);
Modified:
cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java
Thu Dec 22 21:56:00 2011
@@ -24,6 +24,8 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicLongArray;
+import com.google.common.base.Objects;
+
import org.apache.cassandra.io.ISerializer;
public class EstimatedHistogram
@@ -202,6 +204,12 @@ public class EstimatedHistogram
Arrays.equals(getBuckets(false), that.getBuckets(false));
}
+ @Override
+ public int hashCode()
+ {
+ return Objects.hashCode(getBucketOffsets(), getBuckets(false));
+ }
+
public static class EstimatedHistogramSerializer implements
ISerializer<EstimatedHistogram>
{
public void serialize(EstimatedHistogram eh, DataOutput dos) throws
IOException
Modified: cassandra/trunk/src/java/org/apache/cassandra/utils/FBUtilities.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/utils/FBUtilities.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/utils/FBUtilities.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/utils/FBUtilities.java Thu
Dec 22 21:56:00 2011
@@ -414,7 +414,7 @@ public class FBUtilities
// both tokens are on the same side of the wrap point
return o1.compareTo(o2);
}
- return -o1.compareTo(o2);
+ return o2.compareTo(o1);
}
};
Collections.sort(keys, comparator);
Modified: cassandra/trunk/src/java/org/apache/cassandra/utils/NodeId.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/utils/NodeId.java?rev=1222476&r1=1222475&r2=1222476&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/utils/NodeId.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/utils/NodeId.java Thu Dec 22
21:56:00 2011
@@ -25,6 +25,7 @@ import java.util.concurrent.CopyOnWriteA
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.common.base.Objects;
import org.apache.cassandra.db.CounterColumn;
import org.apache.cassandra.db.SystemTable;
@@ -242,6 +243,12 @@ public class NodeId implements Comparabl
return id.equals(otherRecord.id) && timestamp ==
otherRecord.timestamp;
}
+ @Override
+ public int hashCode()
+ {
+ return Objects.hashCode(id, timestamp);
+ }
+
public String toString()
{
return String.format("(%s, %d)", id.toString(), timestamp);