[jira] [Assigned] (CASSANDRA-3617) Clean up and optimize Message

2012-03-30 Thread Jonathan Ellis (Assigned) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-3617?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis reassigned CASSANDRA-3617:
-

Assignee: Jonathan Ellis  (was: Yuki Morishita)

> Clean up and optimize Message
> -
>
> Key: CASSANDRA-3617
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3617
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Reporter: Jonathan Ellis
>Assignee: Jonathan Ellis
> Fix For: 1.2
>
>
> The Message class has grown largely by accretion and it shows.  There are 
> several problems:
> - Outbound and inbound messages aren't really the same thing and should not 
> be conflated
> - We pre-serialize message bodies to byte[], then copy those bytes onto the 
> Socket buffer, instead of just keeping a reference to the object being 
> serialized and then writing it out directly to the socket
> - MessagingService versioning is poorly encapsulating, scattering version 
> variables and references to things like CachingMessageProducer across the 
> codebase

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




git commit: Estimate how many keys overlap with other sstables before compacting a single sstable because of high tombstone counts patch by yukim; reviewed by jbellis for CASSANDRA-4022

2012-03-30 Thread jbellis
Updated Branches:
  refs/heads/trunk 98a70bdeb -> 772c4f1a7


Estimate how many keys overlap with other sstables before compacting a single 
sstable because of high tombstone counts
patch by yukim; reviewed by jbellis for CASSANDRA-4022


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/772c4f1a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/772c4f1a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/772c4f1a

Branch: refs/heads/trunk
Commit: 772c4f1a7939e1bf236c5bf3e7bf624f7078c80b
Parents: 98a70bd
Author: Jonathan Ellis 
Authored: Fri Mar 23 11:43:32 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 23:46:05 2012 -0500

--
 .../compaction/SizeTieredCompactionStrategy.java   |   33 +-
 .../apache/cassandra/utils/EstimatedHistogram.java |   25 +++
 .../cassandra/db/compaction/CompactionsTest.java   |9 +---
 .../cassandra/utils/EstimatedHistogramTest.java|   17 
 4 files changed, 74 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/772c4f1a/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java 
b/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
index d6f4025..0eabd08 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
@@ -24,6 +24,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.db.ColumnFamilyStore;
+import org.apache.cassandra.dht.Range;
+import org.apache.cassandra.dht.Token;
 import org.apache.cassandra.io.sstable.SSTable;
 import org.apache.cassandra.io.sstable.SSTableReader;
 import org.apache.cassandra.utils.Pair;
@@ -87,8 +89,34 @@ public class SizeTieredCompactionStrategy extends 
AbstractCompactionStrategy
 {
 for (SSTableReader table : bucket)
 {
-if (table.getEstimatedDroppableTombstoneRatio(gcBefore) > 
tombstoneThreshold)
+double droppableRatio = 
table.getEstimatedDroppableTombstoneRatio(gcBefore);
+if (droppableRatio <= tombstoneThreshold)
+continue;
+
+Set overlaps = 
cfs.getOverlappingSSTables(Collections.singleton(table));
+if (overlaps.isEmpty())
+{
+// there is no overlap, tombstones are safely droppable
 prunedBuckets.add(Collections.singletonList(table));
+}
+else
+{
+// what percentage of columns do we expect to compact 
outside of overlap?
+// first, calculate estimated keys that do not overlap
+long keys = table.estimatedKeys();
+Set> ranges = new HashSet>();
+for (SSTableReader overlap : overlaps)
+ranges.add(new Range(overlap.first.token, 
overlap.last.token));
+long remainingKeys = keys - 
table.estimatedKeysForRanges(ranges);
+// next, calculate what percentage of columns we have 
within those keys
+double remainingKeysRatio = ((double) remainingKeys) / 
keys;
+long columns = 
table.getEstimatedColumnCount().percentile(remainingKeysRatio) * remainingKeys;
+double remainingColumnsRatio = ((double) columns) / 
(table.getEstimatedColumnCount().count() * 
table.getEstimatedColumnCount().mean());
+
+// if we still expect to have droppable tombstones in 
rest of columns, then try compacting it
+if (remainingColumnsRatio * droppableRatio > 
tombstoneThreshold)
+
prunedBuckets.add(Collections.singletonList(table));
+}
 }
 }
 
@@ -127,8 +155,7 @@ public class SizeTieredCompactionStrategy extends 
AbstractCompactionStrategy
 
 public AbstractCompactionTask getUserDefinedTask(Collection 
sstables, final int gcBefore)
 {
-return new CompactionTask(cfs, sstables, gcBefore)
-.isUserDefined(true);
+return new CompactionTask(cfs, sstables, gcBefore).isUserDefined(true);
 }
 
 public int getEstimatedRemainingTasks()

http://git-wip-us.apache.org/repos/asf/cassandra/blob/772c4f1a/src/java/org/apache/cassandra/utils/EstimatedHistogram.java
-

[2/2] git commit: Dsnitch uses 'severity', latency, and time since last reply for scores. Patch by vijay and brandonwilliams, reviewed by vijay for CASSANDRA-3722

2012-03-30 Thread brandonwilliams
Dsnitch uses 'severity', latency, and time since last reply for scores.
Patch by vijay and brandonwilliams, reviewed by vijay for CASSANDRA-3722


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/98a70bde
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/98a70bde
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/98a70bde

Branch: refs/heads/trunk
Commit: 98a70bdebb26955ea629fe3a21212253fc7b7d17
Parents: 08345fa
Author: Brandon Williams 
Authored: Fri Mar 30 16:44:35 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 18:15:50 2012 -0500

--
 .../cassandra/db/compaction/CompactionInfo.java|   21 +++
 .../cassandra/db/compaction/CompactionManager.java |4 ++
 .../org/apache/cassandra/gms/ApplicationState.java |1 +
 src/java/org/apache/cassandra/gms/Gossiper.java|2 +-
 .../org/apache/cassandra/gms/VersionedValue.java   |5 ++
 .../cassandra/locator/DynamicEndpointSnitch.java   |   43 ++-
 .../locator/DynamicEndpointSnitchMBean.java|7 +++
 .../org/apache/cassandra/net/MessagingService.java |6 ++
 .../apache/cassandra/service/StorageService.java   |   23 -
 .../locator/DynamicEndpointSnitchTest.java |   11 -
 10 files changed, 117 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/98a70bde/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
--
diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
index fda8dd3..594b639 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
@@ -21,6 +21,8 @@ import java.io.Serializable;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.cassandra.service.StorageService;
+
 /** Implements serializable to allow structured info to be returned via JMX. */
 public final class CompactionInfo implements Serializable
 {
@@ -103,6 +105,8 @@ public final class CompactionInfo implements Serializable
 {
 private volatile boolean isStopped = false;
 public abstract CompactionInfo getCompactionInfo();
+double load = StorageService.instance.getLoad();
+boolean reportedSeverity = false;
 
 public void stop()
 {
@@ -113,5 +117,22 @@ public final class CompactionInfo implements Serializable
 {
 return isStopped;
 }
+/**
+ * report event on the size of the compaction.
+ */
+public void started()
+{
+reportedSeverity = 
StorageService.instance.reportSeverity(getCompactionInfo().getTotalBytes()/load);
+}
+
+/**
+ * remove the event complete
+ */
+public void finished()
+{
+if (reportedSeverity)
+
StorageService.instance.reportSeverity(-(getCompactionInfo().getTotalBytes()/load));

+reportedSeverity = false;
+}
 }
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/98a70bde/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
--
diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index 848abee..36f05c1 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@ -1017,11 +1017,15 @@ public class CompactionManager implements 
CompactionManagerMBean
 
 public void beginCompaction(CompactionInfo.Holder ci)
 {
+// notify
+ci.started();
 compactions.add(ci);
 }
 
 public void finishCompaction(CompactionInfo.Holder ci)
 {
+// notify
+ci.finished();
 compactions.remove(ci);
 totalBytesCompacted += ci.getCompactionInfo().getTotalBytes();
 totalCompactionsCompleted += 1;

http://git-wip-us.apache.org/repos/asf/cassandra/blob/98a70bde/src/java/org/apache/cassandra/gms/ApplicationState.java
--
diff --git a/src/java/org/apache/cassandra/gms/ApplicationState.java 
b/src/java/org/apache/cassandra/gms/ApplicationState.java
index 48e8d84..4520426 100644
--- a/src/java/org/apache/cassandra/gms/ApplicationState.java
+++ b/src/java/org/apache/cassandra/gms/ApplicationState.java
@@ -28,6 +28,7 @@ public enum ApplicationState
 REMOVAL_COORDINATOR,
 INTERNAL_IP,
 RPC_AD

[1/2] git commit: Expose SP histograms via nodetool. Patch by brandonwilliams, reviewed by vijay for CASSANDRA-3722

2012-03-30 Thread brandonwilliams
Updated Branches:
  refs/heads/trunk d9236e4a9 -> 98a70bdeb


Expose SP histograms via nodetool.
Patch by brandonwilliams, reviewed by vijay for CASSANDRA-3722


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/08345fab
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/08345fab
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/08345fab

Branch: refs/heads/trunk
Commit: 08345fabbc7536051d57ec4cde615704e5426788
Parents: d9236e4
Author: Brandon Williams 
Authored: Fri Mar 30 16:43:43 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 18:15:50 2012 -0500

--
 .../org/apache/cassandra/service/StorageProxy.java |3 +-
 src/java/org/apache/cassandra/tools/NodeCmd.java   |   29 +++
 src/java/org/apache/cassandra/tools/NodeProbe.java |   12 +--
 3 files changed, 40 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/08345fab/src/java/org/apache/cassandra/service/StorageProxy.java
--
diff --git a/src/java/org/apache/cassandra/service/StorageProxy.java 
b/src/java/org/apache/cassandra/service/StorageProxy.java
index b860c3f..63c5481 100644
--- a/src/java/org/apache/cassandra/service/StorageProxy.java
+++ b/src/java/org/apache/cassandra/service/StorageProxy.java
@@ -62,6 +62,7 @@ import org.apache.cassandra.utils.*;
 
 public class StorageProxy implements StorageProxyMBean
 {
+public static final String MBEAN_NAME = 
"org.apache.cassandra.db:type=StorageProxy";
 private static final Logger logger = 
LoggerFactory.getLogger(StorageProxy.class);
 private static final boolean OPTIMIZE_LOCAL_REQUESTS = true; // set to 
false to test messagingservice path on single node
 
@@ -98,7 +99,7 @@ public class StorageProxy implements StorageProxyMBean
 MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
 try
 {
-mbs.registerMBean(new StorageProxy(), new 
ObjectName("org.apache.cassandra.db:type=StorageProxy"));
+mbs.registerMBean(new StorageProxy(), new ObjectName(MBEAN_NAME));
 }
 catch (Exception e)
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/08345fab/src/java/org/apache/cassandra/tools/NodeCmd.java
--
diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java 
b/src/java/org/apache/cassandra/tools/NodeCmd.java
index fa2d210..22a8cad 100644
--- a/src/java/org/apache/cassandra/tools/NodeCmd.java
+++ b/src/java/org/apache/cassandra/tools/NodeCmd.java
@@ -28,6 +28,7 @@ import java.util.Map.Entry;
 import java.util.concurrent.ExecutionException;
 
 import org.apache.cassandra.service.CacheServiceMBean;
+import org.apache.cassandra.service.StorageProxyMBean;
 import org.apache.commons.cli.*;
 
 import org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutorMBean;
@@ -96,6 +97,7 @@ public class NodeCmd
 JOIN,
 MOVE,
 NETSTATS,
+PROXYHISTOGRAMS,
 REBUILD,
 REFRESH,
 REMOVETOKEN,
@@ -134,6 +136,7 @@ public class NodeCmd
 addCmdHelp(header, "cfstats", "Print statistics on column families");
 addCmdHelp(header, "version", "Print cassandra version");
 addCmdHelp(header, "tpstats", "Print usage statistics of thread 
pools");
+addCmdHelp(header, "proxyhistograms", "Print statistic histograms for 
network operations");
 addCmdHelp(header, "drain", "Drain the node (stop accepting writes and 
flush all column families)");
 addCmdHelp(header, "decommission", "Decommission the node");
 addCmdHelp(header, "compactionstats", "Print statistics on 
compactions");
@@ -582,6 +585,27 @@ public class NodeCmd
  (i < ecch.length ? ecch[i] : "")));
 }
 }
+
+private void printProxyHistograms(PrintStream output)
+{
+StorageProxyMBean sp = this.probe.getSpProxy();
+long[] offsets = new EstimatedHistogram().getBucketOffsets();
+long[] rrlh = sp.getRecentReadLatencyHistogramMicros();
+long[] rwlh = sp.getRecentWriteLatencyHistogramMicros();
+long[] rrnglh = sp.getRecentRangeLatencyHistogramMicros();
+
+output.println("proxy histograms");
+output.println(String.format("%-10s%18s%18s%18s",
+"Offset", "Read Latency", "Write Latency", 
"Range Latency"));
+for (int i = 0; i < offsets.length; i++)
+{
+output.println(String.format("%-10d%18s%18s%18s",
+offsets[i],
+(i < rrlh.length ? rrlh[i] : ""),
+(i < rwlh.length ? r

[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Pavel Yaskevich (Commented) (JIRA)

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

Pavel Yaskevich commented on CASSANDRA-4093:


Would users be required to manually set "component_index" at every metadata 
column they have after update to 1.1 or to rephrase that - when users are going 
to be *required* to set "composite_index" field?

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139)
>   at 
> org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046)
>   at 
> org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969)
>   at 
> org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574)
> (seen in trunk)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Vijay (Commented) (JIRA)

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

Vijay commented on CASSANDRA-3722:
--

wfm +1 on both the v5 and nt PROXYHISTOGRAMS 

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt, 
> 3722-v5.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4078) StackOverflowError when upgrading to 1.0.8 from 0.8.10

2012-03-30 Thread Yuki Morishita (Commented) (JIRA)

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

Yuki Morishita commented on CASSANDRA-4078:
---

I don't have a clue about the cause, but since corrupted files are index column 
families, I think work around is to remove all those corrupted index sstables, 
upgrade C*, then rebuild index using 'nodetool rebuild_index'.

> StackOverflowError when upgrading to 1.0.8 from 0.8.10
> --
>
> Key: CASSANDRA-4078
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4078
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.8.10
> Environment: OS: Linux xps.openfin 2.6.35.13-91.fc14.i686 #1 SMP Tue 
> May 3 13:36:36 UTC 2011 i686 i686 i386 GNU/Linux
> Java: JVM vendor/version: Java HotSpot(TM) Server VM/1.6.0_31
>Reporter: Wenjun
>Assignee: paul cannon
>Priority: Critical
> Fix For: 0.8.10
>
> Attachments: 4078.add-asserts.txt, cassandra.yaml.1.0.8, 
> cassandra.yaml.8.10, keycheck.txt, system.log, system.log.0326, 
> system.log.0326-02
>
>
> Hello
> I am trying to upgrade our 1-node setup from 0.8.10 to 1.0.8 and seeing the 
> following exception when starting up 1.0.8.  We have been running 0.8.10 
> without any issues.
>  
> Attached is the entire log file during startup of 1.0.8.  There are 2 
> exceptions:
> 1. StackOverflowError (line 2599)
> 2. InstanceAlreadyExistsException (line 3632)
> I tried "run scrub" under 0.8.10 first, it did not help.  Also, I tried 
> dropping the column family which caused the exception, it just got the same 
> exceptions from another column family.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Issue Comment Edited] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Brandon Williams (Issue Comment Edited) (JIRA)

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

Brandon Williams edited comment on CASSANDRA-3722 at 3/30/12 10:25 PM:
---

bq. is it because the lack of a datapoint, isn't taken into account as slowness?

Exactly.  It's not receiving new data, so the score doesn't change and the dead 
host is still rated the best until the FD removes it as an option, or enough 
TOEs demote it.  Doing it this way, time itself penalizes the host when it 
stops responding.

  was (Author: brandon.williams):
bq. is it because the lack of a datapoint, isn't taken into account as 
slowness?

Exactly.  It's not receiving new data, so the score doesn't change and the dead 
host is still rated the best until the FD removes it as an option.  Doing it 
this way, time itself penalizes the host when it stops responding.
  
> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt, 
> 3722-v5.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Brandon Williams (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-3722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brandon Williams updated CASSANDRA-3722:


Attachment: 3722-v5.txt

v5 does some minor clean up (REPORT renamed to SEVERITY mostly) and fixes the 
dsnitch test so it passes.

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt, 
> 3722-v5.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-3758) parallel compaction hang (on large rows?)

2012-03-30 Thread Jonathan Ellis (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-3758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-3758:
--

Priority: Minor  (was: Major)
Assignee: (was: Sylvain Lebresne)

> parallel compaction hang (on large rows?)
> -
>
> Key: CASSANDRA-3758
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3758
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Jackson Chung
>Priority: Minor
>  Labels: compaction, datastax_qa
> Fix For: 1.0.9
>
> Attachments: 
> 0001-Fix-totalBytes-count-for-ParallelCompactionIterable.txt, 
> cassandra.log.zip
>
>
> it is observed that:
> nodetool -h 127.0.0.1 -p 8080 compactionstats
> pending tasks: 1
> compaction type keyspace column family bytes compacted bytes total progress
> Compaction SyncCoreComputedContactNetworks 119739938 0 n/a
> and that is not moving (ie the bytes compacted never increase, the bytes 
> total stay 0).
> this is probably going to be difficult to reproduce, as the problem is 
> observed when compacting 15 large sstables (total ~300G).
> attaching the thread dumps (along with logs), when such happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Brandon Williams (Commented) (JIRA)

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

Brandon Williams commented on CASSANDRA-3722:
-

bq. is it because the lack of a datapoint, isn't taken into account as slowness?

Exactly.  It's not receiving new data, so the score doesn't change and the dead 
host is still rated the best until the FD removes it as an option.  Doing it 
this way, time itself penalizes the host when it stops responding.

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-3722:
---

Why doesn't dsnitch incorporate this automatically?  is it because the lack of 
a datapoint, isn't taken into account as slowness?

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3125) Move gossip library into a standalone artifact

2012-03-30 Thread Commented

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

Fábio Andrade botelho commented on CASSANDRA-3125:
--

Hi, i am very interested in this project. I have just found out about it, and I 
will start immediately by studying the cassandra codebase starting, in 
particular the gossip portion. I am familiar both with cassandra and gossip at 
a theoretical level - i have read and reported on some papers that covered  
both  subjects on my last semester -  although I have never understand/read 
about the anti-entropy gossip mechanism employed on cassandra. I am going to 
research this immediately.   I am  drawing attention to my interest prematurely 
because I wish to get some pointers/advices on both the subject and project 
respectively. Specifically I am interested in the feasibility of this both as a 
google summer of code project and  also as a first real world project  for me. 
I am currently taking a Master Degree on the University of Lisbon entitled 
Masters in Security Information, but the course has a significant component on 
distributed systems (middleware, security, nosql, fault tolerance, clouds, 
grid). 

> Move gossip library into a standalone artifact 
> ---
>
> Key: CASSANDRA-3125
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3125
> Project: Cassandra
>  Issue Type: Task
>Reporter: Jake Farrell
>Assignee: Jake Farrell
>Priority: Minor
>  Labels: gsoc, gsoc2012, mentor
>
> There has been some talk on the mailing list of people want to use the gossip 
> portion of cassandra in their own applications. The goal for this will be to 
> create a standalone artifact

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4078) StackOverflowError when upgrading to 1.0.8 from 0.8.10

2012-03-30 Thread paul cannon (Commented) (JIRA)

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

paul cannon commented on CASSANDRA-4078:


Ok, so there are definitely out-of-order keys in your sstables. I have no good 
theories as to how that happened- I don't think anyone else has run into this. 
Were you possibly using any sort of custom types or parameterized types with 
0.8.9? Custom anything?

Either way, the thing to be done now is probably to get your data sorted. Maybe 
we can come up with a one-off tool of some kind to read the values and write 
them back out in a sorted way.

> StackOverflowError when upgrading to 1.0.8 from 0.8.10
> --
>
> Key: CASSANDRA-4078
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4078
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.8.10
> Environment: OS: Linux xps.openfin 2.6.35.13-91.fc14.i686 #1 SMP Tue 
> May 3 13:36:36 UTC 2011 i686 i686 i386 GNU/Linux
> Java: JVM vendor/version: Java HotSpot(TM) Server VM/1.6.0_31
>Reporter: Wenjun
>Assignee: paul cannon
>Priority: Critical
> Fix For: 0.8.10
>
> Attachments: 4078.add-asserts.txt, cassandra.yaml.1.0.8, 
> cassandra.yaml.8.10, keycheck.txt, system.log, system.log.0326, 
> system.log.0326-02
>
>
> Hello
> I am trying to upgrade our 1-node setup from 0.8.10 to 1.0.8 and seeing the 
> following exception when starting up 1.0.8.  We have been running 0.8.10 
> without any issues.
>  
> Attached is the entire log file during startup of 1.0.8.  There are 2 
> exceptions:
> 1. StackOverflowError (line 2599)
> 2. InstanceAlreadyExistsException (line 3632)
> I tried "run scrub" under 0.8.10 first, it did not help.  Also, I tried 
> dropping the column family which caused the exception, it just got the same 
> exceptions from another column family.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[3/3] git commit: Respect 1.0 cache settings as much as possible when upgrading Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088

2012-03-30 Thread xedin
Respect 1.0 cache settings as much as possible when upgrading
Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ef50e8f1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ef50e8f1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ef50e8f1

Branch: refs/heads/trunk
Commit: ef50e8f12a81986407351f5b7e3125dab2d4ffa1
Parents: e4e8766
Author: Pavel Yaskevich 
Authored: Fri Mar 30 14:47:44 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:54:46 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5f0db66..efb4ebe 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
  * make loadNewSStable preserve sstable version (CASSANDRA-4077)
+ * Respect 1.0 cache settings as much as possible when upgrading 
(CASSANDRA-4088)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/avro/internode.genavro
--
diff --git a/src/avro/internode.genavro b/src/avro/internode.genavro
index d060d6e..d7ba60f 100644
--- a/src/avro/internode.genavro
+++ b/src/avro/internode.genavro
@@ -70,6 +70,8 @@ protocol InterNode {
 union { null, array } column_aliases = null;
 union { null, bytes } value_alias = null;
 union { double, null } dclocal_read_repair_chance = 0.0;
+union { double, null } row_cache_size;
+union { double, null } key_cache_size;
 }
 
 @aliases(["org.apache.cassandra.config.avro.KsDef"])

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/java/org/apache/cassandra/config/Avro.java
--
diff --git a/src/java/org/apache/cassandra/config/Avro.java 
b/src/java/org/apache/cassandra/config/Avro.java
index 954a6aa..8e0de76 100644
--- a/src/java/org/apache/cassandra/config/Avro.java
+++ b/src/java/org/apache/cassandra/config/Avro.java
@@ -32,6 +32,8 @@ import org.apache.cassandra.locator.NetworkTopologyStrategy;
 import org.apache.cassandra.thrift.IndexType;
 import org.apache.cassandra.utils.ByteBufferUtil;
 
+import static org.apache.cassandra.config.CFMetaData.Caching;
+
 /**
  * methods to load schema definitions from old-style Avro serialization
  */
@@ -71,9 +73,23 @@ public class Avro
 
 int cfsz = ks.cf_defs.size();
 List cfMetaData = new ArrayList(cfsz);
-Iterator cfiter = ks.cf_defs.iterator();
+
 for (CfDef cf_def : ks.cf_defs)
-cfMetaData.add(cfFromAvro(cfiter.next()));
+{
+double keysCached = cf_def.key_cache_size == null ? -1 : 
cf_def.key_cache_size;
+double rowsCached = cf_def.row_cache_size == null ? -1 : 
cf_def.row_cache_size;
+
+if (keysCached > 0 && rowsCached > 0)
+cf_def.caching = Caching.ALL.name();
+else if (keysCached <= 0 && rowsCached <= 0)
+cf_def.caching = Caching.NONE.name();
+else if (keysCached > 0 && rowsCached <= 0)
+cf_def.caching = Caching.KEYS_ONLY.name();
+else
+cf_def.caching = Caching.ROWS_ONLY.name();
+
+cfMetaData.add(cfFromAvro(cf_def));
+}
 
 return new KSMetaData(ks.name.toString(), repStratClass, 
strategyOptions, ks.durable_writes, cfMetaData);
 }



[1/3] git commit: merge from 1.1

2012-03-30 Thread xedin
Updated Branches:
  refs/heads/trunk 760e992ed -> d9236e4a9


merge from 1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d9236e4a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d9236e4a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d9236e4a

Branch: refs/heads/trunk
Commit: d9236e4a92a89395cf88a1ba47cd5b31074c
Parents: 760e992 457e09e
Author: Pavel Yaskevich 
Authored: Fri Mar 30 23:59:32 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:59:32 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d9236e4a/CHANGES.txt
--



[2/3] git commit: merge from 1.1.0

2012-03-30 Thread xedin
merge from 1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/457e09e9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/457e09e9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/457e09e9

Branch: refs/heads/trunk
Commit: 457e09e91396e82520afb5d6727f6616b2c972fc
Parents: cd20c3a ef50e8f
Author: Pavel Yaskevich 
Authored: Fri Mar 30 23:58:04 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:58:04 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/457e09e9/CHANGES.txt
--



[1/2] git commit: merge from 1.1.0

2012-03-30 Thread xedin
Updated Branches:
  refs/heads/cassandra-1.1 cd20c3a63 -> 457e09e91


merge from 1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/457e09e9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/457e09e9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/457e09e9

Branch: refs/heads/cassandra-1.1
Commit: 457e09e91396e82520afb5d6727f6616b2c972fc
Parents: cd20c3a ef50e8f
Author: Pavel Yaskevich 
Authored: Fri Mar 30 23:58:04 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:58:04 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/457e09e9/CHANGES.txt
--



[2/2] git commit: Respect 1.0 cache settings as much as possible when upgrading Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088

2012-03-30 Thread xedin
Respect 1.0 cache settings as much as possible when upgrading
Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ef50e8f1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ef50e8f1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ef50e8f1

Branch: refs/heads/cassandra-1.1
Commit: ef50e8f12a81986407351f5b7e3125dab2d4ffa1
Parents: e4e8766
Author: Pavel Yaskevich 
Authored: Fri Mar 30 14:47:44 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:54:46 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5f0db66..efb4ebe 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
  * make loadNewSStable preserve sstable version (CASSANDRA-4077)
+ * Respect 1.0 cache settings as much as possible when upgrading 
(CASSANDRA-4088)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/avro/internode.genavro
--
diff --git a/src/avro/internode.genavro b/src/avro/internode.genavro
index d060d6e..d7ba60f 100644
--- a/src/avro/internode.genavro
+++ b/src/avro/internode.genavro
@@ -70,6 +70,8 @@ protocol InterNode {
 union { null, array } column_aliases = null;
 union { null, bytes } value_alias = null;
 union { double, null } dclocal_read_repair_chance = 0.0;
+union { double, null } row_cache_size;
+union { double, null } key_cache_size;
 }
 
 @aliases(["org.apache.cassandra.config.avro.KsDef"])

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/java/org/apache/cassandra/config/Avro.java
--
diff --git a/src/java/org/apache/cassandra/config/Avro.java 
b/src/java/org/apache/cassandra/config/Avro.java
index 954a6aa..8e0de76 100644
--- a/src/java/org/apache/cassandra/config/Avro.java
+++ b/src/java/org/apache/cassandra/config/Avro.java
@@ -32,6 +32,8 @@ import org.apache.cassandra.locator.NetworkTopologyStrategy;
 import org.apache.cassandra.thrift.IndexType;
 import org.apache.cassandra.utils.ByteBufferUtil;
 
+import static org.apache.cassandra.config.CFMetaData.Caching;
+
 /**
  * methods to load schema definitions from old-style Avro serialization
  */
@@ -71,9 +73,23 @@ public class Avro
 
 int cfsz = ks.cf_defs.size();
 List cfMetaData = new ArrayList(cfsz);
-Iterator cfiter = ks.cf_defs.iterator();
+
 for (CfDef cf_def : ks.cf_defs)
-cfMetaData.add(cfFromAvro(cfiter.next()));
+{
+double keysCached = cf_def.key_cache_size == null ? -1 : 
cf_def.key_cache_size;
+double rowsCached = cf_def.row_cache_size == null ? -1 : 
cf_def.row_cache_size;
+
+if (keysCached > 0 && rowsCached > 0)
+cf_def.caching = Caching.ALL.name();
+else if (keysCached <= 0 && rowsCached <= 0)
+cf_def.caching = Caching.NONE.name();
+else if (keysCached > 0 && rowsCached <= 0)
+cf_def.caching = Caching.KEYS_ONLY.name();
+else
+cf_def.caching = Caching.ROWS_ONLY.name();
+
+cfMetaData.add(cfFromAvro(cf_def));
+}
 
 return new KSMetaData(ks.name.toString(), repStratClass, 
strategyOptions, ks.durable_writes, cfMetaData);
 }



git commit: Respect 1.0 cache settings as much as possible when upgrading Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088

2012-03-30 Thread xedin
Updated Branches:
  refs/heads/cassandra-1.1.0 e4e87661d -> ef50e8f12


Respect 1.0 cache settings as much as possible when upgrading
Patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4088


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ef50e8f1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ef50e8f1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ef50e8f1

Branch: refs/heads/cassandra-1.1.0
Commit: ef50e8f12a81986407351f5b7e3125dab2d4ffa1
Parents: e4e8766
Author: Pavel Yaskevich 
Authored: Fri Mar 30 14:47:44 2012 +0300
Committer: Pavel Yaskevich 
Committed: Fri Mar 30 23:54:46 2012 +0300

--
 CHANGES.txt|1 +
 src/avro/internode.genavro |2 +
 src/java/org/apache/cassandra/config/Avro.java |   20 +-
 3 files changed, 21 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5f0db66..efb4ebe 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
  * make loadNewSStable preserve sstable version (CASSANDRA-4077)
+ * Respect 1.0 cache settings as much as possible when upgrading 
(CASSANDRA-4088)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/avro/internode.genavro
--
diff --git a/src/avro/internode.genavro b/src/avro/internode.genavro
index d060d6e..d7ba60f 100644
--- a/src/avro/internode.genavro
+++ b/src/avro/internode.genavro
@@ -70,6 +70,8 @@ protocol InterNode {
 union { null, array } column_aliases = null;
 union { null, bytes } value_alias = null;
 union { double, null } dclocal_read_repair_chance = 0.0;
+union { double, null } row_cache_size;
+union { double, null } key_cache_size;
 }
 
 @aliases(["org.apache.cassandra.config.avro.KsDef"])

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef50e8f1/src/java/org/apache/cassandra/config/Avro.java
--
diff --git a/src/java/org/apache/cassandra/config/Avro.java 
b/src/java/org/apache/cassandra/config/Avro.java
index 954a6aa..8e0de76 100644
--- a/src/java/org/apache/cassandra/config/Avro.java
+++ b/src/java/org/apache/cassandra/config/Avro.java
@@ -32,6 +32,8 @@ import org.apache.cassandra.locator.NetworkTopologyStrategy;
 import org.apache.cassandra.thrift.IndexType;
 import org.apache.cassandra.utils.ByteBufferUtil;
 
+import static org.apache.cassandra.config.CFMetaData.Caching;
+
 /**
  * methods to load schema definitions from old-style Avro serialization
  */
@@ -71,9 +73,23 @@ public class Avro
 
 int cfsz = ks.cf_defs.size();
 List cfMetaData = new ArrayList(cfsz);
-Iterator cfiter = ks.cf_defs.iterator();
+
 for (CfDef cf_def : ks.cf_defs)
-cfMetaData.add(cfFromAvro(cfiter.next()));
+{
+double keysCached = cf_def.key_cache_size == null ? -1 : 
cf_def.key_cache_size;
+double rowsCached = cf_def.row_cache_size == null ? -1 : 
cf_def.row_cache_size;
+
+if (keysCached > 0 && rowsCached > 0)
+cf_def.caching = Caching.ALL.name();
+else if (keysCached <= 0 && rowsCached <= 0)
+cf_def.caching = Caching.NONE.name();
+else if (keysCached > 0 && rowsCached <= 0)
+cf_def.caching = Caching.KEYS_ONLY.name();
+else
+cf_def.caching = Caching.ROWS_ONLY.name();
+
+cfMetaData.add(cfFromAvro(cf_def));
+}
 
 return new KSMetaData(ks.name.toString(), repStratClass, 
strategyOptions, ks.durable_writes, cfMetaData);
 }



[jira] [Commented] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Vijay (Commented) (JIRA)

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

Vijay commented on CASSANDRA-3722:
--

Done some testing (single DC) and it works as expected +1 for v4. Thanks!

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4088) Respect 1.0 cache settings as much as possible when upgrading

2012-03-30 Thread Yuki Morishita (Commented) (JIRA)

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

Yuki Morishita commented on CASSANDRA-4088:
---

+1.

I created following tables in 1.0.8:

{noformat}
CREATE TABLE Test1 (key int PRIMARY KEY) WITH row_cache_size = 1 AND 
key_cache_size = 1;
CREATE TABLE Test2 (key int PRIMARY KEY) WITH row_cache_size = 0 AND 
key_cache_size = 0;
CREATE TABLE Test3 (key int PRIMARY KEY) WITH row_cache_size = 1;
CREATE TABLE Test4 (key int PRIMARY KEY) WITH key_cache_size = 1;
CREATE TABLE Test5 (key int PRIMARY KEY);
CREATE TABLE Test6 (key int PRIMARY KEY) WITH row_cache_size = 1 AND 
key_cache_size = 0;
{noformat}

and got following in patched 1.1:

{noformat}
create column family Test1
  ...
  and caching = 'ALL';
create column family Test2
  ...
  and caching = 'NONE';
create column family Test3
  ...
  and caching = 'ALL';
create column family Test4
  ...
  and caching = 'KEYS_ONLY';
create column family Test5
  ...
  and caching = 'KEYS_ONLY';
create column family Test6
  ...
  and caching = 'ROWS_ONLY';
{noformat}

> Respect 1.0 cache settings as much as possible when upgrading
> -
>
> Key: CASSANDRA-4088
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4088
> Project: Cassandra
>  Issue Type: Improvement
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Pavel Yaskevich
> Fix For: 1.1.0
>
> Attachments: CASSANDRA-4088.patch
>
>
> When converting a 1.0 schema to 1.1, we should look at the key and row caches 
> (just whether they are en- or dis-abled) and set the caching setting 
> accordingly.  I think right now upgrading means all your row caching is gone 
> until you update it manually.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4078) StackOverflowError when upgrading to 1.0.8 from 0.8.10

2012-03-30 Thread Wenjun (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Wenjun updated CASSANDRA-4078:
--

Attachment: keycheck.txt

Paul, attache is results from sstablekeys

Thanks

> StackOverflowError when upgrading to 1.0.8 from 0.8.10
> --
>
> Key: CASSANDRA-4078
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4078
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.8.10
> Environment: OS: Linux xps.openfin 2.6.35.13-91.fc14.i686 #1 SMP Tue 
> May 3 13:36:36 UTC 2011 i686 i686 i386 GNU/Linux
> Java: JVM vendor/version: Java HotSpot(TM) Server VM/1.6.0_31
>Reporter: Wenjun
>Assignee: paul cannon
>Priority: Critical
> Fix For: 0.8.10
>
> Attachments: 4078.add-asserts.txt, cassandra.yaml.1.0.8, 
> cassandra.yaml.8.10, keycheck.txt, system.log, system.log.0326, 
> system.log.0326-02
>
>
> Hello
> I am trying to upgrade our 1-node setup from 0.8.10 to 1.0.8 and seeing the 
> following exception when starting up 1.0.8.  We have been running 0.8.10 
> without any issues.
>  
> Attached is the entire log file during startup of 1.0.8.  There are 2 
> exceptions:
> 1. StackOverflowError (line 2599)
> 2. InstanceAlreadyExistsException (line 3632)
> I tried "run scrub" under 0.8.10 first, it did not help.  Also, I tried 
> dropping the column family which caused the exception, it just got the same 
> exceptions from another column family.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[3/6] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread brandonwilliams
Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd20c3a6
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd20c3a6
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd20c3a6

Branch: refs/heads/trunk
Commit: cd20c3a63fd304cda2c44b8bf81f16d9112d86f7
Parents: a40e162 e4e8766
Author: Brandon Williams 
Authored: Fri Mar 30 14:32:05 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:32:05 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--




[4/6] git commit: Restore defaultdict import

2012-03-30 Thread brandonwilliams
Restore defaultdict import


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e4e87661
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e4e87661
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e4e87661

Branch: refs/heads/trunk
Commit: e4e87661d541dcab2c20b581578a6b27fdbfb590
Parents: 41314a2
Author: Brandon Williams 
Authored: Fri Mar 30 14:31:56 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:31:56 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e4e87661/bin/cqlsh
--
diff --git a/bin/cqlsh b/bin/cqlsh
index 2c3d410..118fbac 100755
--- a/bin/cqlsh
+++ b/bin/cqlsh
@@ -39,6 +39,7 @@ from itertools import groupby
 from contextlib import contextmanager
 from glob import glob
 from functools import partial
+from collections import defaultdict
 
 import cmd
 import sys



[1/6] git commit: Merge branch 'cassandra-1.1' into trunk

2012-03-30 Thread brandonwilliams
Updated Branches:
  refs/heads/cassandra-1.1 a40e162ba -> cd20c3a63
  refs/heads/cassandra-1.1.0 41314a21d -> e4e87661d
  refs/heads/trunk 03c3fec4c -> 760e992ed


Merge branch 'cassandra-1.1' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/760e992e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/760e992e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/760e992e

Branch: refs/heads/trunk
Commit: 760e992ed88fe4dbcb04fe4a4c929b3c5e00dc14
Parents: 03c3fec cd20c3a
Author: Brandon Williams 
Authored: Fri Mar 30 14:33:21 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:33:21 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--




[5/6] git commit: Restore defaultdict import

2012-03-30 Thread brandonwilliams
Restore defaultdict import


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e4e87661
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e4e87661
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e4e87661

Branch: refs/heads/cassandra-1.1.0
Commit: e4e87661d541dcab2c20b581578a6b27fdbfb590
Parents: 41314a2
Author: Brandon Williams 
Authored: Fri Mar 30 14:31:56 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:31:56 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e4e87661/bin/cqlsh
--
diff --git a/bin/cqlsh b/bin/cqlsh
index 2c3d410..118fbac 100755
--- a/bin/cqlsh
+++ b/bin/cqlsh
@@ -39,6 +39,7 @@ from itertools import groupby
 from contextlib import contextmanager
 from glob import glob
 from functools import partial
+from collections import defaultdict
 
 import cmd
 import sys



[2/6] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread brandonwilliams
Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd20c3a6
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd20c3a6
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd20c3a6

Branch: refs/heads/cassandra-1.1
Commit: cd20c3a63fd304cda2c44b8bf81f16d9112d86f7
Parents: a40e162 e4e8766
Author: Brandon Williams 
Authored: Fri Mar 30 14:32:05 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:32:05 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--




[6/6] git commit: Restore defaultdict import

2012-03-30 Thread brandonwilliams
Restore defaultdict import


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e4e87661
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e4e87661
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e4e87661

Branch: refs/heads/cassandra-1.1
Commit: e4e87661d541dcab2c20b581578a6b27fdbfb590
Parents: 41314a2
Author: Brandon Williams 
Authored: Fri Mar 30 14:31:56 2012 -0500
Committer: Brandon Williams 
Committed: Fri Mar 30 14:31:56 2012 -0500

--
 bin/cqlsh |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e4e87661/bin/cqlsh
--
diff --git a/bin/cqlsh b/bin/cqlsh
index 2c3d410..118fbac 100755
--- a/bin/cqlsh
+++ b/bin/cqlsh
@@ -39,6 +39,7 @@ from itertools import groupby
 from contextlib import contextmanager
 from glob import glob
 from functools import partial
+from collections import defaultdict
 
 import cmd
 import sys



[jira] [Commented] (CASSANDRA-4078) StackOverflowError when upgrading to 1.0.8 from 0.8.10

2012-03-30 Thread paul cannon (Commented) (JIRA)

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

paul cannon commented on CASSANDRA-4078:


Wenjun- it would help at this point to be sure whether or not your sstables 
really do have keys which are out of order. Could you run the sstablekeys tool 
on the data file for that UserAgreementStatus CF? It looks like it is at 
{{/home/cassandra/var/lib/cassandra/data/Appoji/UserAgreementStatus/Appoji-UserAgreementStatus.userId-g-*-Data.db}}.
 We want to check that the byte sequences are in order:

{noformat}
$ for s in 
/home/cassandra/var/lib/cassandra/data/Appoji/UserAgreementStatus/Appoji-UserAgreementStatus.userId-g-*-{Data,Index}.db;
 do
> echo "checking $s"
> bin/sstablekeys "$s" | sort -c
> done
{noformat}

If that doesn't give any output, then maybe there really is a bug in the 
1.0/1.1 code that we need to look at.

> StackOverflowError when upgrading to 1.0.8 from 0.8.10
> --
>
> Key: CASSANDRA-4078
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4078
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.8.10
> Environment: OS: Linux xps.openfin 2.6.35.13-91.fc14.i686 #1 SMP Tue 
> May 3 13:36:36 UTC 2011 i686 i686 i386 GNU/Linux
> Java: JVM vendor/version: Java HotSpot(TM) Server VM/1.6.0_31
>Reporter: Wenjun
>Assignee: paul cannon
>Priority: Critical
> Fix For: 0.8.10
>
> Attachments: 4078.add-asserts.txt, cassandra.yaml.1.0.8, 
> cassandra.yaml.8.10, system.log, system.log.0326, system.log.0326-02
>
>
> Hello
> I am trying to upgrade our 1-node setup from 0.8.10 to 1.0.8 and seeing the 
> following exception when starting up 1.0.8.  We have been running 0.8.10 
> without any issues.
>  
> Attached is the entire log file during startup of 1.0.8.  There are 2 
> exceptions:
> 1. StackOverflowError (line 2599)
> 2. InstanceAlreadyExistsException (line 3632)
> I tried "run scrub" under 0.8.10 first, it did not help.  Also, I tried 
> dropping the column family which caused the exception, it just got the same 
> exceptions from another column family.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3990) cqlsh support for CQL 3

2012-03-30 Thread paul cannon (Commented) (JIRA)

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

paul cannon commented on CASSANDRA-3990:


bq. So in other words, we will later need to be able to distinguish between 
3.0.0 and 3.1.0.

Meaning there will be C* versions which support both? That seems wrong to me- 
if there's no major version increment, doesn't that mean 3.1.0 has to be 
backwards compatible with 3.0.0?

> cqlsh support for CQL 3
> ---
>
> Key: CASSANDRA-3990
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3990
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: API
>Reporter: Sylvain Lebresne
>Assignee: Eric Evans
>Priority: Minor
> Fix For: 1.1.0
>
> Attachments: v1-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt, 
> v2-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt
>
>
> Cqlsh needs to add support for CQL3. At a minimum, one needs to be able to 
> choose the cql version at launch time.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Resolved] (CASSANDRA-4099) IncomingTCPConnection recognizes from by doing socket.getInetAddress() instead of BroadCastAddress

2012-03-30 Thread Vijay (Resolved) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4099?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vijay resolved CASSANDRA-4099.
--

Resolution: Fixed

Committed back Thanks!

> IncomingTCPConnection recognizes from by doing socket.getInetAddress() 
> instead of BroadCastAddress
> --
>
> Key: CASSANDRA-4099
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4099
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Fix For: 1.0.9, 1.1.0
>
> Attachments: 0001-CASSANDRA-4099-v2.patch, 
> 0001-CASSANDRA-4099-v3.patch, 0001-CASSANDRA-4099-v4.patch, 
> 0001-CASSANDRA-4099.patch
>
>
> change "this.from = socket.getInetAddress()" to understand the broad cast IP, 
> but the problem is we dont know until the first packet is received, this 
> ticket is to work around the problem until it reads the first packet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




git commit: CASSANDRA-4099-reopened patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098 Conflicts: src/java/org/apache/cassandra/net/IncomingTcpConnection.java

2012-03-30 Thread vijay
Updated Branches:
  refs/heads/trunk 6c5b1b663 -> 03c3fec4c


CASSANDRA-4099-reopened
patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098
Conflicts:
src/java/org/apache/cassandra/net/IncomingTcpConnection.java


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/03c3fec4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/03c3fec4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/03c3fec4

Branch: refs/heads/trunk
Commit: 03c3fec4c13e6c3214619efd6263dbd38a77ea90
Parents: 6c5b1b6
Author: Vijay Parthasarathy 
Authored: Fri Mar 30 11:49:31 2012 -0700
Committer: Vijay Parthasarathy 
Committed: Fri Mar 30 11:49:31 2012 -0700

--
 .../cassandra/net/IncomingTcpConnection.java   |   22 +++
 1 files changed, 10 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/03c3fec4/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
--
diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java 
b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
index d7a3de4..4f91b3c 100644
--- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
+++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
@@ -86,20 +86,16 @@ public class IncomingTcpConnection extends Thread
 // we should buffer
 input = new DataInputStream(new 
BufferedInputStream(socket.getInputStream(), 4096));
 // Receive the first message to set the version.
-Message msg = receiveMessage(input, version);
-from = msg.getFrom(); // why? see => CASSANDRA-4099
+from = receiveMessage(input, version); // why? see => 
CASSANDRA-4099
 if (version > MessagingService.current_version)
 {
 // save the endpoint so gossip will reconnect to it
 Gossiper.instance.addSavedEndpoint(from);
 logger.info("Received " + (isStream ? "streaming " : "") + 
"connection from newer protocol version. Ignoring");
+return;
 }
-else if (msg != null)
-{
-Gossiper.instance.setVersion(from, version);
-logger.debug("set version for {} to {}", from, version);
-}
-
+Gossiper.instance.setVersion(from, version);
+logger.debug("set version for {} to {}", from, version);   
 
 // loop to get the next message.
 while (true)
 {
@@ -127,7 +123,7 @@ public class IncomingTcpConnection extends Thread
 }
 }
 
-private Message receiveMessage(DataInputStream input, int version) throws 
IOException
+private InetAddress receiveMessage(DataInputStream input, int version) 
throws IOException
 {
 int totalSize = input.readInt();
 String id = input.readUTF();
@@ -152,10 +148,12 @@ public class IncomingTcpConnection extends Thread
 {
 Message message = new Message(header, body, version);
 MessagingService.instance().receive(message, id);
-return message;
 }
-logger.debug("Received connection from newer protocol version {}. 
Ignoring message", version);
-return null;
+else
+{
+logger.debug("Received connection from newer protocol version {}. 
Ignoring message", version);
+}
+return header.getFrom();
 }
 
 private void close()



git commit: CASSANDRA-4099-reopened patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098

2012-03-30 Thread vijay
Updated Branches:
  refs/heads/cassandra-1.0 4a6531172 -> cec4253ba


CASSANDRA-4099-reopened
patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098

Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cec4253b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cec4253b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cec4253b

Branch: refs/heads/cassandra-1.0
Commit: cec4253ba83be62dff17894442dbd1bb0690aaed
Parents: 4a65311
Author: Vijay Parthasarathy 
Authored: Fri Mar 30 11:42:10 2012 -0700
Committer: Vijay Parthasarathy 
Committed: Fri Mar 30 11:42:10 2012 -0700

--
 .../cassandra/net/IncomingTcpConnection.java   |   21 +++
 1 files changed, 10 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/cec4253b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
--
diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java 
b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
index 47ab39a..a9a5809 100644
--- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
+++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
@@ -92,19 +92,16 @@ public class IncomingTcpConnection extends Thread
 // we should buffer
 input = new DataInputStream(new 
BufferedInputStream(socket.getInputStream(), 4096));
 // Receive the first message to set the version.
-Message msg = receiveMessage(input, version);
-from = msg.getFrom(); // why? see => CASSANDRA-4099
+from = receiveMessage(input, version); // why? see => 
CASSANDRA-4099
 if (version > MessagingService.version_)
 {
 // save the endpoint so gossip will reconnect to it
 Gossiper.instance.addSavedEndpoint(from);
 logger.info("Received " + (isStream ? "streaming " : "") + 
"connection from newer protocol version. Ignoring");
+return;
 }
-else if (msg != null)
-{
-Gossiper.instance.setVersion(from, version);
-logger.debug("set version for {} to {}", from, version);
-}
+Gossiper.instance.setVersion(from, version);
+logger.debug("set version for {} to {}", from, version);
 
 // loop to get the next message.
 while (true)
@@ -133,7 +130,7 @@ public class IncomingTcpConnection extends Thread
 }
 }
 
-private Message receiveMessage(DataInputStream input, int version) throws 
IOException
+private InetAddress receiveMessage(DataInputStream input, int version) 
throws IOException
 {
 int totalSize = input.readInt();
 String id = input.readUTF();
@@ -158,10 +155,12 @@ public class IncomingTcpConnection extends Thread
 {
 Message message = new Message(header, body, version);
 MessagingService.instance().receive(message, id);
-return message;
 }
-logger.debug("Received connection from newer protocol version {}. 
Ignoring message", version);
-return null;
+else
+{
+logger.debug("Received connection from newer protocol version {}. 
Ignoring message", version);
+}
+return header.getFrom();
 }
 
 private void close()



[jira] [Updated] (CASSANDRA-3722) Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.

2012-03-30 Thread Brandon Williams (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-3722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brandon Williams updated CASSANDRA-3722:


Attachment: 3722-v4.txt

I think requests pending just isn't a good measure, especially for a multi-dc 
setup.  Instead what we can do is penalize hosts based on the last time they 
replied, with a cap of the update interval.  This way, if we aren't querying 
cross-dc, that dc is penalized, but within a reasonable limit such that if the 
local reads get bad we'll exceed the threshold and go cross-dc if we have to.  
This seems to respond much better to my torture test of force-suspending a JVM, 
but not long enough for the FD to kick in.

> Send Hints to Dynamic Snitch when Compaction or repair is going on for a node.
> --
>
> Key: CASSANDRA-3722
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3722
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Attachments: 0001-CASSANDRA-3722-A1-V2.patch, 
> 0001-CASSANDRA-3722-A1.patch, 0001-CASSANDRA-3722-v3.patch, 
> 0001-CASSANDRA-3723-A2-Patch.patch, 
> 0001-Expose-SP-latencies-in-nodetool-proxyhistograms.txt, 3722-v4.txt
>
>
> Currently Dynamic snitch looks at the latency for figuring out which node 
> will be better serving the requests, this works great but there is a part of 
> the traffic sent to collect this data... There is also a window when Snitch 
> doesn't know about some major event which are going to happen on the node 
> (Node which is going to receive the data request).
> It would be great if we can send some sort hints to the Snitch so they can 
> score based on known events causing higher latencies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Resolved] (CASSANDRA-3817) Add failure callback interface to streaming

2012-03-30 Thread Yuki Morishita (Resolved) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-3817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yuki Morishita resolved CASSANDRA-3817.
---

Resolution: Duplicate

Closing as Duplicate since attached patch was committed as  part of 
CASSANDRA-4051

> Add failure callback interface to streaming
> ---
>
> Key: CASSANDRA-3817
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3817
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Reporter: Yuki Morishita
>Priority: Minor
>  Labels: streaming
> Attachments: 3817.txt
>
>
> There are several issues (CASSANDRA-3730, CASSANDRA-3776 and such) reported 
> where streaming failure needs to be handled, but currently there is no place 
> to hook the code to handle failure.
> This issue is just for adding callback interface to stream sessions for 
> future fixes.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4051) Stream sessions can only fail via the FailureDetector

2012-03-30 Thread Yuki Morishita (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yuki Morishita updated CASSANDRA-4051:
--

Attachment: 4051-v3.txt

v3 attached for 1.1 branch.

It basically catches IOException on both sides and lets sessions closed.
I also implemented IStreamCallback#onFailure to make sure latches count down to 
avoid process hang.

> Stream sessions can only fail via the FailureDetector
> -
>
> Key: CASSANDRA-4051
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4051
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Brandon Williams
>Assignee: Brandon Williams
>  Labels: streaming
> Fix For: 1.1.0
>
> Attachments: 4051-v2.txt, 4051-v3.txt, 4051.txt
>
>
> If for some reason, FileStreamTask itself fails more than the number of retry 
> attempts but gossip continues to work, the stream session will never be 
> closed.  This is unlikely to happen in practice since it requires blocking 
> the storage port from new connections but keeping the existing ones, however 
> for the bulk loader this is especially problematic since it doesn't have 
> access to a failure detector and thus no way of knowing if a session failed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4092) Allow getting a simple Token->node map over thrift

2012-03-30 Thread Sam Tunnicliffe (Commented) (JIRA)

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

Sam Tunnicliffe commented on CASSANDRA-4092:


Added a new thrift call, describe_token_distribution, which is simpler & less 
invasive than changing describe_ring. Thrift doesn't support function 
overloading, so we'd need to do something like define a new struct to wrap the 
keyspace arg and make it optional, which seemed a bit much really.
The implementation of the new call just delegates to 
StorageService.getTokenToEndpointMap() so its output will include bootstrapping 
nodes as well
as those which have fully joined the ring. I've added a test to the system 
tests which does some minimal validation of the thrift response.

First patch contains the changes to the primary source & thrift idl file, the 
second just the new java generated from the thrift file.

> Allow getting a simple Token->node map over thrift
> --
>
> Key: CASSANDRA-4092
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4092
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: Nick Bailey
> Fix For: 1.1.1
>
> Attachments: 
> v1-0001-CASSANDRA-4092-New-thrift-call-to-get-simple-token-nod.txt, 
> v1-0002-CASSANDRA-4092-New-generated-java-following-change-to-.txt
>
>
> Right now the thrift describe_ring call is intended to be used to determine 
> ownership for a keyspace. It can also (and often is) be used by clients to 
> just get a view of what the ring looks like. Since it requires a keyspace as 
> an argument though, it can sometimes be impossible to see what the ring looks 
> like. For example, in a 2 DC/2 node ring where keyspace X exists only dc1. 
> The results of 'describe_ring X' would look something like (with tokens 0 and 
> 10):
> {noformat}
> {[0,10]: [node0], [10,0]: [node0]}
> {noformat}
> This is indicating that node0 owns everything for that keyspace since it only 
> exists in 1 datacenter. From this output though it is impossible to tell 
> which token (0 or 10) node0 owns, as well as what the other node in the 
> cluster is.
> There are two options here. 
> * Allow running describe_ring with no parameters to get a view of token->ip 
> without taking replication into consideration.
> * Add a new thrift call to achieve this.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4092) Allow getting a simple Token->node map over thrift

2012-03-30 Thread Sam Tunnicliffe (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sam Tunnicliffe updated CASSANDRA-4092:
---

Attachment: 
v1-0002-CASSANDRA-4092-New-generated-java-following-change-to-.txt

v1-0001-CASSANDRA-4092-New-thrift-call-to-get-simple-token-nod.txt

> Allow getting a simple Token->node map over thrift
> --
>
> Key: CASSANDRA-4092
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4092
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: Nick Bailey
> Fix For: 1.1.1
>
> Attachments: 
> v1-0001-CASSANDRA-4092-New-thrift-call-to-get-simple-token-nod.txt, 
> v1-0002-CASSANDRA-4092-New-generated-java-following-change-to-.txt
>
>
> Right now the thrift describe_ring call is intended to be used to determine 
> ownership for a keyspace. It can also (and often is) be used by clients to 
> just get a view of what the ring looks like. Since it requires a keyspace as 
> an argument though, it can sometimes be impossible to see what the ring looks 
> like. For example, in a 2 DC/2 node ring where keyspace X exists only dc1. 
> The results of 'describe_ring X' would look something like (with tokens 0 and 
> 10):
> {noformat}
> {[0,10]: [node0], [10,0]: [node0]}
> {noformat}
> This is indicating that node0 owns everything for that keyspace since it only 
> exists in 1 datacenter. From this output though it is impossible to tell 
> which token (0 or 10) node0 owns, as well as what the other node in the 
> cluster is.
> There are two options here. 
> * Allow running describe_ring with no parameters to get a view of token->ip 
> without taking replication into consideration.
> * Add a new thrift call to achieve this.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Dave Brosius (Commented) (JIRA)

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

Dave Brosius commented on CASSANDRA-4093:
-

>> Ask users@ if anyone actually has such a use case in production, and go with 
>> 1 or 2 based on the responses

This makes sense to me... it's possible that this isn't really an issue.

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139)
>   at 
> org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046)
>   at 
> org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969)
>   at 
> org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574)
> (seen in trunk)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3990) cqlsh support for CQL 3

2012-03-30 Thread Sylvain Lebresne (Commented) (JIRA)

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

Sylvain Lebresne commented on CASSANDRA-3990:
-

Some part of me tell me that this may prove limiting. I've actually bothered 
implementing the semantic versioning server side, so that when for instance 
when we have cql 3.1.0, if the client asked for 3.1.0 but the server is an old 
one that only support 3.0.0, an error is returned. So in other words, we will 
later need to be able to distinguish between 3.0.0 and 3.1.0. Feels like adding 
a specific flag each time will prove limiting or tedious to upgrade. I'm not 
sure if that would really matter for cqlsh but just figured I'd mention it.

Maybe we could still have the option of setting whatever version we want, but 
then have --cql2 and --cql3 shortcuts that would refer to the more recent known 
version for instance.


> cqlsh support for CQL 3
> ---
>
> Key: CASSANDRA-3990
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3990
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: API
>Reporter: Sylvain Lebresne
>Assignee: Eric Evans
>Priority: Minor
> Fix For: 1.1.0
>
> Attachments: v1-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt, 
> v2-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt
>
>
> Cqlsh needs to add support for CQL3. At a minimum, one needs to be able to 
> choose the cql version at launch time.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3990) cqlsh support for CQL 3

2012-03-30 Thread paul cannon (Commented) (JIRA)

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

paul cannon commented on CASSANDRA-3990:


You mean, a --cql2/-2 flag that's on by default for now, but can be used in a 
forward-compatible way as long as cql2 is supported?  I like that idea.

> cqlsh support for CQL 3
> ---
>
> Key: CASSANDRA-3990
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3990
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: API
>Reporter: Sylvain Lebresne
>Assignee: Eric Evans
>Priority: Minor
> Fix For: 1.1.0
>
> Attachments: v1-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt, 
> v2-0001-CASSANDRA-3990-cqlsh-support-for-CQL-3.txt
>
>
> Cqlsh needs to add support for CQL3. At a minimum, one needs to be able to 
> choose the cql version at launch time.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Sylvain Lebresne (Commented) (JIRA)

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

Sylvain Lebresne commented on CASSANDRA-4093:
-

bq. The thing about backwards-compatibility hacks is you tend to get stuck with 
them.

I suppose it depends of ones own definition of a hack, but I really don't 
consider this patch as a hack. As soon as we consider CT to be first class 
citizen, adding the ability to specify to which component a ColumnDefinition 
applies (which is all the patch does) feels like a rather natural extension to 
me. And as said, if we decide to allow secondary indexes on any component of a 
CT, which I though was something we wanted ultimately, we'll have to add that 
componentIndex information. So breaking compatibility to avoid adding a simple 
info to ColumnDefinition that we'll very likely end up adding anyway later 
feels like the wrong choice to me.

bq. We've made huge strides towards simplifying this in CQL3 and composite PKs. 
I don't think we can afford to dilute this with footnotes about how you can 
escape hatch back to the old world

I don't understand. As of the attached patch, there is 0 footnotes to add to 
CQL3. Currently it's pretty much *exclusively* a thrift backward-compatibility 
patch. If you're referring to me saying that we could later consider allowing 
index on a full composite in CQL3, then I'm sorry, let's forget about that for 
now. This patch does not force us at all to do that.

bq. dragging in all our old legacy baggage again. Put another way: it's time to 
bury "wtf is a supercolumn" once and for all.

I don't understand what you're referring to. Again, what this patch does is 
recognizing that CT are now first class citizen and thus that it makes sense 
that a ColumnDefinition may refer to any of the component. And while it is true 
that we don't *yet* use that generalization, it *trivially* allows us to 
support backward compatibility for thrift, hence the idea of doing that 
generalization now. I don't see where this patch drag *any* old legacy baggage 
so I'd love to get more precision on what you're referring to exactly. 

bq. Of our hundreds of deployments of 0.8 and 1.0, I can live with one or two 
needing to wait for 1.1.2 or whatever to upgrade.

But that is *not* what will happen. Anyone that use an index on a CT currently 
won't be able to upgrade *ever*. Because their index will just be not be 
supported anymore. If they upgrade, C* will crash. Seriously, they will be 
completely screwed. Their only option will be some complex manual data model 
migration which will be impossible to do without any downtime for the 
application (since no version will both support their existing index *and* the 
new possibly-introduced-in-1.2 indexing of the the last component of a CT).

bq. TLDR: backwards compatibility in this specific case is high cost, low 
benefit.

I couldn't disagree more. I still don't see what this high cost is. I wrote the 
patch and I just don't see at all the high cost. The patch is fairly trivial 
(it's not small in size but for a good part because it include thrift generated 
code) and has barely any user side visibility. More precisely, the only 
visibility it has is on the thrift side, and even then it's an optional field 
whose default is the right one for the thrift side. On the other side, the 
benefit is huge imo because it means we don't screw up the people that use C* 
in original ways.

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.a

[15/16] git commit: Fix intermittent NPE in get_slice

2012-03-30 Thread jbellis
Fix intermittent NPE in get_slice

patch by jbellis; reviewed by vijay for CASSANDRA-4095


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5cde93d9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5cde93d9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5cde93d9

Branch: refs/heads/trunk
Commit: 5cde93d9607ddbdb5316afaa2be9b9132d1bec3f
Parents: 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:22:59 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:22:59 2012 +0200

--
 CHANGES.txt|3 ++-
 src/java/org/apache/cassandra/db/Row.java  |5 +
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 438bc91..bf1a34f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,7 +15,8 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
- * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix intermittent NPE in get_slice (CASSANDRA-4095)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/Row.java
--
diff --git a/src/java/org/apache/cassandra/db/Row.java 
b/src/java/org/apache/cassandra/db/Row.java
index 523f501..71a7332 100644
--- a/src/java/org/apache/cassandra/db/Row.java
+++ b/src/java/org/apache/cassandra/db/Row.java
@@ -45,6 +45,11 @@ public class Row
 this.cf = cf;
 }
 
+public int getLiveColumnCount()
+{
+return cf == null ? 0 : cf.getLiveColumnCount();
+}
+
 @Override
 public String toString()
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
--
diff --git a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java 
b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
index 4ea89b6..be73472 100644
--- a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
+++ b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
@@ -73,7 +73,7 @@ public class SliceFromReadCommand extends ReadCommand
 public ReadCommand maybeGenerateRetryCommand(RepairCallback handler, Row 
row)
 {
 int maxLiveColumns = handler.getMaxLiveColumns();
-int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
+int liveColumnsInRow = row != null ? row.getLiveColumnCount() : 0;
 
 assert maxLiveColumns <= count;
 // We generate a retry if at least one node reply with count live 
columns but after merge we have less



[16/16] git commit: Fix intermittent NPE in get_slice

2012-03-30 Thread jbellis
Fix intermittent NPE in get_slice

patch by jbellis; reviewed by vijay for CASSANDRA-4095


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5cde93d9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5cde93d9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5cde93d9

Branch: refs/heads/cassandra-1.1
Commit: 5cde93d9607ddbdb5316afaa2be9b9132d1bec3f
Parents: 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:22:59 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:22:59 2012 +0200

--
 CHANGES.txt|3 ++-
 src/java/org/apache/cassandra/db/Row.java  |5 +
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 438bc91..bf1a34f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,7 +15,8 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
- * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix intermittent NPE in get_slice (CASSANDRA-4095)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/Row.java
--
diff --git a/src/java/org/apache/cassandra/db/Row.java 
b/src/java/org/apache/cassandra/db/Row.java
index 523f501..71a7332 100644
--- a/src/java/org/apache/cassandra/db/Row.java
+++ b/src/java/org/apache/cassandra/db/Row.java
@@ -45,6 +45,11 @@ public class Row
 this.cf = cf;
 }
 
+public int getLiveColumnCount()
+{
+return cf == null ? 0 : cf.getLiveColumnCount();
+}
+
 @Override
 public String toString()
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
--
diff --git a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java 
b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
index 4ea89b6..be73472 100644
--- a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
+++ b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
@@ -73,7 +73,7 @@ public class SliceFromReadCommand extends ReadCommand
 public ReadCommand maybeGenerateRetryCommand(RepairCallback handler, Row 
row)
 {
 int maxLiveColumns = handler.getMaxLiveColumns();
-int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
+int liveColumnsInRow = row != null ? row.getLiveColumnCount() : 0;
 
 assert maxLiveColumns <= count;
 // We generate a retry if at least one node reply with count live 
columns but after merge we have less



[13/16] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9ad9c247
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9ad9c247
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9ad9c247

Branch: refs/heads/trunk
Commit: 9ad9c2475f4c1749056ad43dc8c49f35d54ab2bb
Parents: adc0931 5cde93d
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:24:33 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:24:33 2012 +0200

--
 CHANGES.txt|3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9ad9c247/CHANGES.txt
--
diff --cc CHANGES.txt
index 00848f6,bf1a34f..827c0c4
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -50,97 -15,10 +50,98 @@@ Merged from 1.0
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
   * allow custom types in CLI's assume command (CASSANDRA-4081)
-  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix intermittent NPE in get_slice (CASSANDRA-4095)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix ClassCastException during hinted handoff (CASSANDRA-3694)
 + * Upgrade Thrift to 0.7 (

[12/16] git commit: Make loadNewSSTable preserve sstable version

2012-03-30 Thread jbellis
Make loadNewSSTable preserve sstable version

patch by slebresne; reviewed by jbellis for CASSANDRA-4077


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e5a324e3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e5a324e3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e5a324e3

Branch: refs/heads/trunk
Commit: e5a324e31e0da3e5e57d3bd87e06f20aaf108a3d
Parents: 9ad9c24
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:31:51 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:31:51 2012 +0200

--
 CHANGES.txt|1 +
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 2 files changed, 3 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 827c0c4..df13658 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,7 @@
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
+ * make loadNewSStable preserve sstable version (CASSANDRA-4077)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0fc7604..4ab9eba 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -469,7 +469,8 @@ public class ColumnFamilyStore implements 
ColumnFamilyStoreMBean
  
Descriptor.CURRENT_VERSION,
  descriptor));
 
-Descriptor newDescriptor = new Descriptor(descriptor.directory,
+Descriptor newDescriptor = new Descriptor(descriptor.version,
+  descriptor.directory,
   descriptor.ksname,
   descriptor.cfname,
   
fileIndexGenerator.incrementAndGet(),



[14/16] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9ad9c247
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9ad9c247
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9ad9c247

Branch: refs/heads/cassandra-1.1
Commit: 9ad9c2475f4c1749056ad43dc8c49f35d54ab2bb
Parents: adc0931 5cde93d
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:24:33 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:24:33 2012 +0200

--
 CHANGES.txt|3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9ad9c247/CHANGES.txt
--
diff --cc CHANGES.txt
index 00848f6,bf1a34f..827c0c4
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -50,97 -15,10 +50,98 @@@ Merged from 1.0
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
   * allow custom types in CLI's assume command (CASSANDRA-4081)
-  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix intermittent NPE in get_slice (CASSANDRA-4095)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix ClassCastException during hinted handoff (CASSANDRA-3694)
 + * Upgrade Thrift 

[6/16] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/41314a21
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/41314a21
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/41314a21

Branch: refs/heads/cassandra-1.1
Commit: 41314a21dcadfdae59a8f31c71f09700bf9b0233
Parents: e5a324e 4a65311
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:08 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:08 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/41314a21/CHANGES.txt
--
diff --cc CHANGES.txt
index df13658,e81f2bb..5f0db66
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -53,96 -17,9 +53,97 @@@ Merged from 1.0
   * allow custom types in CLI's assume command (CASSANDRA-4081)
   * fix totalBytes count for parallel compactions (CASSANDRA-3758)
   * fix intermittent NPE in get_slice (CASSANDRA-4095)
+  * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix ClassCastException during hinted handoff (CASSANDRA-3694)
 + * Upgrade Thrift to 0.7 (CASSANDRA-3213)
 + * Make stress.java insert operation to use microseconds (CASSANDRA-3725)
 + *

[9/16] git commit: remove unnecessary asserts in native code interfaces patch by jbellis; reviewed by pschuller for CASSANDRA-4096

2012-03-30 Thread jbellis
remove unnecessary asserts in native code interfaces
patch by jbellis; reviewed by pschuller for CASSANDRA-4096


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4a653117
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4a653117
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4a653117

Branch: refs/heads/cassandra-1.1
Commit: 4a6531172c7d142e199f198e275942b7952c80f7
Parents: 5cde93d
Author: Jonathan Ellis 
Authored: Fri Mar 30 10:41:32 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 10:41:32 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index bf1a34f..e81f2bb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -17,6 +17,7 @@
  * allow custom types in CLI's assume command (CASSANDRA-4081)
  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
  * fix intermittent NPE in get_slice (CASSANDRA-4095)
+ * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/src/java/org/apache/cassandra/utils/CLibrary.java
--
diff --git a/src/java/org/apache/cassandra/utils/CLibrary.java 
b/src/java/org/apache/cassandra/utils/CLibrary.java
index 090a355..6270d8c 100644
--- a/src/java/org/apache/cassandra/utils/CLibrary.java
+++ b/src/java/org/apache/cassandra/utils/CLibrary.java
@@ -105,8 +105,7 @@ public final class CLibrary
 {
 try
 {
-int result = mlockall(MCL_CURRENT);
-assert result == 0; // mlockall should always be zero on success
+mlockall(MCL_CURRENT);
 logger.info("JNA mlockall successful");
 }
 catch (UnsatisfiedLinkError e)
@@ -143,8 +142,7 @@ public final class CLibrary
 {
 try
 {
-int result = link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
-assert result == 0; // success is always zero
+link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
 }
 catch (UnsatisfiedLinkError e)
 {
@@ -242,12 +240,12 @@ public final class CLibrary
 
 public static int tryFcntl(int fd, int command, int flags)
 {
+// fcntl return value may or may not be useful, depending on the 
command
 int result = -1;
 
 try
 {
 result = CLibrary.fcntl(fd, command, flags);
-assert result >= 0; // on error a value of -1 is returned and 
errno is set to indicate the error.
 }
 catch (RuntimeException e)
 {



[10/16] git commit: remove unnecessary asserts in native code interfaces patch by jbellis; reviewed by pschuller for CASSANDRA-4096

2012-03-30 Thread jbellis
remove unnecessary asserts in native code interfaces
patch by jbellis; reviewed by pschuller for CASSANDRA-4096


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4a653117
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4a653117
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4a653117

Branch: refs/heads/trunk
Commit: 4a6531172c7d142e199f198e275942b7952c80f7
Parents: 5cde93d
Author: Jonathan Ellis 
Authored: Fri Mar 30 10:41:32 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 10:41:32 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index bf1a34f..e81f2bb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -17,6 +17,7 @@
  * allow custom types in CLI's assume command (CASSANDRA-4081)
  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
  * fix intermittent NPE in get_slice (CASSANDRA-4095)
+ * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/src/java/org/apache/cassandra/utils/CLibrary.java
--
diff --git a/src/java/org/apache/cassandra/utils/CLibrary.java 
b/src/java/org/apache/cassandra/utils/CLibrary.java
index 090a355..6270d8c 100644
--- a/src/java/org/apache/cassandra/utils/CLibrary.java
+++ b/src/java/org/apache/cassandra/utils/CLibrary.java
@@ -105,8 +105,7 @@ public final class CLibrary
 {
 try
 {
-int result = mlockall(MCL_CURRENT);
-assert result == 0; // mlockall should always be zero on success
+mlockall(MCL_CURRENT);
 logger.info("JNA mlockall successful");
 }
 catch (UnsatisfiedLinkError e)
@@ -143,8 +142,7 @@ public final class CLibrary
 {
 try
 {
-int result = link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
-assert result == 0; // success is always zero
+link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
 }
 catch (UnsatisfiedLinkError e)
 {
@@ -242,12 +240,12 @@ public final class CLibrary
 
 public static int tryFcntl(int fd, int command, int flags)
 {
+// fcntl return value may or may not be useful, depending on the 
command
 int result = -1;
 
 try
 {
 result = CLibrary.fcntl(fd, command, flags);
-assert result >= 0; // on error a value of -1 is returned and 
errno is set to indicate the error.
 }
 catch (RuntimeException e)
 {



[11/16] git commit: Make loadNewSSTable preserve sstable version

2012-03-30 Thread jbellis
Make loadNewSSTable preserve sstable version

patch by slebresne; reviewed by jbellis for CASSANDRA-4077


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e5a324e3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e5a324e3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e5a324e3

Branch: refs/heads/cassandra-1.1
Commit: e5a324e31e0da3e5e57d3bd87e06f20aaf108a3d
Parents: 9ad9c24
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:31:51 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:31:51 2012 +0200

--
 CHANGES.txt|1 +
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 2 files changed, 3 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 827c0c4..df13658 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,7 @@
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
+ * make loadNewSStable preserve sstable version (CASSANDRA-4077)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0fc7604..4ab9eba 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -469,7 +469,8 @@ public class ColumnFamilyStore implements 
ColumnFamilyStoreMBean
  
Descriptor.CURRENT_VERSION,
  descriptor));
 
-Descriptor newDescriptor = new Descriptor(descriptor.directory,
+Descriptor newDescriptor = new Descriptor(descriptor.version,
+  descriptor.directory,
   descriptor.ksname,
   descriptor.cfname,
   
fileIndexGenerator.incrementAndGet(),



[2/16] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a40e162b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a40e162b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a40e162b

Branch: refs/heads/trunk
Commit: a40e162ba891de94a2a2e7d442019032edf370ed
Parents: 7935448 41314a2
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:29 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:29 2012 -0500

--
 CHANGES.txt|5 -
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 src/java/org/apache/cassandra/utils/CLibrary.java  |8 +++-
 4 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/a40e162b/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/a40e162b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--



[3/16] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a40e162b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a40e162b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a40e162b

Branch: refs/heads/cassandra-1.1
Commit: a40e162ba891de94a2a2e7d442019032edf370ed
Parents: 7935448 41314a2
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:29 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:29 2012 -0500

--
 CHANGES.txt|5 -
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 src/java/org/apache/cassandra/utils/CLibrary.java  |8 +++-
 4 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/a40e162b/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/a40e162b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--



[8/16] git commit: remove unnecessary asserts in native code interfaces patch by jbellis; reviewed by pschuller for CASSANDRA-4096

2012-03-30 Thread jbellis
remove unnecessary asserts in native code interfaces
patch by jbellis; reviewed by pschuller for CASSANDRA-4096


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4a653117
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4a653117
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4a653117

Branch: refs/heads/cassandra-1.0
Commit: 4a6531172c7d142e199f198e275942b7952c80f7
Parents: 5cde93d
Author: Jonathan Ellis 
Authored: Fri Mar 30 10:41:32 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 10:41:32 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index bf1a34f..e81f2bb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -17,6 +17,7 @@
  * allow custom types in CLI's assume command (CASSANDRA-4081)
  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
  * fix intermittent NPE in get_slice (CASSANDRA-4095)
+ * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/src/java/org/apache/cassandra/utils/CLibrary.java
--
diff --git a/src/java/org/apache/cassandra/utils/CLibrary.java 
b/src/java/org/apache/cassandra/utils/CLibrary.java
index 090a355..6270d8c 100644
--- a/src/java/org/apache/cassandra/utils/CLibrary.java
+++ b/src/java/org/apache/cassandra/utils/CLibrary.java
@@ -105,8 +105,7 @@ public final class CLibrary
 {
 try
 {
-int result = mlockall(MCL_CURRENT);
-assert result == 0; // mlockall should always be zero on success
+mlockall(MCL_CURRENT);
 logger.info("JNA mlockall successful");
 }
 catch (UnsatisfiedLinkError e)
@@ -143,8 +142,7 @@ public final class CLibrary
 {
 try
 {
-int result = link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
-assert result == 0; // success is always zero
+link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
 }
 catch (UnsatisfiedLinkError e)
 {
@@ -242,12 +240,12 @@ public final class CLibrary
 
 public static int tryFcntl(int fd, int command, int flags)
 {
+// fcntl return value may or may not be useful, depending on the 
command
 int result = -1;
 
 try
 {
 result = CLibrary.fcntl(fd, command, flags);
-assert result >= 0; // on error a value of -1 is returned and 
errno is set to indicate the error.
 }
 catch (RuntimeException e)
 {



[5/16] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/41314a21
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/41314a21
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/41314a21

Branch: refs/heads/trunk
Commit: 41314a21dcadfdae59a8f31c71f09700bf9b0233
Parents: e5a324e 4a65311
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:08 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:08 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/41314a21/CHANGES.txt
--
diff --cc CHANGES.txt
index df13658,e81f2bb..5f0db66
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -53,96 -17,9 +53,97 @@@ Merged from 1.0
   * allow custom types in CLI's assume command (CASSANDRA-4081)
   * fix totalBytes count for parallel compactions (CASSANDRA-3758)
   * fix intermittent NPE in get_slice (CASSANDRA-4095)
+  * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix ClassCastException during hinted handoff (CASSANDRA-3694)
 + * Upgrade Thrift to 0.7 (CASSANDRA-3213)
 + * Make stress.java insert operation to use microseconds (CASSANDRA-3725)
 + * Allows 

[7/16] git commit: remove unnecessary asserts in native code interfaces patch by jbellis; reviewed by pschuller for CASSANDRA-4096

2012-03-30 Thread jbellis
remove unnecessary asserts in native code interfaces
patch by jbellis; reviewed by pschuller for CASSANDRA-4096


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4a653117
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4a653117
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4a653117

Branch: refs/heads/cassandra-1.1.0
Commit: 4a6531172c7d142e199f198e275942b7952c80f7
Parents: 5cde93d
Author: Jonathan Ellis 
Authored: Fri Mar 30 10:41:32 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 10:41:32 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index bf1a34f..e81f2bb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -17,6 +17,7 @@
  * allow custom types in CLI's assume command (CASSANDRA-4081)
  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
  * fix intermittent NPE in get_slice (CASSANDRA-4095)
+ * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a653117/src/java/org/apache/cassandra/utils/CLibrary.java
--
diff --git a/src/java/org/apache/cassandra/utils/CLibrary.java 
b/src/java/org/apache/cassandra/utils/CLibrary.java
index 090a355..6270d8c 100644
--- a/src/java/org/apache/cassandra/utils/CLibrary.java
+++ b/src/java/org/apache/cassandra/utils/CLibrary.java
@@ -105,8 +105,7 @@ public final class CLibrary
 {
 try
 {
-int result = mlockall(MCL_CURRENT);
-assert result == 0; // mlockall should always be zero on success
+mlockall(MCL_CURRENT);
 logger.info("JNA mlockall successful");
 }
 catch (UnsatisfiedLinkError e)
@@ -143,8 +142,7 @@ public final class CLibrary
 {
 try
 {
-int result = link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
-assert result == 0; // success is always zero
+link(sourceFile.getAbsolutePath(), 
destinationFile.getAbsolutePath());
 }
 catch (UnsatisfiedLinkError e)
 {
@@ -242,12 +240,12 @@ public final class CLibrary
 
 public static int tryFcntl(int fd, int command, int flags)
 {
+// fcntl return value may or may not be useful, depending on the 
command
 int result = -1;
 
 try
 {
 result = CLibrary.fcntl(fd, command, flags);
-assert result >= 0; // on error a value of -1 is returned and 
errno is set to indicate the error.
 }
 catch (RuntimeException e)
 {



[1/16] git commit: Merge branch 'cassandra-1.1' into trunk

2012-03-30 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.0 5cde93d96 -> 4a6531172
  refs/heads/cassandra-1.1 79354482a -> a40e162ba
  refs/heads/cassandra-1.1.0 e5a324e31 -> 41314a21d
  refs/heads/trunk 38515b19a -> 6c5b1b663


Merge branch 'cassandra-1.1' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6c5b1b66
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6c5b1b66
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6c5b1b66

Branch: refs/heads/trunk
Commit: 6c5b1b66342e8f9ffbbe2d72680f745f2d54e625
Parents: 38515b1 a40e162
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:37 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:37 2012 -0500

--
 CHANGES.txt|5 -
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 src/java/org/apache/cassandra/utils/CLibrary.java  |8 +++-
 4 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5b1b66/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5b1b66/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5b1b66/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5b1b66/src/java/org/apache/cassandra/utils/CLibrary.java
--



[4/16] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread jbellis
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/41314a21
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/41314a21
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/41314a21

Branch: refs/heads/cassandra-1.1.0
Commit: 41314a21dcadfdae59a8f31c71f09700bf9b0233
Parents: e5a324e 4a65311
Author: Jonathan Ellis 
Authored: Fri Mar 30 11:24:08 2012 -0500
Committer: Jonathan Ellis 
Committed: Fri Mar 30 11:24:08 2012 -0500

--
 CHANGES.txt   |1 +
 src/java/org/apache/cassandra/utils/CLibrary.java |8 +++-
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/41314a21/CHANGES.txt
--
diff --cc CHANGES.txt
index df13658,e81f2bb..5f0db66
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -53,96 -17,9 +53,97 @@@ Merged from 1.0
   * allow custom types in CLI's assume command (CASSANDRA-4081)
   * fix totalBytes count for parallel compactions (CASSANDRA-3758)
   * fix intermittent NPE in get_slice (CASSANDRA-4095)
+  * remove unnecessary asserts in native code interfaces (CASSANDRA-4096)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix ClassCastException during hinted handoff (CASSANDRA-3694)
 + * Upgrade Thrift to 0.7 (CASSANDRA-3213)
 + * Make stress.java insert operation to use microseconds (CASSANDRA-3725)
 +

[jira] [Commented] (CASSANDRA-4078) StackOverflowError when upgrading to 1.0.8 from 0.8.10

2012-03-30 Thread Wenjun (Commented) (JIRA)

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

Wenjun commented on CASSANDRA-4078:
---

Paul, yes, finally I am able to narrow it down to this one CF.  I truncated 
data from all other CFs, ran 'cleanp' and 'scrub', and it is still happening.  
What else can I do to help debugging this issue?  The followings are definition 
of this CF:

ColumnFamily: UserAgreementStatus
  Key Validation Class: org.apache.cassandra.db.marshal.BytesType
  Default column value validator: org.apache.cassandra.db.marshal.BytesType
  Columns sorted by: org.apache.cassandra.db.marshal.UTF8Type
  Row cache size / save period in seconds: 0.0/0
  Row Cache Provider: 
org.apache.cassandra.cache.ConcurrentLinkedHashCacheProvider
  Key cache size / save period in seconds: 20.0/14400
  Memtable thresholds: 0.454687497/1440/97 (millions of 
ops/minutes/MB)
  GC grace seconds: 864000
  Compaction min/max thresholds: 4/32
  Read repair chance: 1.0
  Replicate on write: false
  Built indexes: [UserAgreementStatus.userId]
  Column Metadata:
Column Name: agreementName
  Validation Class: org.apache.cassandra.db.marshal.UTF8Type
Column Name: response
  Validation Class: org.apache.cassandra.db.marshal.UTF8Type
Column Name: userId
  Validation Class: org.apache.cassandra.db.marshal.LexicalUUIDType
  Index Name: userId
  Index Type: KEYS
Column Name: viewTime
  Validation Class: org.apache.cassandra.db.marshal.LongType

Log right before the exception:
DEBUG [SSTableBatchOpen:2] 2012-03-30 12:09:20,277 SSTableReader.java (line 
190) INDEX LOAD TIME for /home/cassandra/var/lib/cassandra/d
ata/Appoji/UserAgreementStatus.userId-f-56: 3 ms.
DEBUG [SSTableBatchOpen:2] 2012-03-30 12:09:20,277 SSTableReader.java (line 
193) key cache contains 0/0 keys




> StackOverflowError when upgrading to 1.0.8 from 0.8.10
> --
>
> Key: CASSANDRA-4078
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4078
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.8.10
> Environment: OS: Linux xps.openfin 2.6.35.13-91.fc14.i686 #1 SMP Tue 
> May 3 13:36:36 UTC 2011 i686 i686 i386 GNU/Linux
> Java: JVM vendor/version: Java HotSpot(TM) Server VM/1.6.0_31
>Reporter: Wenjun
>Assignee: paul cannon
>Priority: Critical
> Fix For: 0.8.10
>
> Attachments: 4078.add-asserts.txt, cassandra.yaml.1.0.8, 
> cassandra.yaml.8.10, system.log, system.log.0326, system.log.0326-02
>
>
> Hello
> I am trying to upgrade our 1-node setup from 0.8.10 to 1.0.8 and seeing the 
> following exception when starting up 1.0.8.  We have been running 0.8.10 
> without any issues.
>  
> Attached is the entire log file during startup of 1.0.8.  There are 2 
> exceptions:
> 1. StackOverflowError (line 2599)
> 2. InstanceAlreadyExistsException (line 3632)
> I tried "run scrub" under 0.8.10 first, it did not help.  Also, I tried 
> dropping the column family which caused the exception, it just got the same 
> exceptions from another column family.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4099) IncomingTCPConnection recognizes from by doing socket.getInetAddress() instead of BroadCastAddress

2012-03-30 Thread Brandon Williams (Commented) (JIRA)

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

Brandon Williams commented on CASSANDRA-4099:
-

+1

> IncomingTCPConnection recognizes from by doing socket.getInetAddress() 
> instead of BroadCastAddress
> --
>
> Key: CASSANDRA-4099
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4099
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Vijay
>Assignee: Vijay
>Priority: Minor
> Fix For: 1.0.9, 1.1.0
>
> Attachments: 0001-CASSANDRA-4099-v2.patch, 
> 0001-CASSANDRA-4099-v3.patch, 0001-CASSANDRA-4099-v4.patch, 
> 0001-CASSANDRA-4099.patch
>
>
> change "this.from = socket.getInetAddress()" to understand the broad cast IP, 
> but the problem is we dont know until the first packet is received, this 
> ticket is to work around the problem until it reads the first packet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4021) CFS.scrubDataDirectories tries to delete nonexistent orphans

2012-03-30 Thread Brandon Williams (Commented) (JIRA)

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

Brandon Williams commented on CASSANDRA-4021:
-

FWIW, there has been another case of this reported, but it was on Windows.

> CFS.scrubDataDirectories tries to delete nonexistent orphans
> 
>
> Key: CASSANDRA-4021
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4021
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 0.7 beta 2
>Reporter: Brandon Williams
>Assignee: Brandon Williams
>Priority: Minor
>  Labels: datastax_qa
> Fix For: 0.8.11, 1.0.9
>
> Attachments: 4021.txt
>
>
> The check only looks for a missing data file, then deletes all other 
> components, however it's possible for the data file and another component to 
> be missing, causing an error:
> {noformat}
>  WARN 17:19:28,765 Removing orphans for 
> /var/lib/cassandra/data/system/HintsColumnFamily/system-HintsColumnFamily-hd-24492:
>  [Index.db, Filter.db, Digest.sha1, Statistics.db, Data.db]
> ERROR 17:19:28,766 Exception encountered during startup
> java.lang.AssertionError: attempted to delete non-existing file 
> system-HintsColumnFamily-hd-24492-Index.db
> at 
> org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:49)
> at 
> org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:44)
> at 
> org.apache.cassandra.db.ColumnFamilyStore.scrubDataDirectories(ColumnFamilyStore.java:357)
> at 
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:167)
> at 
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:352)
> at 
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:105)
> java.lang.AssertionError: attempted to delete non-existing file 
> system-HintsColumnFamily-hd-24492-Index.db
> at 
> org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:49)
> at 
> org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:44)
> at 
> org.apache.cassandra.db.ColumnFamilyStore.scrubDataDirectories(ColumnFamilyStore.java:357)
> at 
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:167)
> at 
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:352)
> at 
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:105)
> Exception encountered during startup: attempted to delete non-existing file 
> system-HintsColumnFamily-hd-24492-Index.db
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4093:
---

The thing about backwards-compatibility hacks is you tend to get stuck with 
them.  I'm okay with any of these alternatives:

# Add a big huge warning to NEWS that this corner case is not supported to 1.1, 
but an alternative solution for "tagging" will be supported eventually.  Fail 
1.1 startup if such a schema startup is detected and explain the new limitation
# Wait until we actually have indexes on composite PKs supported to release 1.1
# Ask users@ if anyone actually has such a use case in production, and go with 
1 or 2 based on the responses

Here is why I'm willing to go scorched earth on this:

- Schema design is *the* most difficult thing to explain to new Cassandra 
users. We've made *huge* strides towards simplifying this in CQL3 and composite 
PKs. I don't think we can afford to dilute this with footnotes about how you 
can escape hatch back to the old world, dragging in all our old legacy baggage 
again. Put another way: it's time to bury "wtf is a supercolumn" once and for 
all.
- Of our hundreds of deployments of 0.8 and 1.0, I can live with one or two 
needing to wait for 1.1.2 or whatever to upgrade.  We have a pretty good feel 
at this point for commonly used features and this isn't one of those.

TLDR: backwards compatibility in this specific case is high cost, low benefit.

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139)
>   at 
> org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046)
>   at 
> org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969)
>   at 
> org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574)
> (seen in trunk)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




git commit: Make loadNewSSTable preserve sstable version

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1.0 9ad9c2475 -> e5a324e31


Make loadNewSSTable preserve sstable version

patch by slebresne; reviewed by jbellis for CASSANDRA-4077


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e5a324e3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e5a324e3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e5a324e3

Branch: refs/heads/cassandra-1.1.0
Commit: e5a324e31e0da3e5e57d3bd87e06f20aaf108a3d
Parents: 9ad9c24
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:31:51 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:31:51 2012 +0200

--
 CHANGES.txt|1 +
 .../org/apache/cassandra/db/ColumnFamilyStore.java |3 ++-
 2 files changed, 3 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 827c0c4..df13658 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,7 @@
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
  * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
+ * make loadNewSStable preserve sstable version (CASSANDRA-4077)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e5a324e3/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0fc7604..4ab9eba 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -469,7 +469,8 @@ public class ColumnFamilyStore implements 
ColumnFamilyStoreMBean
  
Descriptor.CURRENT_VERSION,
  descriptor));
 
-Descriptor newDescriptor = new Descriptor(descriptor.directory,
+Descriptor newDescriptor = new Descriptor(descriptor.version,
+  descriptor.directory,
   descriptor.ksname,
   descriptor.cfname,
   
fileIndexGenerator.incrementAndGet(),



[jira] [Commented] (CASSANDRA-4077) ScrubTest failing on current 1.1.0 branch

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4077:
---

+1

> ScrubTest failing on current 1.1.0 branch
> -
>
> Key: CASSANDRA-4077
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4077
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tests
>Affects Versions: 1.1.0
>Reporter: Sylvain Lebresne
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4077.txt
>
>
> I get the following error:
> {noformat}
> [junit] - Standard Error -
> [junit] ERROR 09:53:05,979 Corrupt sstable 
> build/test/cassandra/data/Keyspace1/Super5/Keyspace1-Super5-f-2; skipped
> [junit] java.io.EOFException
> [junit]   at java.io.DataInputStream.readFully(DataInputStream.java:180)
> [junit]   at java.io.DataInputStream.readLong(DataInputStream.java:399)
> [junit]   at 
> org.apache.cassandra.db.commitlog.ReplayPosition$ReplayPositionSerializer.deserialize(ReplayPosition.java:133)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:206)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:194)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:155)
> [junit]   at 
> org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:483)
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:86)
> [junit]   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [junit]   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> [junit]   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [junit]   at java.lang.reflect.Method.invoke(Method.java:597)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> [junit]   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> [junit]   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:44)
> [junit]   at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> [junit]   at 
> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> [junit]   at 
> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> [junit]   at 
> junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
> [junit] -  ---
> [junit] Testcase: testScrubFile(org.apache.cassandra.db.ScrubTest):   
> FAILED
> [junit] null
> [junit] junit.framework.AssertionFailedError
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:87)
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[1/2] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1.0 adc0931e8 -> 9ad9c2475


Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9ad9c247
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9ad9c247
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9ad9c247

Branch: refs/heads/cassandra-1.1.0
Commit: 9ad9c2475f4c1749056ad43dc8c49f35d54ab2bb
Parents: adc0931 5cde93d
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:24:33 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:24:33 2012 +0200

--
 CHANGES.txt|3 ++-
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9ad9c247/CHANGES.txt
--
diff --cc CHANGES.txt
index 00848f6,bf1a34f..827c0c4
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -50,97 -15,10 +50,98 @@@ Merged from 1.0
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
   * allow custom types in CLI's assume command (CASSANDRA-4081)
-  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+  * fix intermittent NPE in get_slice (CASSANDRA-4095)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 + * fix LeveledCompactionStrategy broken because of generation pre-allocation
 +   in LeveledManifest (CASSANDRA-3691)
 + * finer-grained control over data directories (CASSANDRA-2749)
 + * Fix Clas

[2/2] git commit: Fix intermittent NPE in get_slice

2012-03-30 Thread slebresne
Fix intermittent NPE in get_slice

patch by jbellis; reviewed by vijay for CASSANDRA-4095


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5cde93d9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5cde93d9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5cde93d9

Branch: refs/heads/cassandra-1.1.0
Commit: 5cde93d9607ddbdb5316afaa2be9b9132d1bec3f
Parents: 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:22:59 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:22:59 2012 +0200

--
 CHANGES.txt|3 ++-
 src/java/org/apache/cassandra/db/Row.java  |5 +
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 438bc91..bf1a34f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,7 +15,8 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
- * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix intermittent NPE in get_slice (CASSANDRA-4095)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/Row.java
--
diff --git a/src/java/org/apache/cassandra/db/Row.java 
b/src/java/org/apache/cassandra/db/Row.java
index 523f501..71a7332 100644
--- a/src/java/org/apache/cassandra/db/Row.java
+++ b/src/java/org/apache/cassandra/db/Row.java
@@ -45,6 +45,11 @@ public class Row
 this.cf = cf;
 }
 
+public int getLiveColumnCount()
+{
+return cf == null ? 0 : cf.getLiveColumnCount();
+}
+
 @Override
 public String toString()
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
--
diff --git a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java 
b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
index 4ea89b6..be73472 100644
--- a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
+++ b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
@@ -73,7 +73,7 @@ public class SliceFromReadCommand extends ReadCommand
 public ReadCommand maybeGenerateRetryCommand(RepairCallback handler, Row 
row)
 {
 int maxLiveColumns = handler.getMaxLiveColumns();
-int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
+int liveColumnsInRow = row != null ? row.getLiveColumnCount() : 0;
 
 assert maxLiveColumns <= count;
 // We generate a retry if at least one node reply with count live 
columns but after merge we have less



git commit: Fix intermittent NPE in get_slice

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.0 3931ee709 -> 5cde93d96


Fix intermittent NPE in get_slice

patch by jbellis; reviewed by vijay for CASSANDRA-4095


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5cde93d9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5cde93d9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5cde93d9

Branch: refs/heads/cassandra-1.0
Commit: 5cde93d9607ddbdb5316afaa2be9b9132d1bec3f
Parents: 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 17:22:59 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 17:22:59 2012 +0200

--
 CHANGES.txt|3 ++-
 src/java/org/apache/cassandra/db/Row.java  |5 +
 .../apache/cassandra/db/SliceFromReadCommand.java  |2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 438bc91..bf1a34f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,7 +15,8 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
- * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix totalBytes count for parallel compactions (CASSANDRA-3758)
+ * fix intermittent NPE in get_slice (CASSANDRA-4095)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/Row.java
--
diff --git a/src/java/org/apache/cassandra/db/Row.java 
b/src/java/org/apache/cassandra/db/Row.java
index 523f501..71a7332 100644
--- a/src/java/org/apache/cassandra/db/Row.java
+++ b/src/java/org/apache/cassandra/db/Row.java
@@ -45,6 +45,11 @@ public class Row
 this.cf = cf;
 }
 
+public int getLiveColumnCount()
+{
+return cf == null ? 0 : cf.getLiveColumnCount();
+}
+
 @Override
 public String toString()
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/5cde93d9/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
--
diff --git a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java 
b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
index 4ea89b6..be73472 100644
--- a/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
+++ b/src/java/org/apache/cassandra/db/SliceFromReadCommand.java
@@ -73,7 +73,7 @@ public class SliceFromReadCommand extends ReadCommand
 public ReadCommand maybeGenerateRetryCommand(RepairCallback handler, Row 
row)
 {
 int maxLiveColumns = handler.getMaxLiveColumns();
-int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
+int liveColumnsInRow = row != null ? row.getLiveColumnCount() : 0;
 
 assert maxLiveColumns <= count;
 // We generate a retry if at least one node reply with count live 
columns but after merge we have less



[jira] [Assigned] (CASSANDRA-4077) ScrubTest failing on current 1.1.0 branch

2012-03-30 Thread Sylvain Lebresne (Assigned) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne reassigned CASSANDRA-4077:
---

Assignee: Sylvain Lebresne

> ScrubTest failing on current 1.1.0 branch
> -
>
> Key: CASSANDRA-4077
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4077
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tests
>Affects Versions: 1.1.0
>Reporter: Sylvain Lebresne
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4077.txt
>
>
> I get the following error:
> {noformat}
> [junit] - Standard Error -
> [junit] ERROR 09:53:05,979 Corrupt sstable 
> build/test/cassandra/data/Keyspace1/Super5/Keyspace1-Super5-f-2; skipped
> [junit] java.io.EOFException
> [junit]   at java.io.DataInputStream.readFully(DataInputStream.java:180)
> [junit]   at java.io.DataInputStream.readLong(DataInputStream.java:399)
> [junit]   at 
> org.apache.cassandra.db.commitlog.ReplayPosition$ReplayPositionSerializer.deserialize(ReplayPosition.java:133)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:206)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:194)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:155)
> [junit]   at 
> org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:483)
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:86)
> [junit]   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [junit]   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> [junit]   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [junit]   at java.lang.reflect.Method.invoke(Method.java:597)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> [junit]   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> [junit]   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:44)
> [junit]   at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> [junit]   at 
> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> [junit]   at 
> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> [junit]   at 
> junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
> [junit] -  ---
> [junit] Testcase: testScrubFile(org.apache.cassandra.db.ScrubTest):   
> FAILED
> [junit] null
> [junit] junit.framework.AssertionFailedError
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:87)
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4077) ScrubTest failing on current 1.1.0 branch

2012-03-30 Thread Sylvain Lebresne (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne updated CASSANDRA-4077:


Attachment: 4077.txt

This is because loadNewSSTable was incorrectly bumping the version of the 
sstables to the current version when renaming them. Trivial patch attached.

> ScrubTest failing on current 1.1.0 branch
> -
>
> Key: CASSANDRA-4077
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4077
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tests
>Affects Versions: 1.1.0
>Reporter: Sylvain Lebresne
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4077.txt
>
>
> I get the following error:
> {noformat}
> [junit] - Standard Error -
> [junit] ERROR 09:53:05,979 Corrupt sstable 
> build/test/cassandra/data/Keyspace1/Super5/Keyspace1-Super5-f-2; skipped
> [junit] java.io.EOFException
> [junit]   at java.io.DataInputStream.readFully(DataInputStream.java:180)
> [junit]   at java.io.DataInputStream.readLong(DataInputStream.java:399)
> [junit]   at 
> org.apache.cassandra.db.commitlog.ReplayPosition$ReplayPositionSerializer.deserialize(ReplayPosition.java:133)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:206)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:194)
> [junit]   at 
> org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:155)
> [junit]   at 
> org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:483)
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:86)
> [junit]   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [junit]   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> [junit]   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [junit]   at java.lang.reflect.Method.invoke(Method.java:597)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> [junit]   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> [junit]   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> [junit]   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> [junit]   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:44)
> [junit]   at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> [junit]   at 
> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> [junit]   at 
> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> [junit]   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> [junit]   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> [junit]   at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> [junit]   at 
> junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
> [junit]   at 
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
> [junit] -  ---
> [junit] Testcase: testScrubFile(org.apache.cassandra.db.ScrubTest):   
> FAILED
> [junit] null
> [junit] junit.framework.AssertionFailedError
> [junit]   at 
> org.apache.cassandra.db.ScrubTest.testScrubFile(ScrubTest.java:87)
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[6/8] git commit: Allow custom types in CLI's assume command

2012-03-30 Thread slebresne
Allow custom types in CLI's assume command

patch by xedin; reviewed by slebresne for CASSANDRA-4081


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7326ba88
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7326ba88
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7326ba88

Branch: refs/heads/trunk
Commit: 7326ba88795665d241d2aac9a1386598f35f157e
Parents: b85d44a
Author: Sylvain Lebresne 
Authored: Fri Mar 30 10:33:29 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 10:33:29 2012 +0200

--
 CHANGES.txt  |1 +
 src/java/org/apache/cassandra/cli/Cli.g  |4 +-
 src/java/org/apache/cassandra/cli/CliClient.java |   20 +++-
 3 files changed, 17 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index e4d207c..3316e87 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -14,6 +14,7 @@
  * ensure that directory is selected for compaction for user-defined
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+ * allow custom types in CLI's assume command (CASSANDRA-4081)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/Cli.g
--
diff --git a/src/java/org/apache/cassandra/cli/Cli.g 
b/src/java/org/apache/cassandra/cli/Cli.g
index e7cba6c..742ccf2 100644
--- a/src/java/org/apache/cassandra/cli/Cli.g
+++ b/src/java/org/apache/cassandra/cli/Cli.g
@@ -301,8 +301,8 @@ truncateStatement
 ;
 
 assumeStatement
-: ASSUME columnFamily assumptionElement=Identifier 'AS' 
defaultType=Identifier
--> ^(NODE_ASSUME columnFamily $assumptionElement $defaultType)
+: ASSUME columnFamily assumptionElement=Identifier 'AS' entityName
+-> ^(NODE_ASSUME columnFamily $assumptionElement entityName)
 ;
 
 consistencyLevelStatement

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/CliClient.java
--
diff --git a/src/java/org/apache/cassandra/cli/CliClient.java 
b/src/java/org/apache/cassandra/cli/CliClient.java
index 8e76b89..dfbcb68 100644
--- a/src/java/org/apache/cassandra/cli/CliClient.java
+++ b/src/java/org/apache/cassandra/cli/CliClient.java
@@ -1491,17 +1491,25 @@ public class CliClient
 AbstractType comparator;
 
 // Could be UTF8Type, IntegerType, LexicalUUIDType etc.
-String defaultType = statement.getChild(2).getText();
+String defaultType = 
CliUtils.unescapeSQLString(statement.getChild(2).getText());
 
 try
 {
-comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+comparator = TypeParser.parse(defaultType);
 }
-catch (Exception e)
+catch (ConfigurationException e)
 {
-String functions = Function.getFunctionNames();
-sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions);
-return;
+try
+{
+comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+}
+catch (Exception ne)
+{
+String functions = Function.getFunctionNames();
+sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions
+ + " Or any class which extends 
o.a.c.db.marshal.AbstractType.");
+return;
+}
 }
 
 // making string representation look property e.g. 
o.a.c.db.marshal.UTF8Type



[4/8] git commit: Remove dead sliced_buffer_size_in_kb option

2012-03-30 Thread slebresne
Remove dead sliced_buffer_size_in_kb option

patch by slebresne; reviewed by jbellis for CASSANDRA-4076


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d69d304c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d69d304c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d69d304c

Branch: refs/heads/trunk
Commit: d69d304c4e4788daa201539e5e8441d30bb02396
Parents: e05a327
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:44:24 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:44:24 2012 +0200

--
 CHANGES.txt|1 +
 NEWS.txt   |3 ++-
 conf/cassandra.yaml|4 
 examples/client_only/conf/cassandra.yaml   |4 
 src/java/org/apache/cassandra/config/Config.java   |2 --
 .../cassandra/config/DatabaseDescriptor.java   |   10 --
 .../db/columniterator/SSTableNamesIterator.java|2 +-
 .../db/columniterator/SSTableSliceIterator.java|2 +-
 .../apache/cassandra/io/sstable/SSTableReader.java |2 +-
 .../cassandra/io/sstable/SSTableReaderTest.java|2 +-
 10 files changed, 7 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 55d17f7..9c62679 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Adds caching and bloomFilterFpChange to CQL options (CASSANDRA-4042)
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
+ * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/NEWS.txt
--
diff --git a/NEWS.txt b/NEWS.txt
index a588e91..eca9e02 100644
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -48,7 +48,8 @@ Upgrading
   + Prior to 1.1, you could use KEY as the primary key name in some
 select statements, even if the PK was actually given a different
 name.  In 1.1+ you must use the defined PK name.
-
+- The sliced_buffer_size_in_kb option has been removed from the
+  cassandra.yaml config file (this option was a no-op since 1.0).
 
 Features
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 866319c..1874f32 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -223,10 +223,6 @@ concurrent_writes: 32
 # the maximum number of secondary indexes created on a single CF.
 memtable_flush_queue_size: 4
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # Whether to, when doing sequential writing, fsync() at intervals in
 # order to force the operating system to flush the dirty
 # buffers. Enable this to avoid sudden dirty buffer flushing from

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/examples/client_only/conf/cassandra.yaml
--
diff --git a/examples/client_only/conf/cassandra.yaml 
b/examples/client_only/conf/cassandra.yaml
index 2d92794..701d191 100644
--- a/examples/client_only/conf/cassandra.yaml
+++ b/examples/client_only/conf/cassandra.yaml
@@ -150,10 +150,6 @@ concurrent_writes: 32
 # By default this will be set to the amount of data directories defined.
 #memtable_flush_writers: 1
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # TCP port, for commands and data
 storage_port: 7000
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 2bc34dc..91b96f1 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -61,8 +61,6 @@ public class Config
 public Integer memtable_flush_writers = null; // will get set to the 
length of data dirs in DatabaseDescriptor
 public Integer memtable_total_space_in_mb;
 
-public Integer sliced_buffer_size_in_kb = 64;
-
 public Integer storage_port = 7000;
 public Integer ssl_storage_port = 7001;
 public St

[7/8] git commit: make ITC to handle versioning using BCA patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098

2012-03-30 Thread slebresne
make ITC to handle versioning using BCA
patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b85d44a2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b85d44a2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b85d44a2

Branch: refs/heads/trunk
Commit: b85d44a25bec8355a86288376eca17021b9793f2
Parents: b0dfb4c
Author: Vijay Parthasarathy 
Authored: Thu Mar 29 16:29:07 2012 -0700
Committer: Vijay Parthasarathy 
Committed: Thu Mar 29 16:29:07 2012 -0700

--
 .../cassandra/net/IncomingTcpConnection.java   |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b85d44a2/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
--
diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java 
b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
index ee44a1c..47ab39a 100644
--- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
+++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
@@ -48,7 +48,6 @@ public class IncomingTcpConnection extends Thread
 {
 assert socket != null;
 this.socket = socket;
-from = socket.getInetAddress(); // maximize chance of this not being 
nulled by disconnect
 }
 
 /**
@@ -94,6 +93,7 @@ public class IncomingTcpConnection extends Thread
 input = new DataInputStream(new 
BufferedInputStream(socket.getInputStream(), 4096));
 // Receive the first message to set the version.
 Message msg = receiveMessage(input, version);
+from = msg.getFrom(); // why? see => CASSANDRA-4099
 if (version > MessagingService.version_)
 {
 // save the endpoint so gossip will reconnect to it
@@ -102,7 +102,7 @@ public class IncomingTcpConnection extends Thread
 }
 else if (msg != null)
 {
-Gossiper.instance.setVersion(msg.getFrom(), version);
+Gossiper.instance.setVersion(from, version);
 logger.debug("set version for {} to {}", from, version);
 }
 



[8/8] git commit: Fix underscores

2012-03-30 Thread slebresne
Fix underscores


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/33f66e4f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/33f66e4f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/33f66e4f

Branch: refs/heads/trunk
Commit: 33f66e4fb13b17be08c368424aac07f532bdbab8
Parents: 190e27b
Author: Brandon Williams 
Authored: Thu Mar 29 13:16:21 2012 -0500
Committer: Brandon Williams 
Committed: Thu Mar 29 13:16:21 2012 -0500

--
 .../org/apache/cassandra/gms/FailureDetector.java  |6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/33f66e4f/src/java/org/apache/cassandra/gms/FailureDetector.java
--
diff --git a/src/java/org/apache/cassandra/gms/FailureDetector.java 
b/src/java/org/apache/cassandra/gms/FailureDetector.java
index 0a66cb6..2f03e8c 100644
--- a/src/java/org/apache/cassandra/gms/FailureDetector.java
+++ b/src/java/org/apache/cassandra/gms/FailureDetector.java
@@ -197,10 +197,10 @@ public class FailureDetector implements IFailureDetector, 
FailureDetectorMBean
 
 public void forceConviction(InetAddress ep)
 {
-logger.debug("Forcing conviction of {}", ep);
-for ( IFailureDetectionEventListener listener : fdEvntListeners )
+logger_.debug("Forcing conviction of {}", ep);
+for ( IFailureDetectionEventListener listener : fdEvntListeners_ )
 {
-listener.convict(ep, phiConvictThreshold);
+listener.convict(ep, phiConvictThreshold_);
 }
 }
 



[2/8] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread slebresne
Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/79354482
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/79354482
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/79354482

Branch: refs/heads/trunk
Commit: 79354482aa5faf12dd375c7a7e9b9b2ebd3cd378
Parents: 33f66e4 adc0931
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:49:51 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:49:51 2012 +0200

--
 CHANGES.txt|3 ++
 NEWS.txt   |3 +-
 conf/cassandra.yaml|4 ---
 examples/client_only/conf/cassandra.yaml   |4 ---
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 src/java/org/apache/cassandra/config/Config.java   |2 -
 .../cassandra/config/DatabaseDescriptor.java   |   10 ---
 .../db/columniterator/SSTableNamesIterator.java|2 +-
 .../db/columniterator/SSTableSliceIterator.java|2 +-
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../apache/cassandra/io/sstable/SSTableReader.java |2 +-
 .../cassandra/net/IncomingTcpConnection.java   |4 +-
 .../cassandra/io/sstable/SSTableReaderTest.java|2 +-
 16 files changed, 40 insertions(+), 46 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/NEWS.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/cli/Cli.g
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/cli/CliClient.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/columniterator/SSTableNamesIterator.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/columniterator/SSTableSliceIterator.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
--



[3/8] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread slebresne
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/adc0931e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/adc0931e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/adc0931e

Branch: refs/heads/trunk
Commit: adc0931e8154c12536b8aafa0c90b5a4e8a708b0
Parents: d69d304 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:47:25 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:47:25 2012 +0200

--
 CHANGES.txt|2 +
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../cassandra/net/IncomingTcpConnection.java   |4 +-
 7 files changed, 33 insertions(+), 21 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/adc0931e/CHANGES.txt
--
diff --cc CHANGES.txt
index 9c62679,438bc91..00848f6
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -49,96 -14,10 +49,98 @@@ Merged from 1.0
   * ensure that directory is selected for compaction for user-defined
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+  * allow custom types in CLI's assume command (CASSANDRA-4081)
+  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667)
 

[5/8] git commit: Fix total bytes count for parallel compaction

2012-03-30 Thread slebresne
Fix total bytes count for parallel compaction

patch by slebresne; reviewed by jbellis for CASSANDRA-3758


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3931ee70
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3931ee70
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3931ee70

Branch: refs/heads/trunk
Commit: 3931ee709da29d3b9d9c28b8d0ef34cfdb357c1c
Parents: 7326ba8
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:19:27 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:19:27 2012 +0200

--
 CHANGES.txt|1 +
 .../db/compaction/AbstractCompactionIterable.java  |   13 +++--
 .../db/compaction/CompactionIterable.java  |7 +--
 .../db/compaction/ParallelCompactionIterable.java  |4 +---
 4 files changed, 14 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 3316e87..438bc91 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,6 +15,7 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
+ * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
index 53b1ba9..3182219 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
@@ -41,15 +41,24 @@ public abstract class AbstractCompactionIterable implements 
Iterable scanners;
 
 protected final Throttle throttle;
 
-public AbstractCompactionIterable(CompactionController controller, 
OperationType type)
+public AbstractCompactionIterable(CompactionController controller, 
OperationType type, List scanners)
 {
 this.controller = controller;
 this.type = type;
+this.scanners = scanners;
+this.bytesRead = 0;
+
+long bytes = 0;
+for (SSTableScanner scanner : scanners)
+bytes += scanner.getFileLength();
+this.totalBytes = bytes;
+
 this.throttle = new Throttle(toString(), new 
Throttle.ThroughputFunction()
 {
 /** @return Instantaneous throughput target in bytes per 
millisecond. */

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
index 5e0dfa7..65e4b54 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
@@ -41,7 +41,6 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 private static Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
 
 private long row;
-private final List scanners;
 
 private static final Comparator comparator = new 
Comparator()
 {
@@ -58,12 +57,8 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 
 protected CompactionIterable(OperationType type, List 
scanners, CompactionController controller)
 {
-super(controller, type);
-this.scanners = scanners;
+super(controller, type, scanners);
 row = 0;
-totalBytes = bytesRead = 0;
-for (SSTableScanner scanner : scanners)
-totalBytes += scanner.getFileLength();
 }
 
 protected static List getScanners(Iterable 
sstables) throws IOException

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
index dba8f55..52f81e0 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
@@ -59,7 +59,6 @@ public class Pa

[1/8] git commit: Merge branch 'cassandra-1.1' into trunk

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/trunk 3f7c7323b -> 38515b19a


Merge branch 'cassandra-1.1' into trunk

Conflicts:

src/java/org/apache/cassandra/db/columniterator/SSTableNamesIterator.java

src/java/org/apache/cassandra/db/columniterator/SSTableSliceIterator.java
src/java/org/apache/cassandra/io/sstable/SSTableReader.java
src/java/org/apache/cassandra/net/IncomingTcpConnection.java
test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/38515b19
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/38515b19
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/38515b19

Branch: refs/heads/trunk
Commit: 38515b19a78ee2e1db69fd194e95135100ba34e9
Parents: 3f7c732 7935448
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:55:43 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:55:43 2012 +0200

--
 CHANGES.txt|3 ++
 NEWS.txt   |3 +-
 conf/cassandra.yaml|4 ---
 examples/client_only/conf/cassandra.yaml   |4 ---
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 src/java/org/apache/cassandra/config/Config.java   |2 -
 .../cassandra/config/DatabaseDescriptor.java   |   10 ---
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../org/apache/cassandra/gms/FailureDetector.java  |2 +-
 12 files changed, 35 insertions(+), 41 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/cli/CliClient.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/config/Config.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
--
diff --cc src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
index 4f9a6d1,eb88489..ba4e3c2
--- a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
@@@ -34,10 -38,9 +34,9 @@@ import org.apache.cassandra.utils.Merge
  
  public class CompactionIterable extends AbstractCompactionIterable
  {
 -private static Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
 +private static final Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
  
  private long row;
- private final List scanners;
  
  private static final Comparator comparator = new 
Comparator()
  {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--
diff --cc 
src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
index eed60c5,764a549..a04bb91
--- 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
@@@ -54,9 -57,8 +54,8 @@@ import org.apache.cassandra.utils.*
   */
  public class ParallelCompactionIterable extends AbstractCompactionIterable
  {
 -private static Logger logger = 
LoggerFactory.getLogger(ParallelCompactionIterable.class);
 +private static final Logger logger = 
LoggerFactory.getLogger(ParallelCompactionIterable.class);
  
- private final List scanners;
  private final int maxInMemorySize;
  
  public ParallelCompactionIterable(OperationType type, 
Iterable sstables, CompactionController controller) throws 
IOException

http://git-wip-us.apache.org/repos/asf/cassandra/blob/38515b19/src/java/org/apache/cassandra/gms/FailureDetector.j

[jira] [Commented] (CASSANDRA-4095) Internal error processing get_slice (NullPointerException)

2012-03-30 Thread Vijay (Commented) (JIRA)

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

Vijay commented on CASSANDRA-4095:
--

I Should have also verified against 1.0, thanks!

> Internal error processing get_slice (NullPointerException)
> --
>
> Key: CASSANDRA-4095
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4095
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.0.2
> Environment: Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
>Reporter: John Laban
>Assignee: Jonathan Ellis
>Priority: Minor
> Fix For: 1.0.9, 1.1.0
>
> Attachments: 4095.txt, 4095_v2.txt
>
>
> I get this pretty regularly.  It seems to happen transiently on multiple 
> nodes in my cluster, every so often, and goes away.
> ERROR [Thrift:45] 2012-03-26 19:59:12,024 Cassandra.java (line 3041) Internal 
> error processing get_slice
> java.lang.NullPointerException
> at 
> org.apache.cassandra.db.SliceFromReadCommand.maybeGenerateRetryCommand(SliceFromReadCommand.java:76)
> at 
> org.apache.cassandra.service.StorageProxy.fetchRows(StorageProxy.java:724)
> at 
> org.apache.cassandra.service.StorageProxy.read(StorageProxy.java:564)
> at 
> org.apache.cassandra.thrift.CassandraServer.readColumnFamily(CassandraServer.java:128)
> at 
> org.apache.cassandra.thrift.CassandraServer.getSlice(CassandraServer.java:283)
> at 
> org.apache.cassandra.thrift.CassandraServer.multigetSliceInternal(CassandraServer.java:365)
> at 
> org.apache.cassandra.thrift.CassandraServer.get_slice(CassandraServer.java:326)
> at 
> org.apache.cassandra.thrift.Cassandra$Processor$get_slice.process(Cassandra.java:3033)
> at 
> org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2889)
> at 
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:187)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> The line in question is (I think) the one below, so it looks like the column 
> family reference for a row can sometimes be null?
> int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
> Here is my column family (on 1.0.8):
> ColumnFamily: WorkQueue (Super)
>   Key Validation Class: org.apache.cassandra.db.marshal.UTF8Type
>   Default column value validator: org.apache.cassandra.db.marshal.UTF8Type
>   Columns sorted by: 
> org.apache.cassandra.db.marshal.UTF8Type/org.apache.cassandra.db.marshal.UTF8Type
>   Row cache size / save period in seconds / keys to save : 0.0/0/all
>   Row Cache Provider: 
> org.apache.cassandra.cache.ConcurrentLinkedHashCacheProvider
>   Key cache size / save period in seconds: 0.0/0
>   GC grace seconds: 0
>   Compaction min/max thresholds: 4/32
>   Read repair chance: 0.0
>   Replicate on write: false
>   Bloom Filter FP chance: default
>   Built indexes: []
>   Compaction Strategy: 
> org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[3/6] git commit: Remove dead sliced_buffer_size_in_kb option

2012-03-30 Thread slebresne
Remove dead sliced_buffer_size_in_kb option

patch by slebresne; reviewed by jbellis for CASSANDRA-4076


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d69d304c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d69d304c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d69d304c

Branch: refs/heads/cassandra-1.1
Commit: d69d304c4e4788daa201539e5e8441d30bb02396
Parents: e05a327
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:44:24 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:44:24 2012 +0200

--
 CHANGES.txt|1 +
 NEWS.txt   |3 ++-
 conf/cassandra.yaml|4 
 examples/client_only/conf/cassandra.yaml   |4 
 src/java/org/apache/cassandra/config/Config.java   |2 --
 .../cassandra/config/DatabaseDescriptor.java   |   10 --
 .../db/columniterator/SSTableNamesIterator.java|2 +-
 .../db/columniterator/SSTableSliceIterator.java|2 +-
 .../apache/cassandra/io/sstable/SSTableReader.java |2 +-
 .../cassandra/io/sstable/SSTableReaderTest.java|2 +-
 10 files changed, 7 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 55d17f7..9c62679 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Adds caching and bloomFilterFpChange to CQL options (CASSANDRA-4042)
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
+ * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/NEWS.txt
--
diff --git a/NEWS.txt b/NEWS.txt
index a588e91..eca9e02 100644
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -48,7 +48,8 @@ Upgrading
   + Prior to 1.1, you could use KEY as the primary key name in some
 select statements, even if the PK was actually given a different
 name.  In 1.1+ you must use the defined PK name.
-
+- The sliced_buffer_size_in_kb option has been removed from the
+  cassandra.yaml config file (this option was a no-op since 1.0).
 
 Features
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 866319c..1874f32 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -223,10 +223,6 @@ concurrent_writes: 32
 # the maximum number of secondary indexes created on a single CF.
 memtable_flush_queue_size: 4
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # Whether to, when doing sequential writing, fsync() at intervals in
 # order to force the operating system to flush the dirty
 # buffers. Enable this to avoid sudden dirty buffer flushing from

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/examples/client_only/conf/cassandra.yaml
--
diff --git a/examples/client_only/conf/cassandra.yaml 
b/examples/client_only/conf/cassandra.yaml
index 2d92794..701d191 100644
--- a/examples/client_only/conf/cassandra.yaml
+++ b/examples/client_only/conf/cassandra.yaml
@@ -150,10 +150,6 @@ concurrent_writes: 32
 # By default this will be set to the amount of data directories defined.
 #memtable_flush_writers: 1
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # TCP port, for commands and data
 storage_port: 7000
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 2bc34dc..91b96f1 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -61,8 +61,6 @@ public class Config
 public Integer memtable_flush_writers = null; // will get set to the 
length of data dirs in DatabaseDescriptor
 public Integer memtable_total_space_in_mb;
 
-public Integer sliced_buffer_size_in_kb = 64;
-
 public Integer storage_port = 7000;
 public Integer ssl_storage_port = 7001;
 p

[6/6] git commit: make ITC to handle versioning using BCA patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098

2012-03-30 Thread slebresne
make ITC to handle versioning using BCA
patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b85d44a2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b85d44a2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b85d44a2

Branch: refs/heads/cassandra-1.1
Commit: b85d44a25bec8355a86288376eca17021b9793f2
Parents: b0dfb4c
Author: Vijay Parthasarathy 
Authored: Thu Mar 29 16:29:07 2012 -0700
Committer: Vijay Parthasarathy 
Committed: Thu Mar 29 16:29:07 2012 -0700

--
 .../cassandra/net/IncomingTcpConnection.java   |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b85d44a2/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
--
diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java 
b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
index ee44a1c..47ab39a 100644
--- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
+++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
@@ -48,7 +48,6 @@ public class IncomingTcpConnection extends Thread
 {
 assert socket != null;
 this.socket = socket;
-from = socket.getInetAddress(); // maximize chance of this not being 
nulled by disconnect
 }
 
 /**
@@ -94,6 +93,7 @@ public class IncomingTcpConnection extends Thread
 input = new DataInputStream(new 
BufferedInputStream(socket.getInputStream(), 4096));
 // Receive the first message to set the version.
 Message msg = receiveMessage(input, version);
+from = msg.getFrom(); // why? see => CASSANDRA-4099
 if (version > MessagingService.version_)
 {
 // save the endpoint so gossip will reconnect to it
@@ -102,7 +102,7 @@ public class IncomingTcpConnection extends Thread
 }
 else if (msg != null)
 {
-Gossiper.instance.setVersion(msg.getFrom(), version);
+Gossiper.instance.setVersion(from, version);
 logger.debug("set version for {} to {}", from, version);
 }
 



[5/6] git commit: Allow custom types in CLI's assume command

2012-03-30 Thread slebresne
Allow custom types in CLI's assume command

patch by xedin; reviewed by slebresne for CASSANDRA-4081


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7326ba88
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7326ba88
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7326ba88

Branch: refs/heads/cassandra-1.1
Commit: 7326ba88795665d241d2aac9a1386598f35f157e
Parents: b85d44a
Author: Sylvain Lebresne 
Authored: Fri Mar 30 10:33:29 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 10:33:29 2012 +0200

--
 CHANGES.txt  |1 +
 src/java/org/apache/cassandra/cli/Cli.g  |4 +-
 src/java/org/apache/cassandra/cli/CliClient.java |   20 +++-
 3 files changed, 17 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index e4d207c..3316e87 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -14,6 +14,7 @@
  * ensure that directory is selected for compaction for user-defined
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+ * allow custom types in CLI's assume command (CASSANDRA-4081)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/Cli.g
--
diff --git a/src/java/org/apache/cassandra/cli/Cli.g 
b/src/java/org/apache/cassandra/cli/Cli.g
index e7cba6c..742ccf2 100644
--- a/src/java/org/apache/cassandra/cli/Cli.g
+++ b/src/java/org/apache/cassandra/cli/Cli.g
@@ -301,8 +301,8 @@ truncateStatement
 ;
 
 assumeStatement
-: ASSUME columnFamily assumptionElement=Identifier 'AS' 
defaultType=Identifier
--> ^(NODE_ASSUME columnFamily $assumptionElement $defaultType)
+: ASSUME columnFamily assumptionElement=Identifier 'AS' entityName
+-> ^(NODE_ASSUME columnFamily $assumptionElement entityName)
 ;
 
 consistencyLevelStatement

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/CliClient.java
--
diff --git a/src/java/org/apache/cassandra/cli/CliClient.java 
b/src/java/org/apache/cassandra/cli/CliClient.java
index 8e76b89..dfbcb68 100644
--- a/src/java/org/apache/cassandra/cli/CliClient.java
+++ b/src/java/org/apache/cassandra/cli/CliClient.java
@@ -1491,17 +1491,25 @@ public class CliClient
 AbstractType comparator;
 
 // Could be UTF8Type, IntegerType, LexicalUUIDType etc.
-String defaultType = statement.getChild(2).getText();
+String defaultType = 
CliUtils.unescapeSQLString(statement.getChild(2).getText());
 
 try
 {
-comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+comparator = TypeParser.parse(defaultType);
 }
-catch (Exception e)
+catch (ConfigurationException e)
 {
-String functions = Function.getFunctionNames();
-sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions);
-return;
+try
+{
+comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+}
+catch (Exception ne)
+{
+String functions = Function.getFunctionNames();
+sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions
+ + " Or any class which extends 
o.a.c.db.marshal.AbstractType.");
+return;
+}
 }
 
 // making string representation look property e.g. 
o.a.c.db.marshal.UTF8Type



[4/6] git commit: Fix total bytes count for parallel compaction

2012-03-30 Thread slebresne
Fix total bytes count for parallel compaction

patch by slebresne; reviewed by jbellis for CASSANDRA-3758


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3931ee70
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3931ee70
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3931ee70

Branch: refs/heads/cassandra-1.1
Commit: 3931ee709da29d3b9d9c28b8d0ef34cfdb357c1c
Parents: 7326ba8
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:19:27 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:19:27 2012 +0200

--
 CHANGES.txt|1 +
 .../db/compaction/AbstractCompactionIterable.java  |   13 +++--
 .../db/compaction/CompactionIterable.java  |7 +--
 .../db/compaction/ParallelCompactionIterable.java  |4 +---
 4 files changed, 14 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 3316e87..438bc91 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,6 +15,7 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
+ * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
index 53b1ba9..3182219 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
@@ -41,15 +41,24 @@ public abstract class AbstractCompactionIterable implements 
Iterable scanners;
 
 protected final Throttle throttle;
 
-public AbstractCompactionIterable(CompactionController controller, 
OperationType type)
+public AbstractCompactionIterable(CompactionController controller, 
OperationType type, List scanners)
 {
 this.controller = controller;
 this.type = type;
+this.scanners = scanners;
+this.bytesRead = 0;
+
+long bytes = 0;
+for (SSTableScanner scanner : scanners)
+bytes += scanner.getFileLength();
+this.totalBytes = bytes;
+
 this.throttle = new Throttle(toString(), new 
Throttle.ThroughputFunction()
 {
 /** @return Instantaneous throughput target in bytes per 
millisecond. */

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
index 5e0dfa7..65e4b54 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
@@ -41,7 +41,6 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 private static Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
 
 private long row;
-private final List scanners;
 
 private static final Comparator comparator = new 
Comparator()
 {
@@ -58,12 +57,8 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 
 protected CompactionIterable(OperationType type, List 
scanners, CompactionController controller)
 {
-super(controller, type);
-this.scanners = scanners;
+super(controller, type, scanners);
 row = 0;
-totalBytes = bytesRead = 0;
-for (SSTableScanner scanner : scanners)
-totalBytes += scanner.getFileLength();
 }
 
 protected static List getScanners(Iterable 
sstables) throws IOException

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
index dba8f55..52f81e0 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
@@ -59,7 +59,6 @@ public 

[1/6] git commit: Merge branch 'cassandra-1.1.0' into cassandra-1.1

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1 33f66e4fb -> 79354482a


Merge branch 'cassandra-1.1.0' into cassandra-1.1


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/79354482
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/79354482
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/79354482

Branch: refs/heads/cassandra-1.1
Commit: 79354482aa5faf12dd375c7a7e9b9b2ebd3cd378
Parents: 33f66e4 adc0931
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:49:51 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:49:51 2012 +0200

--
 CHANGES.txt|3 ++
 NEWS.txt   |3 +-
 conf/cassandra.yaml|4 ---
 examples/client_only/conf/cassandra.yaml   |4 ---
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 src/java/org/apache/cassandra/config/Config.java   |2 -
 .../cassandra/config/DatabaseDescriptor.java   |   10 ---
 .../db/columniterator/SSTableNamesIterator.java|2 +-
 .../db/columniterator/SSTableSliceIterator.java|2 +-
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../apache/cassandra/io/sstable/SSTableReader.java |2 +-
 .../cassandra/net/IncomingTcpConnection.java   |4 +-
 .../cassandra/io/sstable/SSTableReaderTest.java|2 +-
 16 files changed, 40 insertions(+), 46 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/NEWS.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/cli/Cli.g
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/cli/CliClient.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/columniterator/SSTableNamesIterator.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/columniterator/SSTableSliceIterator.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/79354482/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
--



[2/6] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread slebresne
Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/adc0931e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/adc0931e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/adc0931e

Branch: refs/heads/cassandra-1.1
Commit: adc0931e8154c12536b8aafa0c90b5a4e8a708b0
Parents: d69d304 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:47:25 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:47:25 2012 +0200

--
 CHANGES.txt|2 +
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../cassandra/net/IncomingTcpConnection.java   |4 +-
 7 files changed, 33 insertions(+), 21 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/adc0931e/CHANGES.txt
--
diff --cc CHANGES.txt
index 9c62679,438bc91..00848f6
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -49,96 -14,10 +49,98 @@@ Merged from 1.0
   * ensure that directory is selected for compaction for user-defined
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+  * allow custom types in CLI's assume command (CASSANDRA-4081)
+  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611)
 + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA

[jira] [Resolved] (CASSANDRA-4076) Remove get{Indexed,Sliced}ReadBufferSizeInKB methods

2012-03-30 Thread Sylvain Lebresne (Resolved) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne resolved CASSANDRA-4076.
-

Resolution: Fixed
  Reviewer: jbellis
  Assignee: Sylvain Lebresne

Committed, thanks

> Remove get{Indexed,Sliced}ReadBufferSizeInKB methods
> 
>
> Key: CASSANDRA-4076
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4076
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.0.0
>Reporter: Sylvain Lebresne
>Assignee: Sylvain Lebresne
>Priority: Trivial
> Fix For: 1.1.0
>
> Attachments: 4076.txt
>
>
> Since CASSANDRA-3171, the 
> DatabaseDescriptor.get{Indexed,Sliced}ReadBufferSizeInKB methods are dead 
> code (they are used as bufferSize argument to SSTableReader.getFileDataInput 
> but that method ignore the argument). This means in particular that we can 
> remove the configuration option sliced_buffer_size_in_kb (we shouldn't do 
> that in 1.0 which is why I targeted to 1.1.0, though we could add a message 
> in 1.0 that this argument is ignored).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[1/4] git commit: Merge branch 'cassandra-1.0' into cassandra-1.1.0

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1.0 d69d304c4 -> adc0931e8


Merge branch 'cassandra-1.0' into cassandra-1.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/adc0931e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/adc0931e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/adc0931e

Branch: refs/heads/cassandra-1.1.0
Commit: adc0931e8154c12536b8aafa0c90b5a4e8a708b0
Parents: d69d304 3931ee7
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:47:25 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:47:25 2012 +0200

--
 CHANGES.txt|2 +
 src/java/org/apache/cassandra/cli/Cli.g|4 +-
 src/java/org/apache/cassandra/cli/CliClient.java   |   20 ++
 .../db/compaction/AbstractCompactionIterable.java  |   13 -
 .../db/compaction/CompactionIterable.java  |7 +
 .../db/compaction/ParallelCompactionIterable.java  |4 +--
 .../cassandra/net/IncomingTcpConnection.java   |4 +-
 7 files changed, 33 insertions(+), 21 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/adc0931e/CHANGES.txt
--
diff --cc CHANGES.txt
index 9c62679,438bc91..00848f6
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -49,96 -14,10 +49,98 @@@ Merged from 1.0
   * ensure that directory is selected for compaction for user-defined
 tasks and upgradesstables (CASSANDRA-3985)
   * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+  * allow custom types in CLI's assume command (CASSANDRA-4081)
+  * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
  
  
 +1.1-beta1
 + * (cqlsh)
 +   + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479)
 +   + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523)
 +   + bundle Python dependencies with Cassandra (CASSANDRA-3507)
 +   + added to Debian package (CASSANDRA-3458)
 +   + display byte data instead of erroring out on decode failure 
 + (CASSANDRA-3874)
 + * add nodetool rebuild_index (CASSANDRA-3583)
 + * add nodetool rangekeysample (CASSANDRA-2917)
 + * Fix streaming too much data during move operations (CASSANDRA-3639)
 + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568)
 + * Reduce memory used by primary index sample (CASSANDRA-3743)
 + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765)
 + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805)
 + * add row-level isolation via SnapTree (CASSANDRA-2893)
 + * Optimize key count estimation when opening sstable on startup
 +   (CASSANDRA-2988)
 + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577)
 + * add command to stop compactions (CASSANDRA-1740, 3566, 3582)
 + * multithreaded streaming (CASSANDRA-3494)
 + * removed in-tree redhat spec (CASSANDRA-3567)
 + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503)
 + * Recycle commitlog segments for improved performance 
 +   (CASSANDRA-3411, 3543, 3557, 3615)
 + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407)
 + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005)
 + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271)
 + * EACH_QUORUM is only supported for writes (CASSANDRA-3272)
 + * replace compactionlock use in schema migration by checking CFS.isValid
 +   (CASSANDRA-3116)
 + * recognize that "SELECT first ... *" isn't really "SELECT *" 
(CASSANDRA-3445)
 + * Use faster bytes comparison (CASSANDRA-3434)
 + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format
 +   (CASSANDRA-3045)
 + * (Hadoop) add support for KeyRange.filter
 + * remove assumption that keys and token are in bijection
 +   (CASSANDRA-1034, 3574, 3604)
 + * always remove endpoints from delevery queue in HH (CASSANDRA-3546)
 + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547)
 + * fix potential race in AES when a repair fails (CASSANDRA-3548)
 + * Remove columns shadowed by a deleted container even when we cannot purge
 +   (CASSANDRA-3538)
 + * Improve memtable slice iteration performance (CASSANDRA-3545)
 + * 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)
 + * global key/row caches (CASSANDRA-3143, 3849)
 + * optimize memtable iteration during range scan (CASSANDRA-3638)
 + * introduce 'crc_check_chance' in CompressionParameters to support
 +   a checksum percentage checking chance similarly to read-repair 
(CASSANDRA-3611

[2/4] git commit: Fix total bytes count for parallel compaction

2012-03-30 Thread slebresne
Fix total bytes count for parallel compaction

patch by slebresne; reviewed by jbellis for CASSANDRA-3758


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3931ee70
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3931ee70
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3931ee70

Branch: refs/heads/cassandra-1.1.0
Commit: 3931ee709da29d3b9d9c28b8d0ef34cfdb357c1c
Parents: 7326ba8
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:19:27 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:19:27 2012 +0200

--
 CHANGES.txt|1 +
 .../db/compaction/AbstractCompactionIterable.java  |   13 +++--
 .../db/compaction/CompactionIterable.java  |7 +--
 .../db/compaction/ParallelCompactionIterable.java  |4 +---
 4 files changed, 14 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 3316e87..438bc91 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,6 +15,7 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
+ * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
index 53b1ba9..3182219 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
@@ -41,15 +41,24 @@ public abstract class AbstractCompactionIterable implements 
Iterable scanners;
 
 protected final Throttle throttle;
 
-public AbstractCompactionIterable(CompactionController controller, 
OperationType type)
+public AbstractCompactionIterable(CompactionController controller, 
OperationType type, List scanners)
 {
 this.controller = controller;
 this.type = type;
+this.scanners = scanners;
+this.bytesRead = 0;
+
+long bytes = 0;
+for (SSTableScanner scanner : scanners)
+bytes += scanner.getFileLength();
+this.totalBytes = bytes;
+
 this.throttle = new Throttle(toString(), new 
Throttle.ThroughputFunction()
 {
 /** @return Instantaneous throughput target in bytes per 
millisecond. */

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
index 5e0dfa7..65e4b54 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
@@ -41,7 +41,6 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 private static Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
 
 private long row;
-private final List scanners;
 
 private static final Comparator comparator = new 
Comparator()
 {
@@ -58,12 +57,8 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 
 protected CompactionIterable(OperationType type, List 
scanners, CompactionController controller)
 {
-super(controller, type);
-this.scanners = scanners;
+super(controller, type, scanners);
 row = 0;
-totalBytes = bytesRead = 0;
-for (SSTableScanner scanner : scanners)
-totalBytes += scanner.getFileLength();
 }
 
 protected static List getScanners(Iterable 
sstables) throws IOException

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
index dba8f55..52f81e0 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
@@ -59,7 +59,6 @@ publi

[4/4] git commit: make ITC to handle versioning using BCA patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098

2012-03-30 Thread slebresne
make ITC to handle versioning using BCA
patch by Vijay; reviewed by Brandon Williams for CASSANDRA-4098


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b85d44a2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b85d44a2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b85d44a2

Branch: refs/heads/cassandra-1.1.0
Commit: b85d44a25bec8355a86288376eca17021b9793f2
Parents: b0dfb4c
Author: Vijay Parthasarathy 
Authored: Thu Mar 29 16:29:07 2012 -0700
Committer: Vijay Parthasarathy 
Committed: Thu Mar 29 16:29:07 2012 -0700

--
 .../cassandra/net/IncomingTcpConnection.java   |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b85d44a2/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
--
diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java 
b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
index ee44a1c..47ab39a 100644
--- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
+++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java
@@ -48,7 +48,6 @@ public class IncomingTcpConnection extends Thread
 {
 assert socket != null;
 this.socket = socket;
-from = socket.getInetAddress(); // maximize chance of this not being 
nulled by disconnect
 }
 
 /**
@@ -94,6 +93,7 @@ public class IncomingTcpConnection extends Thread
 input = new DataInputStream(new 
BufferedInputStream(socket.getInputStream(), 4096));
 // Receive the first message to set the version.
 Message msg = receiveMessage(input, version);
+from = msg.getFrom(); // why? see => CASSANDRA-4099
 if (version > MessagingService.version_)
 {
 // save the endpoint so gossip will reconnect to it
@@ -102,7 +102,7 @@ public class IncomingTcpConnection extends Thread
 }
 else if (msg != null)
 {
-Gossiper.instance.setVersion(msg.getFrom(), version);
+Gossiper.instance.setVersion(from, version);
 logger.debug("set version for {} to {}", from, version);
 }
 



[3/4] git commit: Allow custom types in CLI's assume command

2012-03-30 Thread slebresne
Allow custom types in CLI's assume command

patch by xedin; reviewed by slebresne for CASSANDRA-4081


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7326ba88
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7326ba88
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7326ba88

Branch: refs/heads/cassandra-1.1.0
Commit: 7326ba88795665d241d2aac9a1386598f35f157e
Parents: b85d44a
Author: Sylvain Lebresne 
Authored: Fri Mar 30 10:33:29 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 10:33:29 2012 +0200

--
 CHANGES.txt  |1 +
 src/java/org/apache/cassandra/cli/Cli.g  |4 +-
 src/java/org/apache/cassandra/cli/CliClient.java |   20 +++-
 3 files changed, 17 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index e4d207c..3316e87 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -14,6 +14,7 @@
  * ensure that directory is selected for compaction for user-defined
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
+ * allow custom types in CLI's assume command (CASSANDRA-4081)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/Cli.g
--
diff --git a/src/java/org/apache/cassandra/cli/Cli.g 
b/src/java/org/apache/cassandra/cli/Cli.g
index e7cba6c..742ccf2 100644
--- a/src/java/org/apache/cassandra/cli/Cli.g
+++ b/src/java/org/apache/cassandra/cli/Cli.g
@@ -301,8 +301,8 @@ truncateStatement
 ;
 
 assumeStatement
-: ASSUME columnFamily assumptionElement=Identifier 'AS' 
defaultType=Identifier
--> ^(NODE_ASSUME columnFamily $assumptionElement $defaultType)
+: ASSUME columnFamily assumptionElement=Identifier 'AS' entityName
+-> ^(NODE_ASSUME columnFamily $assumptionElement entityName)
 ;
 
 consistencyLevelStatement

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7326ba88/src/java/org/apache/cassandra/cli/CliClient.java
--
diff --git a/src/java/org/apache/cassandra/cli/CliClient.java 
b/src/java/org/apache/cassandra/cli/CliClient.java
index 8e76b89..dfbcb68 100644
--- a/src/java/org/apache/cassandra/cli/CliClient.java
+++ b/src/java/org/apache/cassandra/cli/CliClient.java
@@ -1491,17 +1491,25 @@ public class CliClient
 AbstractType comparator;
 
 // Could be UTF8Type, IntegerType, LexicalUUIDType etc.
-String defaultType = statement.getChild(2).getText();
+String defaultType = 
CliUtils.unescapeSQLString(statement.getChild(2).getText());
 
 try
 {
-comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+comparator = TypeParser.parse(defaultType);
 }
-catch (Exception e)
+catch (ConfigurationException e)
 {
-String functions = Function.getFunctionNames();
-sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions);
-return;
+try
+{
+comparator = 
Function.valueOf(defaultType.toUpperCase()).getValidator();
+}
+catch (Exception ne)
+{
+String functions = Function.getFunctionNames();
+sessionState.out.println("Type '" + defaultType + "' was not 
found. Available: " + functions
+ + " Or any class which extends 
o.a.c.db.marshal.AbstractType.");
+return;
+}
 }
 
 // making string representation look property e.g. 
o.a.c.db.marshal.UTF8Type



git commit: Remove dead sliced_buffer_size_in_kb option

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1.0 e05a327e2 -> d69d304c4


Remove dead sliced_buffer_size_in_kb option

patch by slebresne; reviewed by jbellis for CASSANDRA-4076


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d69d304c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d69d304c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d69d304c

Branch: refs/heads/cassandra-1.1.0
Commit: d69d304c4e4788daa201539e5e8441d30bb02396
Parents: e05a327
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:44:24 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:44:24 2012 +0200

--
 CHANGES.txt|1 +
 NEWS.txt   |3 ++-
 conf/cassandra.yaml|4 
 examples/client_only/conf/cassandra.yaml   |4 
 src/java/org/apache/cassandra/config/Config.java   |2 --
 .../cassandra/config/DatabaseDescriptor.java   |   10 --
 .../db/columniterator/SSTableNamesIterator.java|2 +-
 .../db/columniterator/SSTableSliceIterator.java|2 +-
 .../apache/cassandra/io/sstable/SSTableReader.java |2 +-
 .../cassandra/io/sstable/SSTableReaderTest.java|2 +-
 10 files changed, 7 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 55d17f7..9c62679 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Adds caching and bloomFilterFpChange to CQL options (CASSANDRA-4042)
  * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087)
  * fix KEYS index from skipping results (CASSANDRA-3996)
+ * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076)
 
 
 1.1-beta2

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/NEWS.txt
--
diff --git a/NEWS.txt b/NEWS.txt
index a588e91..eca9e02 100644
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -48,7 +48,8 @@ Upgrading
   + Prior to 1.1, you could use KEY as the primary key name in some
 select statements, even if the PK was actually given a different
 name.  In 1.1+ you must use the defined PK name.
-
+- The sliced_buffer_size_in_kb option has been removed from the
+  cassandra.yaml config file (this option was a no-op since 1.0).
 
 Features
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 866319c..1874f32 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -223,10 +223,6 @@ concurrent_writes: 32
 # the maximum number of secondary indexes created on a single CF.
 memtable_flush_queue_size: 4
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # Whether to, when doing sequential writing, fsync() at intervals in
 # order to force the operating system to flush the dirty
 # buffers. Enable this to avoid sudden dirty buffer flushing from

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/examples/client_only/conf/cassandra.yaml
--
diff --git a/examples/client_only/conf/cassandra.yaml 
b/examples/client_only/conf/cassandra.yaml
index 2d92794..701d191 100644
--- a/examples/client_only/conf/cassandra.yaml
+++ b/examples/client_only/conf/cassandra.yaml
@@ -150,10 +150,6 @@ concurrent_writes: 32
 # By default this will be set to the amount of data directories defined.
 #memtable_flush_writers: 1
 
-# Buffer size to use when performing contiguous column slices. 
-# Increase this to the size of the column slices you typically perform
-sliced_buffer_size_in_kb: 64
-
 # TCP port, for commands and data
 storage_port: 7000
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69d304c/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 2bc34dc..91b96f1 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -61,8 +61,6 @@ public class Config
 public Integer memtable_flush_writers = null; // will get set to the 
length of data dirs in DatabaseDescriptor
 public Integer memtable_total_space_in_mb;
 
-public Integer sliced_buffer_size_in_kb = 64;
-
 public Intege

[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Sylvain Lebresne (Commented) (JIRA)

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

Sylvain Lebresne commented on CASSANDRA-4093:
-

bq. But you don't need to support indexing the CT column itself, to support 
that use case. More consistent to have a "tag" sparse column and index that 
instead.

But my concern is for backward compatibility. Currently (with 0.8-1.0), you 
*cannot* support this with a tag sparse column that you index because we 
*don't* support indexing on a component of a CT (even 1.1 doesn't support it 
yet). I'm not talking of adding some new possibility that may or may not be 
useful. I'm saying that if someone is indexing on the CT column itself, which 
again is currently the *only* solution and btw wcan be done with pure thrift 
that we have swear not to break, then we'll completely break these users 
application (and as if that wasn't bad enough, they won't even have a correct 
replacement at the moment).

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139)
>   at 
> org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046)
>   at 
> org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969)
>   at 
> org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574)
> (seen in trunk)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4076) Remove get{Indexed,Sliced}ReadBufferSizeInKB methods

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4076:
---

+1

> Remove get{Indexed,Sliced}ReadBufferSizeInKB methods
> 
>
> Key: CASSANDRA-4076
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4076
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.0.0
>Reporter: Sylvain Lebresne
>Priority: Trivial
> Fix For: 1.1.0
>
> Attachments: 4076.txt
>
>
> Since CASSANDRA-3171, the 
> DatabaseDescriptor.get{Indexed,Sliced}ReadBufferSizeInKB methods are dead 
> code (they are used as bufferSize argument to SSTableReader.getFileDataInput 
> but that method ignore the argument). This means in particular that we can 
> remove the configuration option sliced_buffer_size_in_kb (we shouldn't do 
> that in 1.0 which is why I targeted to 1.1.0, though we could add a message 
> in 1.0 that this argument is ignored).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3758) parallel compaction hang (on large rows?)

2012-03-30 Thread Sylvain Lebresne (Commented) (JIRA)

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

Sylvain Lebresne commented on CASSANDRA-3758:
-

bq. I assume they are using a version from before CASSANDRA-3711.

I remembered we had something like that but wasn't able to find the issue. 
You're probably right they ran into this, and maybe that happen to have 
something to do with the hanging too (even though the lack of any error is kind 
of weird).

I've committed the total bytes count fix. I wonder if we should try to close 
this one on the idea that it would be a consequence of CASSANDRA-3711 and just 
let someone reopen if he can reproduce with 1.0.7+ ?

> parallel compaction hang (on large rows?)
> -
>
> Key: CASSANDRA-3758
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3758
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Jackson Chung
>Assignee: Sylvain Lebresne
>  Labels: compaction, datastax_qa
> Fix For: 1.0.9
>
> Attachments: 
> 0001-Fix-totalBytes-count-for-ParallelCompactionIterable.txt, 
> cassandra.log.zip
>
>
> it is observed that:
> nodetool -h 127.0.0.1 -p 8080 compactionstats
> pending tasks: 1
> compaction type keyspace column family bytes compacted bytes total progress
> Compaction SyncCoreComputedContactNetworks 119739938 0 n/a
> and that is not moving (ie the bytes compacted never increase, the bytes 
> total stay 0).
> this is probably going to be difficult to reproduce, as the problem is 
> observed when compacting 15 large sstables (total ~300G).
> attaching the thread dumps (along with logs), when such happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




git commit: Fix total bytes count for parallel compaction

2012-03-30 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.0 7326ba887 -> 3931ee709


Fix total bytes count for parallel compaction

patch by slebresne; reviewed by jbellis for CASSANDRA-3758


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3931ee70
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3931ee70
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3931ee70

Branch: refs/heads/cassandra-1.0
Commit: 3931ee709da29d3b9d9c28b8d0ef34cfdb357c1c
Parents: 7326ba8
Author: Sylvain Lebresne 
Authored: Fri Mar 30 16:19:27 2012 +0200
Committer: Sylvain Lebresne 
Committed: Fri Mar 30 16:19:27 2012 +0200

--
 CHANGES.txt|1 +
 .../db/compaction/AbstractCompactionIterable.java  |   13 +++--
 .../db/compaction/CompactionIterable.java  |7 +--
 .../db/compaction/ParallelCompactionIterable.java  |4 +---
 4 files changed, 14 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 3316e87..438bc91 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -15,6 +15,7 @@
tasks and upgradesstables (CASSANDRA-3985)
  * fix NPE on invalid CQL delete command (CASSANDRA-3755)
  * allow custom types in CLI's assume command (CASSANDRA-4081)
+ * Fix totalBytes count for parallel compactions (CASSANDRA-3758)
 
 
 1.0.8

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
index 53b1ba9..3182219 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
@@ -41,15 +41,24 @@ public abstract class AbstractCompactionIterable implements 
Iterable scanners;
 
 protected final Throttle throttle;
 
-public AbstractCompactionIterable(CompactionController controller, 
OperationType type)
+public AbstractCompactionIterable(CompactionController controller, 
OperationType type, List scanners)
 {
 this.controller = controller;
 this.type = type;
+this.scanners = scanners;
+this.bytesRead = 0;
+
+long bytes = 0;
+for (SSTableScanner scanner : scanners)
+bytes += scanner.getFileLength();
+this.totalBytes = bytes;
+
 this.throttle = new Throttle(toString(), new 
Throttle.ThroughputFunction()
 {
 /** @return Instantaneous throughput target in bytes per 
millisecond. */

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
index 5e0dfa7..65e4b54 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
@@ -41,7 +41,6 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 private static Logger logger = 
LoggerFactory.getLogger(CompactionIterable.class);
 
 private long row;
-private final List scanners;
 
 private static final Comparator comparator = new 
Comparator()
 {
@@ -58,12 +57,8 @@ public class CompactionIterable extends 
AbstractCompactionIterable
 
 protected CompactionIterable(OperationType type, List 
scanners, CompactionController controller)
 {
-super(controller, type);
-this.scanners = scanners;
+super(controller, type, scanners);
 row = 0;
-totalBytes = bytesRead = 0;
-for (SSTableScanner scanner : scanners)
-totalBytes += scanner.getFileLength();
 }
 
 protected static List getScanners(Iterable 
sstables) throws IOException

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3931ee70/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java 
b/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
index dba8f55..52f81e0 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/ParallelCompactionIterable.java
+++ 
b/src/java/org/apache/cassandra/d

[jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4093:
---

bq. we agreed on CASSANDRA-3782 that it could sometimes be usefull to index a 
specific column in a wide row as a way of 'tagging' such wide rows 

But you don't need to support indexing the CT column itself, to support that 
use case.  More consistent to have a "tag" sparse column and index that instead.

bq. really adding new and useful flexibility

New, yes; useful? dubious.

We've barely educated people on CQL3 wide rows as it is, now is not a good time 
to complicate things further.  Let's take an incremental approach and add such 
things in response to user demand, should it materialize, instead of adding 
features "because we can."

> schema_* CFs do not respect column comparator which leads to CLI commands 
> failure.
> --
>
> Key: CASSANDRA-4093
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4093
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Dave Brosius
>Assignee: Sylvain Lebresne
> Fix For: 1.1.0
>
> Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch
>
>
> ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize 
> schema_* CFs column_metadata do not respect CF comparator and use 
> ByteBufferUtil.bytes(...) for column names which creates problems in CLI and 
> probably in other places.
> The CompositeType validator throws exception on first column
> String columnName = columnNameValidator.getString(columnDef.name);
> Because it appears the composite type length header is wrong (25455)
> AbstractCompositeType.getWithShortLength
> java.lang.IllegalArgumentException
>   at java.nio.Buffer.limit(Buffer.java:247)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>   at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139)
>   at 
> org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046)
>   at 
> org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969)
>   at 
> org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574)
> (seen in trunk)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4076) Remove get{Indexed,Sliced}ReadBufferSizeInKB methods

2012-03-30 Thread Sylvain Lebresne (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne updated CASSANDRA-4076:


Attachment: 4076.txt

Trivial patch attached. I'd like to get that in 1.1.0 just before this remove a 
(useless) option from the cassandra.yaml file and I want to avoid doing that on 
a minor release. Besides, this really just remove dead code.

> Remove get{Indexed,Sliced}ReadBufferSizeInKB methods
> 
>
> Key: CASSANDRA-4076
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4076
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Affects Versions: 1.0.0
>Reporter: Sylvain Lebresne
>Priority: Trivial
> Fix For: 1.1.0
>
> Attachments: 4076.txt
>
>
> Since CASSANDRA-3171, the 
> DatabaseDescriptor.get{Indexed,Sliced}ReadBufferSizeInKB methods are dead 
> code (they are used as bufferSize argument to SSTableReader.getFileDataInput 
> but that method ignore the argument). This means in particular that we can 
> remove the configuration option sliced_buffer_size_in_kb (we shouldn't do 
> that in 1.0 which is why I targeted to 1.1.0, though we could add a message 
> in 1.0 that this argument is ignored).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3758) parallel compaction hang (on large rows?)

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-3758:
---

bq. there seems to be tons of CompactionReducer threads, coming for lots of 
different ParallelCompactionIterable, which would suggest we don't shutdown the 
executor of CompactionReducer correctly. But I don't see why that would happen

I assume they are using a version from before CASSANDRA-3711.

bq. attaching a patch to fix that problem

+1

> parallel compaction hang (on large rows?)
> -
>
> Key: CASSANDRA-3758
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3758
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Jackson Chung
>Assignee: Sylvain Lebresne
>  Labels: compaction, datastax_qa
> Fix For: 1.0.9
>
> Attachments: 
> 0001-Fix-totalBytes-count-for-ParallelCompactionIterable.txt, 
> cassandra.log.zip
>
>
> it is observed that:
> nodetool -h 127.0.0.1 -p 8080 compactionstats
> pending tasks: 1
> compaction type keyspace column family bytes compacted bytes total progress
> Compaction SyncCoreComputedContactNetworks 119739938 0 n/a
> and that is not moving (ie the bytes compacted never increase, the bytes 
> total stay 0).
> this is probably going to be difficult to reproduce, as the problem is 
> observed when compacting 15 large sstables (total ~300G).
> attaching the thread dumps (along with logs), when such happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4095) Internal error processing get_slice (NullPointerException)

2012-03-30 Thread Jonathan Ellis (Commented) (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4095:
---

I wrote the patch against 1.1, which already has that method.  Sorry for not 
being clear.

> Internal error processing get_slice (NullPointerException)
> --
>
> Key: CASSANDRA-4095
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4095
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.0.2
> Environment: Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
>Reporter: John Laban
>Assignee: Jonathan Ellis
>Priority: Minor
> Fix For: 1.0.9, 1.1.0
>
> Attachments: 4095.txt, 4095_v2.txt
>
>
> I get this pretty regularly.  It seems to happen transiently on multiple 
> nodes in my cluster, every so often, and goes away.
> ERROR [Thrift:45] 2012-03-26 19:59:12,024 Cassandra.java (line 3041) Internal 
> error processing get_slice
> java.lang.NullPointerException
> at 
> org.apache.cassandra.db.SliceFromReadCommand.maybeGenerateRetryCommand(SliceFromReadCommand.java:76)
> at 
> org.apache.cassandra.service.StorageProxy.fetchRows(StorageProxy.java:724)
> at 
> org.apache.cassandra.service.StorageProxy.read(StorageProxy.java:564)
> at 
> org.apache.cassandra.thrift.CassandraServer.readColumnFamily(CassandraServer.java:128)
> at 
> org.apache.cassandra.thrift.CassandraServer.getSlice(CassandraServer.java:283)
> at 
> org.apache.cassandra.thrift.CassandraServer.multigetSliceInternal(CassandraServer.java:365)
> at 
> org.apache.cassandra.thrift.CassandraServer.get_slice(CassandraServer.java:326)
> at 
> org.apache.cassandra.thrift.Cassandra$Processor$get_slice.process(Cassandra.java:3033)
> at 
> org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2889)
> at 
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:187)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> The line in question is (I think) the one below, so it looks like the column 
> family reference for a row can sometimes be null?
> int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
> Here is my column family (on 1.0.8):
> ColumnFamily: WorkQueue (Super)
>   Key Validation Class: org.apache.cassandra.db.marshal.UTF8Type
>   Default column value validator: org.apache.cassandra.db.marshal.UTF8Type
>   Columns sorted by: 
> org.apache.cassandra.db.marshal.UTF8Type/org.apache.cassandra.db.marshal.UTF8Type
>   Row cache size / save period in seconds / keys to save : 0.0/0/all
>   Row Cache Provider: 
> org.apache.cassandra.cache.ConcurrentLinkedHashCacheProvider
>   Key cache size / save period in seconds: 0.0/0
>   GC grace seconds: 0
>   Compaction min/max thresholds: 4/32
>   Read repair chance: 0.0
>   Replicate on write: false
>   Bloom Filter FP chance: default
>   Built indexes: []
>   Compaction Strategy: 
> org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4088) Respect 1.0 cache settings as much as possible when upgrading

2012-03-30 Thread Pavel Yaskevich (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-4088?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Yaskevich updated CASSANDRA-4088:
---

Attachment: CASSANDRA-4088.patch

> Respect 1.0 cache settings as much as possible when upgrading
> -
>
> Key: CASSANDRA-4088
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4088
> Project: Cassandra
>  Issue Type: Improvement
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Pavel Yaskevich
> Fix For: 1.1.0
>
> Attachments: CASSANDRA-4088.patch
>
>
> When converting a 1.0 schema to 1.1, we should look at the key and row caches 
> (just whether they are en- or dis-abled) and set the caching setting 
> accordingly.  I think right now upgrading means all your row caching is gone 
> until you update it manually.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




  1   2   >