[jira] [Commented] (CASSANDRA-10068) Batchlog replay fails with exception after a node is decommissioned
[ https://issues.apache.org/jira/browse/CASSANDRA-10068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696884#comment-14696884 ] Marcus Eriksson commented on CASSANDRA-10068: - bq. java.lang.RuntimeException: Trying to get the view natural endpoint on a non-data replica this is due to the fact that while we are decommissioning, the leaving node is still in TokenMetadata so the nodes receiving the rows don't think they should own them. Patch here: https://github.com/krummas/cassandra/commits/marcuse/10068 that solves that. DTest here: https://github.com/krummas/cassandra-dtest/commits/marcuse/10068 [~jkni] I doubt this is related to the other errors you are seeing so I will keep looking for that, but could you rerun the test just to make sure it is not related? Batchlog replay fails with exception after a node is decommissioned --- Key: CASSANDRA-10068 URL: https://issues.apache.org/jira/browse/CASSANDRA-10068 Project: Cassandra Issue Type: Bug Reporter: Joel Knighton Assignee: Marcus Eriksson Fix For: 3.0.0 rc1 Attachments: n1.log, n2.log, n3.log, n4.log, n5.log This issue is reproducible through a Jepsen test of materialized views that crashes and decommissions nodes throughout the test. At the conclusion of the test, a batchlog replay is initiated through nodetool and hits the following assertion due to a missing host ID: https://github.com/apache/cassandra/blob/3413e557b95d9448b0311954e9b4f53eaf4758cd/src/java/org/apache/cassandra/service/StorageProxy.java#L1197 A nodetool status on the node with failed batchlog replay shows the following entry for the decommissioned node: DN 10.0.0.5 ? 256 ? null rack1 On the unaffected nodes, there is no entry for the decommissioned node as expected. There are occasional hits of the same assertions for logs in other nodes; it looks like the issue might occasionally resolve itself, but one node seems to have the errant null entry indefinitely. In logs for the nodes, this possibly unrelated exception also appears: java.lang.RuntimeException: Trying to get the view natural endpoint on a non-data replica at org.apache.cassandra.db.view.MaterializedViewUtils.getViewNaturalEndpoint(MaterializedViewUtils.java:91) ~[apache-cassandra-3.0.0-alpha1-SNAPSHOT.jar:3.0.0-alpha1-SNAPSHOT] I have a running cluster with the issue on my machine; it is also repeatable. Nothing stands out in the logs of the decommissioned node (n4) for me. The logs of each node in the cluster are attached. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6717) Modernize schema tables
[ https://issues.apache.org/jira/browse/CASSANDRA-6717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696908#comment-14696908 ] Sam Tunnicliffe commented on CASSANDRA-6717: Pulling in the new version of the driver required some changes to UDFs. I've pushed a new version [here|https://github.com/beobal/cassandra/tree/6717] with that done and pretty much all of the previously failing unit tests are now passing. [~snazy], would you mind reviewing the UDF changes please? It's only the last commit on that branch. FTR, there's one new UF test failure - {{UFTest#testFunctionWithFrozenTupleType}} - see [this comment|https://datastax-oss.atlassian.net/browse/JAVA-875?focusedCommentId=23660page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-23660] for details. Modernize schema tables --- Key: CASSANDRA-6717 URL: https://issues.apache.org/jira/browse/CASSANDRA-6717 Project: Cassandra Issue Type: Sub-task Reporter: Sylvain Lebresne Assignee: Sam Tunnicliffe Labels: client-impacting, doc-impacting Fix For: 3.0 beta 1 There is a few problems/improvements that can be done with the way we store schema: # CASSANDRA-4988: as explained on the ticket, storing the comparator is now redundant (or almost, we'd need to store whether the table is COMPACT or not too, which we don't currently is easy and probably a good idea anyway), it can be entirely reconstructed from the infos in schema_columns (the same is true of key_validator and subcomparator, and replacing default_validator by a COMPACT_VALUE column in all case is relatively simple). And storing the comparator as an opaque string broke concurrent updates of sub-part of said comparator (concurrent collection addition or altering 2 separate clustering columns typically) so it's really worth removing it. # CASSANDRA-4603: it's time to get rid of those ugly json maps. I'll note that schema_keyspaces is a problem due to its use of COMPACT STORAGE, but I think we should fix it once and for-all nonetheless (see below). # For CASSANDRA-6382 and to allow indexing both map keys and values at the same time, we'd need to be able to have more than one index definition for a given column. # There is a few mismatches in table options between the one stored in the schema and the one used when declaring/altering a table which would be nice to fix. The compaction, compression and replication maps are one already mentioned from CASSANDRA-4603, but also for some reason 'dclocal_read_repair_chance' in CQL is called just 'local_read_repair_chance' in the schema table, and 'min/max_compaction_threshold' are column families option in the schema but just compaction options for CQL (which makes more sense). None of those issues are major, and we could probably deal with them independently but it might be simpler to just fix them all in one shot so I wanted to sum them all up here. In particular, the fact that 'schema_keyspaces' uses COMPACT STORAGE is annoying (for the replication map, but it may limit future stuff too) which suggest we should migrate it to a new, non COMPACT table. And while that's arguably a detail, it wouldn't hurt to rename schema_columnfamilies to schema_tables for the years to come since that's the prefered vernacular for CQL. Overall, what I would suggest is to move all schema tables to a new keyspace, named 'schema' for instance (or 'system_schema' but I prefer the shorter version), and fix all the issues above at once. Since we currently don't exchange schema between nodes of different versions, all we'd need to do that is a one shot startup migration, and overall, I think it could be simpler for clients to deal with one clear migration than to have to handle minor individual changes all over the place. I also think it's somewhat cleaner conceptually to have schema tables in their own keyspace since they are replicated through a different mechanism than other system tables. If we do that, we could, for instance, migrate to the following schema tables (details up for discussion of course): {noformat} CREATE TYPE user_type ( name text, column_names listtext, column_types listtext ) CREATE TABLE keyspaces ( name text PRIMARY KEY, durable_writes boolean, replication mapstring, string, user_types mapstring, user_type ) CREATE TYPE trigger_definition ( name text, options maptex, text ) CREATE TABLE tables ( keyspace text, name text, id uuid, table_type text, // COMPACT, CQL or SUPER dropped_columns maptext, bigint, triggers maptext, trigger_definition, // options comment text, compaction maptext, text, compression maptext, text, read_repair_chance double,
[jira] [Updated] (CASSANDRA-6717) Modernize schema tables
[ https://issues.apache.org/jira/browse/CASSANDRA-6717?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sam Tunnicliffe updated CASSANDRA-6717: --- Reviewer: Robert Stupp (was: Aleksey Yeschenko) Modernize schema tables --- Key: CASSANDRA-6717 URL: https://issues.apache.org/jira/browse/CASSANDRA-6717 Project: Cassandra Issue Type: Sub-task Reporter: Sylvain Lebresne Assignee: Sam Tunnicliffe Labels: client-impacting, doc-impacting Fix For: 3.0 beta 1 There is a few problems/improvements that can be done with the way we store schema: # CASSANDRA-4988: as explained on the ticket, storing the comparator is now redundant (or almost, we'd need to store whether the table is COMPACT or not too, which we don't currently is easy and probably a good idea anyway), it can be entirely reconstructed from the infos in schema_columns (the same is true of key_validator and subcomparator, and replacing default_validator by a COMPACT_VALUE column in all case is relatively simple). And storing the comparator as an opaque string broke concurrent updates of sub-part of said comparator (concurrent collection addition or altering 2 separate clustering columns typically) so it's really worth removing it. # CASSANDRA-4603: it's time to get rid of those ugly json maps. I'll note that schema_keyspaces is a problem due to its use of COMPACT STORAGE, but I think we should fix it once and for-all nonetheless (see below). # For CASSANDRA-6382 and to allow indexing both map keys and values at the same time, we'd need to be able to have more than one index definition for a given column. # There is a few mismatches in table options between the one stored in the schema and the one used when declaring/altering a table which would be nice to fix. The compaction, compression and replication maps are one already mentioned from CASSANDRA-4603, but also for some reason 'dclocal_read_repair_chance' in CQL is called just 'local_read_repair_chance' in the schema table, and 'min/max_compaction_threshold' are column families option in the schema but just compaction options for CQL (which makes more sense). None of those issues are major, and we could probably deal with them independently but it might be simpler to just fix them all in one shot so I wanted to sum them all up here. In particular, the fact that 'schema_keyspaces' uses COMPACT STORAGE is annoying (for the replication map, but it may limit future stuff too) which suggest we should migrate it to a new, non COMPACT table. And while that's arguably a detail, it wouldn't hurt to rename schema_columnfamilies to schema_tables for the years to come since that's the prefered vernacular for CQL. Overall, what I would suggest is to move all schema tables to a new keyspace, named 'schema' for instance (or 'system_schema' but I prefer the shorter version), and fix all the issues above at once. Since we currently don't exchange schema between nodes of different versions, all we'd need to do that is a one shot startup migration, and overall, I think it could be simpler for clients to deal with one clear migration than to have to handle minor individual changes all over the place. I also think it's somewhat cleaner conceptually to have schema tables in their own keyspace since they are replicated through a different mechanism than other system tables. If we do that, we could, for instance, migrate to the following schema tables (details up for discussion of course): {noformat} CREATE TYPE user_type ( name text, column_names listtext, column_types listtext ) CREATE TABLE keyspaces ( name text PRIMARY KEY, durable_writes boolean, replication mapstring, string, user_types mapstring, user_type ) CREATE TYPE trigger_definition ( name text, options maptex, text ) CREATE TABLE tables ( keyspace text, name text, id uuid, table_type text, // COMPACT, CQL or SUPER dropped_columns maptext, bigint, triggers maptext, trigger_definition, // options comment text, compaction maptext, text, compression maptext, text, read_repair_chance double, dclocal_read_repair_chance double, gc_grace_seconds int, caching text, rows_per_partition_to_cache text, default_time_to_live int, min_index_interval int, max_index_interval int, speculative_retry text, populate_io_cache_on_flush boolean, bloom_filter_fp_chance double memtable_flush_period_in_ms int, PRIMARY KEY (keyspace, name) ) CREATE TYPE index_definition ( name text, index_type text, options maptext, text ) CREATE TABLE columns ( keyspace text, table text, name text, kind text, // PARTITION_KEY, CLUSTERING_COLUMN, REGULAR or COMPACT_VALUE component_index int; type
[jira] [Commented] (CASSANDRA-9917) MVs should validate gc grace seconds on the tables involved
[ https://issues.apache.org/jira/browse/CASSANDRA-9917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696912#comment-14696912 ] Aleksey Yeschenko commented on CASSANDRA-9917: -- I also want to point out that it's neither batch log or hints issue, it also applies to commit log replays - see CASSANDRA-8498. MVs should validate gc grace seconds on the tables involved --- Key: CASSANDRA-9917 URL: https://issues.apache.org/jira/browse/CASSANDRA-9917 Project: Cassandra Issue Type: Bug Reporter: Aleksey Yeschenko Assignee: Paulo Motta Labels: materializedviews Fix For: 3.0.0 rc1 For correctness reasons (potential resurrection of dropped values), batchlog entries are TTLs with the lowest gc grace second of all the tables involved in a batch. It means that if gc gs is set to 0 in one of the tables, the batchlog entry will be dead on arrival, and never replayed. We should probably warn against such LOGGED writes taking place, in general, but for MVs, we must validate that gc gs on the base table (and on the MV table, if we should allow altering gc gs there at all), is never set too low, or else. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-10069) Method to clear dropped messages JMX counters
Matt Stump created CASSANDRA-10069: -- Summary: Method to clear dropped messages JMX counters Key: CASSANDRA-10069 URL: https://issues.apache.org/jira/browse/CASSANDRA-10069 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Matt Stump Currently there is no way to clear the dropped message counters other than restart the node. A user will resolve the underlying issue, but reporting will continue to fire alerts because the dropped mutation count is greater than zero. It would be helpful if there were a JMX method, and ideally a nodetool command that allowed for the counters to be reset/cleared. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7066) Simplify (and unify) cleanup of compaction leftovers
[ https://issues.apache.org/jira/browse/CASSANDRA-7066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696634#comment-14696634 ] Benedict commented on CASSANDRA-7066: - bq. I did not switch the hard failure flag to true for any clients except for the new sstableutil tool. I am not sure which ones are good candidates, perhaps all standalone tools or when we read the snapshot directories? I more meant for this to be the _default_ behaviour (particularly for {{Directories}}) so that any consumers that don't consider this and set the appropriate flag can be informed of their mistake (eventually). Ignoring errors should be a consciously opted into decision. Of course, we could just hard fail the {{Directories}} list immediately if such a flag hasn't been set, and perhaps that's a better option still. I think it would also be better for this behaviour to be defined as an enum as opposed to a boolean flag. Otherwise LGTM. Thanks! Simplify (and unify) cleanup of compaction leftovers Key: CASSANDRA-7066 URL: https://issues.apache.org/jira/browse/CASSANDRA-7066 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: Stefania Priority: Minor Labels: benedict-to-commit, compaction Fix For: 3.0 alpha 1 Attachments: 7066.txt Currently we manage a list of in-progress compactions in a system table, which we use to cleanup incomplete compactions when we're done. The problem with this is that 1) it's a bit clunky (and leaves us in positions where we can unnecessarily cleanup completed files, or conversely not cleanup files that have been superceded); and 2) it's only used for a regular compaction - no other compaction types are guarded in the same way, so can result in duplication if we fail before deleting the replacements. I'd like to see each sstable store in its metadata its direct ancestors, and on startup we simply delete any sstables that occur in the union of all ancestor sets. This way as soon as we finish writing we're capable of cleaning up any leftovers, so we never get duplication. It's also much easier to reason about. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Resolved] (CASSANDRA-10069) Method to clear dropped messages JMX counters
[ https://issues.apache.org/jira/browse/CASSANDRA-10069?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis resolved CASSANDRA-10069. Resolution: Won't Fix We rely on monitoring tools to be smart enough to track delta and not just total. Not just for dropped counts but for everything. Method to clear dropped messages JMX counters - Key: CASSANDRA-10069 URL: https://issues.apache.org/jira/browse/CASSANDRA-10069 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Matt Stump Currently there is no way to clear the dropped message counters other than restart the node. A user will resolve the underlying issue, but reporting will continue to fire alerts because the dropped mutation count is greater than zero. It would be helpful if there were a JMX method, and ideally a nodetool command that allowed for the counters to be reset/cleared. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/6] cassandra git commit: Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771
Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2d8ccf07 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2d8ccf07 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2d8ccf07 Branch: refs/heads/cassandra-3.0 Commit: 2d8ccf077e0143ed2d25f244b53be54d215f7c42 Parents: ab14336 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:32:27 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:32:27 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2d8ccf07/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java -- diff --git a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java index 0cebb03..7aaf9c9 100644 --- a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java +++ b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java @@ -415,12 +415,12 @@ public class SelectionColumnMappingTest extends CQLTester private void testUserDefinedAggregate() throws Throwable { -String sFunc = createFunction(KEYSPACE, int, - CREATE FUNCTION %s (a int, b int) + - RETURNS NULL ON NULL INPUT + - RETURNS int + - LANGUAGE javascript + - AS 'a + b'); +String sFunc = parseFunctionName(createFunction(KEYSPACE, int, + CREATE FUNCTION %s (a int, b int) + + RETURNS NULL ON NULL INPUT + + RETURNS int + + LANGUAGE javascript + + AS 'a + b')).name; String aFunc = createAggregate(KEYSPACE, int, int, CREATE AGGREGATE %s (int) +
[jira] [Updated] (CASSANDRA-9426) Provide a per-table text-blob map for storing extra metadata
[ https://issues.apache.org/jira/browse/CASSANDRA-9426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benjamin Lerer updated CASSANDRA-9426: -- Attachment: 9426.txt * the results for the unit tests are [here|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-9424-testall/lastCompletedBuild/testReport/] * the results for the DTests are [here|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-9424-dtest/lastCompletedBuild/testReport/] Provide a per-table text-blob map for storing extra metadata - Key: CASSANDRA-9426 URL: https://issues.apache.org/jira/browse/CASSANDRA-9426 Project: Cassandra Issue Type: Sub-task Reporter: Aleksey Yeschenko Assignee: Benjamin Lerer Labels: client-impacting Fix For: 3.0 beta 1 Attachments: 9426.txt For some applications that build on Cassandra it's important to be able to attach extra metadata to tables, and have it be distributed via regular Cassandra schema paths. I propose a new {{extensions maptext,blob}} table param for just that. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
[ https://issues.apache.org/jira/browse/CASSANDRA-10071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-10071: --- Fix Version/s: 2.2.x Unable to start Thrift RPC server in cassandra deployment created using cassandra-all - Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci Assignee: Robert Stupp Fix For: 2.2.x Attachments: cassandra-2.2-CASSANDRA-10071.txt We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-8671) Give compaction strategy more control over where sstables are created, including for flushing and streaming.
[ https://issues.apache.org/jira/browse/CASSANDRA-8671?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Blake Eggleston updated CASSANDRA-8671: --- Attachment: 8671-giving-compaction-strategies-more-control-over.txt patch against cassandra-3.0 attached. This provides an interface for both an sstablewriter wrapper for flush and stream, as well as a compaction aware writer interface. It also optionally lets compaction strategies use additional directories. Give compaction strategy more control over where sstables are created, including for flushing and streaming. Key: CASSANDRA-8671 URL: https://issues.apache.org/jira/browse/CASSANDRA-8671 Project: Cassandra Issue Type: Improvement Reporter: Blake Eggleston Assignee: Blake Eggleston Fix For: 3.x Attachments: 0001-C8671-creating-sstable-writers-for-flush-and-stream-.patch, 8671-giving-compaction-strategies-more-control-over.txt This would enable routing different partitions to different disks based on some user defined parameters. My initial take on how to do this would be to make an interface from SSTableWriter, and have a table's compaction strategy do all SSTableWriter instantiation. Compaction strategies could then implement their own SSTableWriter implementations (which basically wrap one or more normal sstablewriters) for compaction, flushing, and streaming. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
[ https://issues.apache.org/jira/browse/CASSANDRA-10071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-10071: --- Assignee: Robert Stupp Unable to start Thrift RPC server in cassandra deployment created using cassandra-all - Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci Assignee: Robert Stupp Fix For: 2.2.x Attachments: cassandra-2.2-CASSANDRA-10071.txt We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9625) GraphiteReporter not reporting
[ https://issues.apache.org/jira/browse/CASSANDRA-9625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697008#comment-14697008 ] Eric Evans commented on CASSANDRA-9625: --- What we eventually did was bang together https://github.com/wikimedia/cassandra-metrics-collector, which collects from JMX, and pushes to Graphite using metric names that are compatible with GraphiteReporter (i.e. you can leverage your existing graphs, etc). Hopefully this is useful to anyone else encountering this problem. GraphiteReporter not reporting -- Key: CASSANDRA-9625 URL: https://issues.apache.org/jira/browse/CASSANDRA-9625 Project: Cassandra Issue Type: Bug Environment: Debian Jessie, 7u79-2.5.5-1~deb8u1, Cassandra 2.1.3 Reporter: Eric Evans Assignee: T Jake Luciani Attachments: metrics.yaml, thread-dump.log When upgrading from 2.1.3 to 2.1.6, the Graphite metrics reporter stops working. The usual startup is logged, and one batch of samples is sent, but the reporting interval comes and goes, and no other samples are ever sent. The logs are free from errors. Frustratingly, metrics reporting works in our smaller (staging) environment on 2.1.6; We are able to reproduce this on all 6 of production nodes, but not on a 3 node (otherwise identical) staging cluster (maybe it takes a certain level of concurrency?). Attached is a thread dump, and our metrics.yaml. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/6] cassandra git commit: Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 ab1433600 - 2d8ccf077 refs/heads/cassandra-3.0 3413e557b - 8b7caa136 refs/heads/trunk 1db386e46 - f43663aaf Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2d8ccf07 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2d8ccf07 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2d8ccf07 Branch: refs/heads/cassandra-2.2 Commit: 2d8ccf077e0143ed2d25f244b53be54d215f7c42 Parents: ab14336 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:32:27 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:32:27 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2d8ccf07/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java -- diff --git a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java index 0cebb03..7aaf9c9 100644 --- a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java +++ b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java @@ -415,12 +415,12 @@ public class SelectionColumnMappingTest extends CQLTester private void testUserDefinedAggregate() throws Throwable { -String sFunc = createFunction(KEYSPACE, int, - CREATE FUNCTION %s (a int, b int) + - RETURNS NULL ON NULL INPUT + - RETURNS int + - LANGUAGE javascript + - AS 'a + b'); +String sFunc = parseFunctionName(createFunction(KEYSPACE, int, + CREATE FUNCTION %s (a int, b int) + + RETURNS NULL ON NULL INPUT + + RETURNS int + + LANGUAGE javascript + + AS 'a + b')).name; String aFunc = createAggregate(KEYSPACE, int, int, CREATE AGGREGATE %s (int) +
[jira] [Commented] (CASSANDRA-9771) Revert CASSANDRA-9542 (allow native functions in UDA)
[ https://issues.apache.org/jira/browse/CASSANDRA-9771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697011#comment-14697011 ] Sam Tunnicliffe commented on CASSANDRA-9771: This broke {{SelectionColumnMappingTest}} as it was creating an aggregate using a fully qualified state function. I've ninja'd a fix in {{2d8ccf077e0143ed2d25f244b53be54d215f7c42}} Revert CASSANDRA-9542 (allow native functions in UDA) - Key: CASSANDRA-9771 URL: https://issues.apache.org/jira/browse/CASSANDRA-9771 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Assignee: Robert Stupp Priority: Blocker Fix For: 2.2.0, 3.0.0 rc1 As [noted in this comment|https://issues.apache.org/jira/browse/CASSANDRA-9542?focusedCommentId=14620414page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14620414] of CASSANDRA-9542, we should revert it. Setting priority to blocker, since once 9542 gets into 2.2.0, we cannot revert it. Will provide a patch soon. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[5/6] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8b7caa13 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8b7caa13 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8b7caa13 Branch: refs/heads/cassandra-3.0 Commit: 8b7caa1361897aa387cde94f19ec7b24ab7a535e Parents: 3413e55 2d8ccf0 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:35:12 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:35:12 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b7caa13/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java --
[3/6] cassandra git commit: Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771
Ninja fix SelectionColumnMappingTest broken by CASSANDRA-9771 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2d8ccf07 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2d8ccf07 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2d8ccf07 Branch: refs/heads/trunk Commit: 2d8ccf077e0143ed2d25f244b53be54d215f7c42 Parents: ab14336 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:32:27 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:32:27 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2d8ccf07/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java -- diff --git a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java index 0cebb03..7aaf9c9 100644 --- a/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java +++ b/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java @@ -415,12 +415,12 @@ public class SelectionColumnMappingTest extends CQLTester private void testUserDefinedAggregate() throws Throwable { -String sFunc = createFunction(KEYSPACE, int, - CREATE FUNCTION %s (a int, b int) + - RETURNS NULL ON NULL INPUT + - RETURNS int + - LANGUAGE javascript + - AS 'a + b'); +String sFunc = parseFunctionName(createFunction(KEYSPACE, int, + CREATE FUNCTION %s (a int, b int) + + RETURNS NULL ON NULL INPUT + + RETURNS int + + LANGUAGE javascript + + AS 'a + b')).name; String aFunc = createAggregate(KEYSPACE, int, int, CREATE AGGREGATE %s (int) +
[6/6] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f43663aa Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f43663aa Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f43663aa Branch: refs/heads/trunk Commit: f43663aafbdb3eaf1fb05f6936376ae0df3faf2e Parents: 1db386e 8b7caa1 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:38:41 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:38:41 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) --
[4/6] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8b7caa13 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8b7caa13 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8b7caa13 Branch: refs/heads/trunk Commit: 8b7caa1361897aa387cde94f19ec7b24ab7a535e Parents: 3413e55 2d8ccf0 Author: Sam Tunnicliffe s...@beobal.com Authored: Fri Aug 14 14:35:12 2015 +0100 Committer: Sam Tunnicliffe s...@beobal.com Committed: Fri Aug 14 14:35:12 2015 +0100 -- .../cql3/selection/SelectionColumnMappingTest.java | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b7caa13/test/unit/org/apache/cassandra/cql3/selection/SelectionColumnMappingTest.java --
[jira] [Created] (CASSANDRA-10070) Automatic repair scheduling
Marcus Olsson created CASSANDRA-10070: - Summary: Automatic repair scheduling Key: CASSANDRA-10070 URL: https://issues.apache.org/jira/browse/CASSANDRA-10070 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Marcus Olsson Assignee: Marcus Olsson Priority: Minor Scheduling and running repairs in a Cassandra cluster is most often a required task, but this can both be hard for new users and it also requires a bit of manual configuration. There are good tools out there that can be used to simplify things, but wouldn't this be a good feature to have inside of Cassandra? To automatically schedule and run repairs, so that when you start up your cluster it basically maintains itself in terms of normal anti-entropy, with the possibility for manual configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10070) Automatic repair scheduling
[ https://issues.apache.org/jira/browse/CASSANDRA-10070?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcus Olsson updated CASSANDRA-10070: -- Description: Scheduling and running repairs in a Cassandra cluster is most often a required task, but this can both be hard for new users and it also requires a bit of manual configuration. There are good tools out there that can be used to simplify things, but wouldn't this be a good feature to have inside of Cassandra? To automatically schedule and run repairs, so that when you start up your cluster it basically maintains itself in terms of normal anti-entropy, with the possibility for manual configuration. (was: Scheduling and running repairs in a Cassandra cluster is most often a required task, but this can both be hard for new users and it also requires a bit of manual configuration. There are good tools out there that can be used to simplify things, but wouldn't this be a good feature to have inside of Cassandra? To automatically schedule and run repairs, so that when you start up your cluster it basically maintains itself in terms of normal anti-entropy, with the possibility for manual configuration.) Automatic repair scheduling --- Key: CASSANDRA-10070 URL: https://issues.apache.org/jira/browse/CASSANDRA-10070 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Marcus Olsson Assignee: Marcus Olsson Priority: Minor Scheduling and running repairs in a Cassandra cluster is most often a required task, but this can both be hard for new users and it also requires a bit of manual configuration. There are good tools out there that can be used to simplify things, but wouldn't this be a good feature to have inside of Cassandra? To automatically schedule and run repairs, so that when you start up your cluster it basically maintains itself in terms of normal anti-entropy, with the possibility for manual configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
Lukas Krejci created CASSANDRA-10071: Summary: Unable to start Thrift RPC server in cassandra deployment created using cassandra-all Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
[ https://issues.apache.org/jira/browse/CASSANDRA-10071?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696742#comment-14696742 ] Peter Palaga commented on CASSANDRA-10071: -- This seems to be the location where thrift-server 0.3.5 is packaged with 2.2 : https://github.com/apache/cassandra/blob/cassandra-2.2/build.xml#L543 whereas in 2.1, there is thrift-server 0.3.7: https://github.com/apache/cassandra/blob/cassandra-2.1/build.xml#L508 Unable to start Thrift RPC server in cassandra deployment created using cassandra-all - Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10070) Automatic repair scheduling
[ https://issues.apache.org/jira/browse/CASSANDRA-10070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14696755#comment-14696755 ] Marcus Olsson commented on CASSANDRA-10070: --- I have previously done some work on something similar to this, although it was an external Java process that used JMX. There it divides all tables as _Jobs_ that is prioritized against each other in a consistent manner. A Job is then further divided into _Tasks_, where each task is responsible to repair a certain range for that table. A Job can be seen as a atomic unit, where the success of the Job was based on the success of all it's Tasks. It used LWT with TTL to create a lock on which node has the right to run repair right now. Since it used TTL, the lock would disappear in case the node holding the lock would die. It also used a repair history to be able to continue from where it left of when restarted. --- *Some ideas for the implementation:* *Core* By reusing some of the concepts it would be possible to create a pluggable interface that can be used to prioritize these Jobs on a node level. By inserting this priority(an simple integer?) into a distributed table it would be possible for other nodes to see which node has the highest priority to run a repair, to avoid starvation. Then before running the repair there could be another pluggable interface that can prevent repairs from starting under certain circumstances(e.g. node load). The automatic repair of a table could be enabled/disabled by a table property. *Nodetool* * Add possibility to enable/disable all automatic repair. * Add possibility to run a repair of a table when possible(that uses this distributed scheduling). Automatic repair scheduling --- Key: CASSANDRA-10070 URL: https://issues.apache.org/jira/browse/CASSANDRA-10070 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Marcus Olsson Assignee: Marcus Olsson Priority: Minor Scheduling and running repairs in a Cassandra cluster is most often a required task, but this can both be hard for new users and it also requires a bit of manual configuration. There are good tools out there that can be used to simplify things, but wouldn't this be a good feature to have inside of Cassandra? To automatically schedule and run repairs, so that when you start up your cluster it basically maintains itself in terms of normal anti-entropy, with the possibility for manual configuration. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-10072) Replica(s) failed to execute read on simple select on stress-created table with 1 nodes
Jim Witschey created CASSANDRA-10072: Summary: Replica(s) failed to execute read on simple select on stress-created table with 1 nodes Key: CASSANDRA-10072 URL: https://issues.apache.org/jira/browse/CASSANDRA-10072 Project: Cassandra Issue Type: Bug Reporter: Jim Witschey Fix For: 3.0.x Attachments: repro.sh This looks similar to CASSANDRA-9825, though that was marked as resolved. To reproduce, create a multi-node cluster and insert values using stress. Then, try to run a {{SELECT}} statement on the {{keyspace1.standard1}} table created by stress. Running the select through the Python driver, I consistently get the result {code} cassandra.ReadFailure: code=1300 [Replica(s) failed to execute read] message=Operation failed - received 0 responses and 1 failures info={'failures': 1, 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} {code} I've attached a script that reproduces it via the {{ccm}} CLI. As the script also demonstrates, the error doesn't show under 2.2, or when there is only 1 node in the cluster. In the repro script, I've also included a commented-out insertion via cqlsh. If you uncomment that and comment out the stress line, the script demonstrates that the error doesn't occur when the table was created/inserted into via cqlsh. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/3] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: CHANGES.txt Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7b026964 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7b026964 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7b026964 Branch: refs/heads/trunk Commit: 7b026964b86ce07447e7904ab0286d40a203f0c6 Parents: 8b7caa1 23826f7 Author: T Jake Luciani j...@apache.org Authored: Fri Aug 14 10:26:31 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:26:31 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7b026964/CHANGES.txt -- diff --cc CHANGES.txt index fae0cfc,6a9dc1e..e7cc12e --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,19 -1,5 +1,20 @@@ -2.2.1 +3.0.0-beta1 + * Add option to only purge repaired tombstones (CASSANDRA-6434) + * Change authorization handling for MVs (CASSANDRA-9927) + * Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026) + * Fix row deletion bug for Materialized Views (CASSANDRA-10014) + * Support mixed-version clusters with Cassandra 2.1 and 2.2 (CASSANDRA-9704) + * Fix multiple slices on RowSearchers (CASSANDRA-10002) + * Fix bug in merging of collections (CASSANDRA-10001) + * Optimize batchlog replay to avoid full scans (CASSANDRA-7237) + * Repair improvements when using vnodes (CASSANDRA-5220) + * Disable scripted UDFs by default (CASSANDRA-9889) + * Bytecode inspection for Java-UDFs (CASSANDRA-9890) + * Use byte to serialize MT hash length (CASSANDRA-9792) + * Replace usage of Adler32 with CRC32 (CASSANDRA-8684) + * Fix migration to new format from 2.1 SSTable (CASSANDRA-10006) +Merged from 2.2: + * Fix histogram overflow exception (CASSANDRA-9973) * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737)
[1/3] cassandra git commit: fix histogram overflow exception
Repository: cassandra Updated Branches: refs/heads/trunk f43663aaf - 90bd5cae4 fix histogram overflow exception Patch by tjake; reviewed by carlyeks for CASSANDRA-9973 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/23826f7a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/23826f7a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/23826f7a Branch: refs/heads/trunk Commit: 23826f7a26f8fb662d78c5ec9976a89c57d8ac9f Parents: 2d8ccf0 Author: T Jake Luciani j...@apache.org Authored: Tue Aug 11 12:04:35 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:22:53 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 3b548e5..6a9dc1e 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737) http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java -- diff --git a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java index b7266e4..3051711 100644 --- a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java +++ b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java @@ -33,9 +33,10 @@ public class EstimatedHistogramReservoir implements Reservoir { EstimatedHistogram histogram; +// Default to 4 hours of in nanoseconds of buckets public EstimatedHistogramReservoir() { -this(128); +this(164); } public EstimatedHistogramReservoir(int numBuckets)
[jira] [Commented] (CASSANDRA-8630) Faster sequential IO (on compaction, streaming, etc)
[ https://issues.apache.org/jira/browse/CASSANDRA-8630?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697108#comment-14697108 ] Ariel Weisberg commented on CASSANDRA-8630: --- You are right it's the wrong ticket. Good news is that is that the changes I was thinking of are already on trunk https://github.com/apache/cassandra/commits/trunk/src/java/org/apache/cassandra/io/util/NIODataInputStream.java I was thinking of CASSANDRA-9863 Faster sequential IO (on compaction, streaming, etc) Key: CASSANDRA-8630 URL: https://issues.apache.org/jira/browse/CASSANDRA-8630 Project: Cassandra Issue Type: Improvement Components: Core, Tools Reporter: Oleg Anastasyev Assignee: Stefania Labels: compaction, performance Fix For: 3.x Attachments: 8630-FasterSequencialReadsAndWrites.txt, cpu_load.png, flight_recorder_001_files.tar.gz When node is doing a lot of sequencial IO (streaming, compacting, etc) a lot of CPU is lost in calls to RAF's int read() and DataOutputStream's write(int). This is because default implementations of readShort,readLong, etc as well as their matching write* are implemented with numerous calls of byte by byte read and write. This makes a lot of syscalls as well. A quick microbench shows than just reimplementation of these methods in either way gives 8x speed increase. A patch attached implements RandomAccessReader.readType and SequencialWriter.writeType methods in more efficient way. I also eliminated some extra byte copies in CompositeType.split and ColumnNameHelper.maxComponents, which were on my profiler's hotspot method list during tests. A stress tests on my laptop show that this patch makes compaction 25-30% faster on uncompressed sstables and 15% faster for compressed ones. A deployment to production shows much less CPU load for compaction. (I attached a cpu load graph from one of our production, orange is niced CPU load - i.e. compaction; yellow is user - i.e. not compaction related tasks) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: Fixes race during construction of commit log: - Moves thread start outside of constructor for all commit log classes. - Removes all references to CommitLog.instance from commitlo
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 7b026964b - f8f6fd2d7 Fixes race during construction of commit log: - Moves thread start outside of constructor for all commit log classes. - Removes all references to CommitLog.instance from commitlog package. patch by Branimir Lambov; reviewed by tjake for CASSANDRA-10049 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f8f6fd2d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f8f6fd2d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f8f6fd2d Branch: refs/heads/cassandra-3.0 Commit: f8f6fd2d7e51be7d0450d3a264136d1d93454203 Parents: 7b02696 Author: Branimir Lambov branimir.lam...@datastax.com Authored: Wed Aug 12 11:59:41 2015 +0300 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:38:30 2015 -0400 -- CHANGES.txt | 1 + .../db/commitlog/AbstractCommitLogService.java | 2 +- .../cassandra/db/commitlog/CommitLog.java | 22 +++- .../db/commitlog/CommitLogArchiver.java | 38 +--- .../db/commitlog/CommitLogDescriptor.java | 1 - .../db/commitlog/CommitLogReplayer.java | 14 .../db/commitlog/CommitLogSegment.java | 1 - .../db/commitlog/CommitLogSegmentManager.java | 17 +++-- .../db/commitlog/CommitLogStressTest.java | 8 ++--- .../unit/org/apache/cassandra/SchemaLoader.java | 2 +- .../org/apache/cassandra/cql3/CQLTester.java| 2 +- .../org/apache/cassandra/db/CommitLogTest.java | 4 +-- .../db/commitlog/CommitLogTestReplayer.java | 10 +++--- .../db/commitlog/CommitLogUpgradeTest.java | 11 ++ 14 files changed, 70 insertions(+), 63 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index e7cc12e..85eb223 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.0-beta1 + * Fix race during construction of commit log (CASSANDRA-10049) * Add option to only purge repaired tombstones (CASSANDRA-6434) * Change authorization handling for MVs (CASSANDRA-9927) * Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java -- diff --git a/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java b/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java index d371571..557bf50 100644 --- a/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java +++ b/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java @@ -192,7 +192,7 @@ public abstract class AbstractCommitLogService /** * FOR TESTING ONLY */ -public void startUnsafe() +public void restartUnsafe() { while (haveWork.availablePermits() 1) haveWork.release(); http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/src/java/org/apache/cassandra/db/commitlog/CommitLog.java -- diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java index e096011..8d74677 100644 --- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java +++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java @@ -74,7 +74,7 @@ public class CommitLog implements CommitLogMBean private static CommitLog construct() { -CommitLog log = new CommitLog(DatabaseDescriptor.getCommitLogLocation(), new CommitLogArchiver()); +CommitLog log = new CommitLog(DatabaseDescriptor.getCommitLogLocation(), CommitLogArchiver.construct()); MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try @@ -85,7 +85,7 @@ public class CommitLog implements CommitLogMBean { throw new RuntimeException(e); } -return log; +return log.start(); } @VisibleForTesting @@ -105,12 +105,18 @@ public class CommitLog implements CommitLogMBean : new PeriodicCommitLogService(this); allocator = new CommitLogSegmentManager(this); -executor.start(); // register metrics metrics.attach(executor, allocator); } +CommitLog start() +{ +executor.start(); +allocator.start(); +return this; +} + /** * Perform recovery on commit logs located in the directory specified by the config file. * @@ -177,7 +183,7 @@ public class
[jira] [Updated] (CASSANDRA-10049) Commitlog initialization failure
[ https://issues.apache.org/jira/browse/CASSANDRA-10049?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] T Jake Luciani updated CASSANDRA-10049: --- Fix Version/s: (was: 3.0.0 rc1) 3.0 beta 1 Commitlog initialization failure Key: CASSANDRA-10049 URL: https://issues.apache.org/jira/browse/CASSANDRA-10049 Project: Cassandra Issue Type: Bug Reporter: T Jake Luciani Assignee: Branimir Lambov Fix For: 3.0 beta 1 I've encountered this error locally during some dtests. It looks like a race condition in the commit log code. http://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_dtest/lastCompletedBuild/testReport/consistency_test/TestAccuracy/test_network_topology_strategy_users_2/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/2] cassandra git commit: Fixes race during construction of commit log: - Moves thread start outside of constructor for all commit log classes. - Removes all references to CommitLog.instance from co
Repository: cassandra Updated Branches: refs/heads/trunk 90bd5cae4 - d0ba476c8 Fixes race during construction of commit log: - Moves thread start outside of constructor for all commit log classes. - Removes all references to CommitLog.instance from commitlog package. patch by Branimir Lambov; reviewed by tjake for CASSANDRA-10049 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f8f6fd2d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f8f6fd2d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f8f6fd2d Branch: refs/heads/trunk Commit: f8f6fd2d7e51be7d0450d3a264136d1d93454203 Parents: 7b02696 Author: Branimir Lambov branimir.lam...@datastax.com Authored: Wed Aug 12 11:59:41 2015 +0300 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:38:30 2015 -0400 -- CHANGES.txt | 1 + .../db/commitlog/AbstractCommitLogService.java | 2 +- .../cassandra/db/commitlog/CommitLog.java | 22 +++- .../db/commitlog/CommitLogArchiver.java | 38 +--- .../db/commitlog/CommitLogDescriptor.java | 1 - .../db/commitlog/CommitLogReplayer.java | 14 .../db/commitlog/CommitLogSegment.java | 1 - .../db/commitlog/CommitLogSegmentManager.java | 17 +++-- .../db/commitlog/CommitLogStressTest.java | 8 ++--- .../unit/org/apache/cassandra/SchemaLoader.java | 2 +- .../org/apache/cassandra/cql3/CQLTester.java| 2 +- .../org/apache/cassandra/db/CommitLogTest.java | 4 +-- .../db/commitlog/CommitLogTestReplayer.java | 10 +++--- .../db/commitlog/CommitLogUpgradeTest.java | 11 ++ 14 files changed, 70 insertions(+), 63 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index e7cc12e..85eb223 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.0-beta1 + * Fix race during construction of commit log (CASSANDRA-10049) * Add option to only purge repaired tombstones (CASSANDRA-6434) * Change authorization handling for MVs (CASSANDRA-9927) * Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java -- diff --git a/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java b/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java index d371571..557bf50 100644 --- a/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java +++ b/src/java/org/apache/cassandra/db/commitlog/AbstractCommitLogService.java @@ -192,7 +192,7 @@ public abstract class AbstractCommitLogService /** * FOR TESTING ONLY */ -public void startUnsafe() +public void restartUnsafe() { while (haveWork.availablePermits() 1) haveWork.release(); http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8f6fd2d/src/java/org/apache/cassandra/db/commitlog/CommitLog.java -- diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java index e096011..8d74677 100644 --- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java +++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java @@ -74,7 +74,7 @@ public class CommitLog implements CommitLogMBean private static CommitLog construct() { -CommitLog log = new CommitLog(DatabaseDescriptor.getCommitLogLocation(), new CommitLogArchiver()); +CommitLog log = new CommitLog(DatabaseDescriptor.getCommitLogLocation(), CommitLogArchiver.construct()); MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try @@ -85,7 +85,7 @@ public class CommitLog implements CommitLogMBean { throw new RuntimeException(e); } -return log; +return log.start(); } @VisibleForTesting @@ -105,12 +105,18 @@ public class CommitLog implements CommitLogMBean : new PeriodicCommitLogService(this); allocator = new CommitLogSegmentManager(this); -executor.start(); // register metrics metrics.attach(executor, allocator); } +CommitLog start() +{ +executor.start(); +allocator.start(); +return this; +} + /** * Perform recovery on commit logs located in the directory specified by the config file. * @@ -177,7 +183,7 @@ public class CommitLog implements
[2/2] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0ba476c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0ba476c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0ba476c Branch: refs/heads/trunk Commit: d0ba476c896c79a8dbd1bf32fc9f7a2198c09524 Parents: 90bd5ca f8f6fd2 Author: T Jake Luciani j...@apache.org Authored: Fri Aug 14 10:40:25 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:40:25 2015 -0400 -- CHANGES.txt | 1 + .../db/commitlog/AbstractCommitLogService.java | 2 +- .../cassandra/db/commitlog/CommitLog.java | 22 +++- .../db/commitlog/CommitLogArchiver.java | 38 +--- .../db/commitlog/CommitLogDescriptor.java | 1 - .../db/commitlog/CommitLogReplayer.java | 14 .../db/commitlog/CommitLogSegment.java | 1 - .../db/commitlog/CommitLogSegmentManager.java | 17 +++-- .../db/commitlog/CommitLogStressTest.java | 8 ++--- .../unit/org/apache/cassandra/SchemaLoader.java | 2 +- .../org/apache/cassandra/cql3/CQLTester.java| 2 +- .../org/apache/cassandra/db/CommitLogTest.java | 4 +-- .../db/commitlog/CommitLogTestReplayer.java | 10 +++--- .../db/commitlog/CommitLogUpgradeTest.java | 11 ++ 14 files changed, 70 insertions(+), 63 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0ba476c/CHANGES.txt -- diff --cc CHANGES.txt index c3d7b67,85eb223..4f7d896 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ +3.2 + * Add transparent data encryption core classes (CASSANDRA-9945) + + 3.0.0-beta1 + * Fix race during construction of commit log (CASSANDRA-10049) * Add option to only purge repaired tombstones (CASSANDRA-6434) * Change authorization handling for MVs (CASSANDRA-9927) * Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026)
cassandra git commit: fix histogram overflow exception
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 2d8ccf077 - 23826f7a2 fix histogram overflow exception Patch by tjake; reviewed by carlyeks for CASSANDRA-9973 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/23826f7a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/23826f7a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/23826f7a Branch: refs/heads/cassandra-2.2 Commit: 23826f7a26f8fb662d78c5ec9976a89c57d8ac9f Parents: 2d8ccf0 Author: T Jake Luciani j...@apache.org Authored: Tue Aug 11 12:04:35 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:22:53 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 3b548e5..6a9dc1e 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737) http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java -- diff --git a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java index b7266e4..3051711 100644 --- a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java +++ b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java @@ -33,9 +33,10 @@ public class EstimatedHistogramReservoir implements Reservoir { EstimatedHistogram histogram; +// Default to 4 hours of in nanoseconds of buckets public EstimatedHistogramReservoir() { -this(128); +this(164); } public EstimatedHistogramReservoir(int numBuckets)
[jira] [Commented] (CASSANDRA-9426) Provide a per-table text-blob map for storing extra metadata
[ https://issues.apache.org/jira/browse/CASSANDRA-9426?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697094#comment-14697094 ] Aleksey Yeschenko commented on CASSANDRA-9426: -- Great. I have a minor preference for moving the map presence check to {{createTableParamsFromRow()}} itself, as {{if (row.has(extensions))}} and remove the null/empty branch from the Builder. Otherwise LGTM, thank you. Provide a per-table text-blob map for storing extra metadata - Key: CASSANDRA-9426 URL: https://issues.apache.org/jira/browse/CASSANDRA-9426 Project: Cassandra Issue Type: Sub-task Reporter: Aleksey Yeschenko Assignee: Benjamin Lerer Labels: client-impacting Fix For: 3.0 beta 1 Attachments: 9426.txt For some applications that build on Cassandra it's important to be able to attach extra metadata to tables, and have it be distributed via regular Cassandra schema paths. I propose a new {{extensions maptext,blob}} table param for just that. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9426) Provide a per-table text-blob map for storing extra metadata
[ https://issues.apache.org/jira/browse/CASSANDRA-9426?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697097#comment-14697097 ] Aleksey Yeschenko commented on CASSANDRA-9426: -- One issue: need to update {{TableParams}} {{equals()}}, {{hashCode()}}, and {{toString()}}. Provide a per-table text-blob map for storing extra metadata - Key: CASSANDRA-9426 URL: https://issues.apache.org/jira/browse/CASSANDRA-9426 Project: Cassandra Issue Type: Sub-task Reporter: Aleksey Yeschenko Assignee: Benjamin Lerer Labels: client-impacting Fix For: 3.0 beta 1 Attachments: 9426.txt For some applications that build on Cassandra it's important to be able to attach extra metadata to tables, and have it be distributed via regular Cassandra schema paths. I propose a new {{extensions maptext,blob}} table param for just that. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/2] cassandra git commit: fix histogram overflow exception
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 8b7caa136 - 7b026964b fix histogram overflow exception Patch by tjake; reviewed by carlyeks for CASSANDRA-9973 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/23826f7a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/23826f7a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/23826f7a Branch: refs/heads/cassandra-3.0 Commit: 23826f7a26f8fb662d78c5ec9976a89c57d8ac9f Parents: 2d8ccf0 Author: T Jake Luciani j...@apache.org Authored: Tue Aug 11 12:04:35 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:22:53 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 3b548e5..6a9dc1e 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737) http://git-wip-us.apache.org/repos/asf/cassandra/blob/23826f7a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java -- diff --git a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java index b7266e4..3051711 100644 --- a/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java +++ b/src/java/org/apache/cassandra/metrics/EstimatedHistogramReservoir.java @@ -33,9 +33,10 @@ public class EstimatedHistogramReservoir implements Reservoir { EstimatedHistogram histogram; +// Default to 4 hours of in nanoseconds of buckets public EstimatedHistogramReservoir() { -this(128); +this(164); } public EstimatedHistogramReservoir(int numBuckets)
[2/2] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: CHANGES.txt Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7b026964 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7b026964 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7b026964 Branch: refs/heads/cassandra-3.0 Commit: 7b026964b86ce07447e7904ab0286d40a203f0c6 Parents: 8b7caa1 23826f7 Author: T Jake Luciani j...@apache.org Authored: Fri Aug 14 10:26:31 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:26:31 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7b026964/CHANGES.txt -- diff --cc CHANGES.txt index fae0cfc,6a9dc1e..e7cc12e --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,19 -1,5 +1,20 @@@ -2.2.1 +3.0.0-beta1 + * Add option to only purge repaired tombstones (CASSANDRA-6434) + * Change authorization handling for MVs (CASSANDRA-9927) + * Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026) + * Fix row deletion bug for Materialized Views (CASSANDRA-10014) + * Support mixed-version clusters with Cassandra 2.1 and 2.2 (CASSANDRA-9704) + * Fix multiple slices on RowSearchers (CASSANDRA-10002) + * Fix bug in merging of collections (CASSANDRA-10001) + * Optimize batchlog replay to avoid full scans (CASSANDRA-7237) + * Repair improvements when using vnodes (CASSANDRA-5220) + * Disable scripted UDFs by default (CASSANDRA-9889) + * Bytecode inspection for Java-UDFs (CASSANDRA-9890) + * Use byte to serialize MT hash length (CASSANDRA-9792) + * Replace usage of Adler32 with CRC32 (CASSANDRA-8684) + * Fix migration to new format from 2.1 SSTable (CASSANDRA-10006) +Merged from 2.2: + * Fix histogram overflow exception (CASSANDRA-9973) * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737)
[3/3] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/90bd5cae Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/90bd5cae Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/90bd5cae Branch: refs/heads/trunk Commit: 90bd5cae4a057b716fec653fded6b339a6e30da7 Parents: f43663a 7b02696 Author: T Jake Luciani j...@apache.org Authored: Fri Aug 14 10:27:10 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Fri Aug 14 10:27:10 2015 -0400 -- CHANGES.txt | 1 + .../org/apache/cassandra/metrics/EstimatedHistogramReservoir.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/90bd5cae/CHANGES.txt --
[jira] [Commented] (CASSANDRA-9543) Integrate release 2.2 java driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697101#comment-14697101 ] Robert Stupp commented on CASSANDRA-9543: - java-driver 2.2.0 rc2 is released - so a good time to update the jar and fix dependencies {{build.xml}} Integrate release 2.2 java driver - Key: CASSANDRA-9543 URL: https://issues.apache.org/jira/browse/CASSANDRA-9543 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Assignee: Robert Stupp Fix For: 2.2.x Follow-up of CASSANDRA-9493. Hint: cleanup {{build.xml}} for commented out {{çassandra-driver-core}} maven dependencies. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Assigned] (CASSANDRA-9543) Integrate release 2.2 java driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robert Stupp reassigned CASSANDRA-9543: --- Assignee: Robert Stupp Integrate release 2.2 java driver - Key: CASSANDRA-9543 URL: https://issues.apache.org/jira/browse/CASSANDRA-9543 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Assignee: Robert Stupp Fix For: 2.2.x Follow-up of CASSANDRA-9493. Hint: cleanup {{build.xml}} for commented out {{çassandra-driver-core}} maven dependencies. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10072) Replica(s) failed to execute read on simple select on stress-created table with 1 nodes
[ https://issues.apache.org/jira/browse/CASSANDRA-10072?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-10072: --- Fix Version/s: (was: 3.0.x) 3.0.0 rc1 Replica(s) failed to execute read on simple select on stress-created table with 1 nodes -- Key: CASSANDRA-10072 URL: https://issues.apache.org/jira/browse/CASSANDRA-10072 Project: Cassandra Issue Type: Bug Reporter: Jim Witschey Assignee: Marcus Eriksson Fix For: 3.0.0 rc1 Attachments: repro.sh This looks similar to CASSANDRA-9825, though that was marked as resolved. To reproduce, create a multi-node cluster and insert values using stress. Then, try to run a {{SELECT}} statement on the {{keyspace1.standard1}} table created by stress. Running the select through the Python driver, I consistently get the result {code} cassandra.ReadFailure: code=1300 [Replica(s) failed to execute read] message=Operation failed - received 0 responses and 1 failures info={'failures': 1, 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} {code} I've attached a script that reproduces it via the {{ccm}} CLI. As the script also demonstrates, the error doesn't show under 2.2, or when there is only 1 node in the cluster. In the repro script, I've also included a commented-out insertion via cqlsh. If you uncomment that and comment out the stress line, the script demonstrates that the error doesn't occur when the table was created/inserted into via cqlsh. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10072) Replica(s) failed to execute read on simple select on stress-created table with 1 nodes
[ https://issues.apache.org/jira/browse/CASSANDRA-10072?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-10072: --- Assignee: Marcus Eriksson Replica(s) failed to execute read on simple select on stress-created table with 1 nodes -- Key: CASSANDRA-10072 URL: https://issues.apache.org/jira/browse/CASSANDRA-10072 Project: Cassandra Issue Type: Bug Reporter: Jim Witschey Assignee: Marcus Eriksson Fix For: 3.0.0 rc1 Attachments: repro.sh This looks similar to CASSANDRA-9825, though that was marked as resolved. To reproduce, create a multi-node cluster and insert values using stress. Then, try to run a {{SELECT}} statement on the {{keyspace1.standard1}} table created by stress. Running the select through the Python driver, I consistently get the result {code} cassandra.ReadFailure: code=1300 [Replica(s) failed to execute read] message=Operation failed - received 0 responses and 1 failures info={'failures': 1, 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} {code} I've attached a script that reproduces it via the {{ccm}} CLI. As the script also demonstrates, the error doesn't show under 2.2, or when there is only 1 node in the cluster. In the repro script, I've also included a commented-out insertion via cqlsh. If you uncomment that and comment out the stress line, the script demonstrates that the error doesn't occur when the table was created/inserted into via cqlsh. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
[ https://issues.apache.org/jira/browse/CASSANDRA-10071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robert Stupp updated CASSANDRA-10071: - Attachment: 10071-updated.txt Change LGTM. Thanks for the patch! Although I took the freedom to remove all the superfluous {{version=...}} attributed since these are already managed dependencies (and the managed dependencies were correct) - the generated pom's are the same (and have correct thrift-server:0.3.7 dependency). Unable to start Thrift RPC server in cassandra deployment created using cassandra-all - Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci Assignee: Robert Stupp Fix For: 2.2.x Attachments: 10071-updated.txt, cassandra-2.2-CASSANDRA-10071.txt We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10071) Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
[ https://issues.apache.org/jira/browse/CASSANDRA-10071?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697168#comment-14697168 ] Peter Palaga commented on CASSANDRA-10071: -- [~snazy], I must admit it was a random shot from my side as this was my first contact with Ant using Maven to manage dependencies (is that right?). Thanks for fixing my patch! Although, we have a workaround underway, could you please provide any estimate when cassandra-all 2.2.1 could be released? Unable to start Thrift RPC server in cassandra deployment created using cassandra-all - Key: CASSANDRA-10071 URL: https://issues.apache.org/jira/browse/CASSANDRA-10071 Project: Cassandra Issue Type: Bug Components: Packaging Reporter: Lukas Krejci Assignee: Robert Stupp Fix For: 2.2.x Attachments: 10071-updated.txt, cassandra-2.2-CASSANDRA-10071.txt We have a custom wrapper around cassandra and use the maven {{cassandra-all}} as a dependency. This worked nicely with C* 2.1.x but with C* 2.2.0 the Thrift server is unable to start. I assume that is because {{cassandra-all:2.1.8}} depends on {{thrift-server:0.3.7}} while {{cassandra-all:2.2.0}} depends on {{thrift-server:0.3.5}}. I believe this is a packaging issue, because it seems like the compilation process uses {{thrift-server:0.3.7}}. The stacktrace that is produced when trying to start with enabled thrift RPC: {code} [31m17:33:18,247 ERROR [org.apache.cassandra.service.CassandraDaemon] (ServerService Thread Pool -- 80) Exception encountered during startup: java.lang.NoSuchMethodError: com.thinkaurelius.thrift.TDisruptorServer$Args.invocationExecutor(Ljava/util/concurrent/ThreadPoolExecutor;)Lcom/thinkaurelius/thrift/TDisruptorServer$Args; at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(THsHaDisruptorServer.java:103) at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:55) at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.init(ThriftServer.java:131) at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:58) at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:404) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:494) ... {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-10073) Counter mutation serialization bug
T Jake Luciani created CASSANDRA-10073: -- Summary: Counter mutation serialization bug Key: CASSANDRA-10073 URL: https://issues.apache.org/jira/browse/CASSANDRA-10073 Project: Cassandra Issue Type: Bug Reporter: T Jake Luciani Priority: Critical Fix For: 3.0 beta 1 reproduced in dtest super_counter_test:TestSuperCounterClusterRestart.functional_test_2 {code} - Unexpected error deserializing mutation; saved to /tmp/mutation181379301016027337dat and ignored. This may be caused by replaying a mutation against a table with the same name but incompatible schema. Exception follows: org.apache.cassandra.serializers.MarshalException: Expected 8 or 0 byte long (36) \tat org.apache.cassandra.serializers.LongSerializer.validate(LongSerializer.java:42) ~[main/:na] \tat org.apache.cassandra.db.marshal.AbstractType.validate(AbstractType.java:122) ~[main/:na] \tat org.apache.cassandra.db.marshal.CollectionType.validateCellValue(CollectionType.java:130) ~[main/:na] \tat org.apache.cassandra.config.ColumnDefinition.validateCellValue(ColumnDefinition.java:444) ~[main/:na] \tat org.apache.cassandra.db.rows.AbstractCell.validate(AbstractCell.java:56) ~[main/:na] \tat org.apache.cassandra.db.rows.ComplexColumnData.validate(ComplexColumnData.java:125) ~[main/:na] \tat org.apache.cassandra.db.partitions.PartitionUpdate.validate(PartitionUpdate.java:518) ~[main/:na] \tat org.apache.cassandra.db.commitlog.CommitLogReplayer.replayMutation(CommitLogReplayer.java:485) [main/:na] \tat org.apache.cassandra.db.commitlog.CommitLogReplayer.replaySyncSection(CommitLogReplayer.java:465) [main/:na] \tat org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:371) [main/:na] \tat org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:146) [main/:na] \tat org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:181) [main/:na] \tat org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:161) [main/:na] \tat org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:272) [main/:na] \tat org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:512) [main/:na] \tat org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:618) [main/:na] ERROR [main] 2015-08-12 17:36:38,247 CommitLogReplayer.java:513 {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697197#comment-14697197 ] Sebastian Estevez commented on CASSANDRA-9117: -- This was not during a repair ^^ LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When running the {{incremental_repair_test.TestIncRepair.multiple_repair_test}} dtest, the following error logs show up: {noformat} ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,491 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@83f047e) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1631580268:Memory@[7f354800bdc0..7f354800bde8) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@50bc8f67) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@191552666:Memory@[7f354800ba90..7f354800bdb0) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7fd10877) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1954741807:Memory@[7f3548101190..7f3548101194) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,494 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@578550ac) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@1903393047:[[OffHeapBitSet]] was not released before the reference was garbage collected {noformat} The test is being run against trunk (commit {{1dff098e}}). I've attached a DEBUG-level log from the test run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697197#comment-14697197 ] Sebastian Estevez edited comment on CASSANDRA-9117 at 8/14/15 3:18 PM: --- This was not during a repair ^^ but during startup (commitlog replay) See full log here: https://dl.dropboxusercontent.com/u/4179566/cassandra-system.log Ignore the batches warning : ) was (Author: sebastian.este...@datastax.com): This was not during a repair ^^ LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When running the {{incremental_repair_test.TestIncRepair.multiple_repair_test}} dtest, the following error logs show up: {noformat} ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,491 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@83f047e) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1631580268:Memory@[7f354800bdc0..7f354800bde8) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@50bc8f67) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@191552666:Memory@[7f354800ba90..7f354800bdb0) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7fd10877) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1954741807:Memory@[7f3548101190..7f3548101194) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,494 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@578550ac) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@1903393047:[[OffHeapBitSet]] was not released before the reference was garbage collected {noformat} The test is being run against trunk (commit {{1dff098e}}). I've attached a DEBUG-level log from the test run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697204#comment-14697204 ] T Jake Luciani commented on CASSANDRA-9117: --- [~sebastian.este...@datastax.com] After commit log replay someone called drain {code} INFO [RMI TCP Connection(1895)-127.0.0.1] 2015-08-14 13:37:07,049 StorageService.java:1115 - DRAINING: starting drain process {code} LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When running the {{incremental_repair_test.TestIncRepair.multiple_repair_test}} dtest, the following error logs show up: {noformat} ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,491 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@83f047e) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1631580268:Memory@[7f354800bdc0..7f354800bde8) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@50bc8f67) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@191552666:Memory@[7f354800ba90..7f354800bdb0) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7fd10877) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1954741807:Memory@[7f3548101190..7f3548101194) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,494 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@578550ac) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@1903393047:[[OffHeapBitSet]] was not released before the reference was garbage collected {noformat} The test is being run against trunk (commit {{1dff098e}}). I've attached a DEBUG-level log from the test run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/2] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6445dd62 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6445dd62 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6445dd62 Branch: refs/heads/cassandra-3.0 Commit: 6445dd62bb3b5318da24a005cb3bc1f15be86b34 Parents: f8f6fd2 1ba949a Author: Robert Stupp sn...@snazy.de Authored: Fri Aug 14 17:24:31 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:24:31 2015 +0200 -- build.xml | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6445dd62/build.xml -- diff --cc build.xml index bc433ae,26c3524..06638f6 --- a/build.xml +++ b/build.xml @@@ -558,8 -540,9 +558,8 @@@ dependency groupId=org.mindrot artifactId=jbcrypt/ dependency groupId=io.dropwizard.metrics artifactId=metrics-core/ dependency groupId=com.addthis.metrics artifactId=reporter-config3/ - dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server version=0.3.5/ - dependency groupId=com.clearspring.analytics artifactId=stream version=2.5.2 / + dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server/ + dependency groupId=com.clearspring.analytics artifactId=stream/ -dependency groupId=net.sf.supercsv artifactId=super-csv/ dependency groupId=ch.qos.logback artifactId=logback-core/ dependency groupId=ch.qos.logback artifactId=logback-classic/ @@@ -580,14 -563,12 +580,14 @@@ !-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -- dependency groupId=com.github.jbellis artifactId=jamm/ - dependency groupId=com.github.tjake artifactId=crc32ex/ + dependency groupId=io.netty artifactId=netty-all/ - dependency groupId=joda-time artifactId=joda-time version=2.4 / + dependency groupId=joda-time artifactId=joda-time/ - dependency groupId=org.fusesource artifactId=sigar version=1.6.4/ + dependency groupId=org.fusesource artifactId=sigar/ + +dependency groupId=org.eclipse.jdt.core.compiler artifactId=ecj / /artifact:pom artifact:pom id=thrift-pom artifactId=cassandra-thrift
[2/3] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6445dd62 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6445dd62 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6445dd62 Branch: refs/heads/trunk Commit: 6445dd62bb3b5318da24a005cb3bc1f15be86b34 Parents: f8f6fd2 1ba949a Author: Robert Stupp sn...@snazy.de Authored: Fri Aug 14 17:24:31 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:24:31 2015 +0200 -- build.xml | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6445dd62/build.xml -- diff --cc build.xml index bc433ae,26c3524..06638f6 --- a/build.xml +++ b/build.xml @@@ -558,8 -540,9 +558,8 @@@ dependency groupId=org.mindrot artifactId=jbcrypt/ dependency groupId=io.dropwizard.metrics artifactId=metrics-core/ dependency groupId=com.addthis.metrics artifactId=reporter-config3/ - dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server version=0.3.5/ - dependency groupId=com.clearspring.analytics artifactId=stream version=2.5.2 / + dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server/ + dependency groupId=com.clearspring.analytics artifactId=stream/ -dependency groupId=net.sf.supercsv artifactId=super-csv/ dependency groupId=ch.qos.logback artifactId=logback-core/ dependency groupId=ch.qos.logback artifactId=logback-classic/ @@@ -580,14 -563,12 +580,14 @@@ !-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -- dependency groupId=com.github.jbellis artifactId=jamm/ - dependency groupId=com.github.tjake artifactId=crc32ex/ + dependency groupId=io.netty artifactId=netty-all/ - dependency groupId=joda-time artifactId=joda-time version=2.4 / + dependency groupId=joda-time artifactId=joda-time/ - dependency groupId=org.fusesource artifactId=sigar version=1.6.4/ + dependency groupId=org.fusesource artifactId=sigar/ + +dependency groupId=org.eclipse.jdt.core.compiler artifactId=ecj / /artifact:pom artifact:pom id=thrift-pom artifactId=cassandra-thrift
[3/3] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3c5de3c2 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3c5de3c2 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3c5de3c2 Branch: refs/heads/trunk Commit: 3c5de3c2fced52f4d0a7336b5d3c32252fcc3ecb Parents: d0ba476 6445dd6 Author: Robert Stupp sn...@snazy.de Authored: Fri Aug 14 17:24:39 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:24:39 2015 +0200 -- build.xml | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) --
[jira] [Created] (CASSANDRA-10074) cqlsh HELP SELECT_EXPR gives outdated incorrect information
Jim Meyer created CASSANDRA-10074: - Summary: cqlsh HELP SELECT_EXPR gives outdated incorrect information Key: CASSANDRA-10074 URL: https://issues.apache.org/jira/browse/CASSANDRA-10074 Project: Cassandra Issue Type: Bug Components: Tools Environment: 3.0.0-alpha1-SNAPSHOT Reporter: Jim Meyer Priority: Trivial Fix For: 3.x Within cqlsh, the HELP SELECT_EXPR states that COUNT is the only function supported by CQL. It is missing a description of the SUM, AVG, MIN, and MAX built in functions. It should probably also mention that user defined functions can be invoked via SELECT. The outdated text is in pylib/cqlshlib/helptopics.py under def help_select_expr -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: cqlsh: specify encoding w/ command line option
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 972ae1472 - 7a6a5097a cqlsh: specify encoding w/ command line option Patch by Paulo Motta; reviewed by Tyler Hobbs for CASSANDRA-10004 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7a6a5097 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7a6a5097 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7a6a5097 Branch: refs/heads/cassandra-2.1 Commit: 7a6a5097a35feb830b66a7e602ba3cb1ead2e105 Parents: 972ae14 Author: Paulo Motta pauloricard...@gmail.com Authored: Fri Aug 14 10:40:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:40:58 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh | 7 ++- 2 files changed, 7 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f7fb63c..5a76978 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.9 + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/bin/cqlsh -- diff --git a/bin/cqlsh b/bin/cqlsh index 69b669d..084d586 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -165,6 +165,9 @@ parser.add_option('-k', '--keyspace', help='Authenticate to the given keyspace.' parser.add_option(-f, --file, help=Execute commands from FILE, then exit) parser.add_option('--debug', action='store_true', help='Show additional debugging information') +parser.add_option(--encoding, help=Specify a non-default encoding for output. If you are + + experiencing problems with unicode characters, using utf8 may fix the problem. + + (Default from system preferences: %s) % (locale.getpreferredencoding(),)) parser.add_option(--cqlshrc, help=Specify an alternative cqlshrc file location.) parser.add_option('--cqlversion', default=DEFAULT_CQLVER, help='Specify a particular CQL version (default: %default).' @@ -2331,6 +2334,7 @@ def read_options(cmdlineargs, environment): optvalues.debug = False optvalues.file = None optvalues.ssl = False +optvalues.encoding = None optvalues.tty = sys.stdin.isatty() optvalues.cqlversion = option_with_default(configs.get, 'cql', 'version', DEFAULT_CQLVER) @@ -2461,7 +2465,8 @@ def main(options, hostname, port): ssl=options.ssl, single_statement=options.execute, client_timeout=options.client_timeout, - connect_timeout=options.connect_timeout) + connect_timeout=options.connect_timeout, + encoding=options.encoding) except KeyboardInterrupt: sys.exit('Connection aborted.') except CQL_ERRORS, e:
[jira] [Commented] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697241#comment-14697241 ] Sebastian Estevez commented on CASSANDRA-9117: -- [~tjake] thanks for looking at this. Correction, it happened after a node was drained not during startup: 2015-08-14 13:37:07,049 - Drain the node 2015-08-14 13:37:11,943 - Drained 2015-08-14 13:37:37,055 Ref.java:179 - LEAK DETECTED: LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When running the {{incremental_repair_test.TestIncRepair.multiple_repair_test}} dtest, the following error logs show up: {noformat} ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,491 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@83f047e) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1631580268:Memory@[7f354800bdc0..7f354800bde8) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@50bc8f67) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@191552666:Memory@[7f354800ba90..7f354800bdb0) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7fd10877) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1954741807:Memory@[7f3548101190..7f3548101194) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,494 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@578550ac) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@1903393047:[[OffHeapBitSet]] was not released before the reference was garbage collected {noformat} The test is being run against trunk (commit {{1dff098e}}). I've attached a DEBUG-level log from the test run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697248#comment-14697248 ] Victor Trac commented on CASSANDRA-9117: Seeing this during a -pr repair on 2.2.0: {code} ERROR [Reference-Reaper:1] 2015-08-14 15:37:04,809 Ref.java:187 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@645aba1e) to class org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier@785147240:/mnt/cassandra/data/crawl/link2-b1fa78203b0711e5a72aa1fb779f0f22/la-2257-big was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 15:37:04,809 Ref.java:187 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@713b0b) to class org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier@679274203:/mnt/cassandra/data/crawl/link2-b1fa78203b0711e5a72aa1fb779f0f22/la-2266-big was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 15:37:04,809 Ref.java:187 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@9db4f67) to class org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier@440947325:/mnt/cassandra/data/crawl/link2-b1fa78203b0711e5a72aa1fb779f0f22/la-2244-big was not released before the reference was garbage collected {code} LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When running the {{incremental_repair_test.TestIncRepair.multiple_repair_test}} dtest, the following error logs show up: {noformat} ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,491 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@83f047e) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1631580268:Memory@[7f354800bdc0..7f354800bde8) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@50bc8f67) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@191552666:Memory@[7f354800ba90..7f354800bdb0) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,493 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7fd10877) to class org.apache.cassandra.io.util.SafeMemory$MemoryTidy@1954741807:Memory@[7f3548101190..7f3548101194) was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-04-03 15:48:25,494 Ref.java:181 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@578550ac) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@1903393047:[[OffHeapBitSet]] was not released before the reference was garbage collected {noformat} The test is being run against trunk (commit {{1dff098e}}). I've attached a DEBUG-level log from the test run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[5/5] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
Merge branch 'cassandra-2.1' into cassandra-2.2 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/da3a5a7f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/da3a5a7f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/da3a5a7f Branch: refs/heads/cassandra-2.2 Commit: da3a5a7fa29cd1e1fdcfa397a4b63a1ccb8e9b62 Parents: 1ba949a 7a6a509 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:45:09 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:45:09 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh.py | 8 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/CHANGES.txt -- diff --cc CHANGES.txt index 6a9dc1e,5a76978..6bc671d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,12 -1,5 +1,13 @@@ -2.1.9 +2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) + * Route gossip messages over dedicated socket (CASSANDRA-9237) + * Add checksum to saved cache files (CASSANDRA-9265) + * Log warning when using an aggregate without partition key (CASSANDRA-9737) + * Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900) + * UDF / UDA execution time in trace (CASSANDRA-9723) + * Fix broken internode SSL (CASSANDRA-9884) +Merged from 2.1: + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always
[4/6] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/bin/cqlsh.py -- diff --cc bin/cqlsh.py index 11f110d,000..9a348bc mode 100644,00..100644 --- a/bin/cqlsh.py +++ b/bin/cqlsh.py @@@ -1,2675 -1,0 +1,2679 @@@ +#!/bin/sh +# -*- mode: Python -*- + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# License); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +: +# bash code here; finds a suitable python interpreter and execs this file. +# prefer unqualified python if suitable: +python -c 'import sys; sys.exit(not (0x020500b0 sys.hexversion 0x0300))' 2/dev/null \ + exec python $0 $@ +for pyver in 2.6 2.7 2.5; do +which python$pyver /dev/null 21 exec python$pyver $0 $@ +done +echo No appropriate python interpreter found. 2 +exit 1 +: + +from __future__ import with_statement +from uuid import UUID + +description = CQL Shell for Apache Cassandra +version = 5.0.1 + +from StringIO import StringIO +from contextlib import contextmanager +from glob import glob + +import cmd +import sys +import os +import time +import optparse +import ConfigParser +import codecs +import locale +import platform +import warnings +import csv +import getpass +from functools import partial +import traceback + + +readline = None +try: +# check if tty first, cause readline doesn't check, and only cares +# about $TERM. we don't want the funky escape code stuff to be +# output if not a tty. +if sys.stdin.isatty(): +import readline +except ImportError: +pass + +CQL_LIB_PREFIX = 'cassandra-driver-internal-only-' + +CASSANDRA_PATH = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..') + +# use bundled libs for python-cql and thrift, if available. if there +# is a ../lib dir, use bundled libs there preferentially. +ZIPLIB_DIRS = [os.path.join(CASSANDRA_PATH, 'lib')] +myplatform = platform.system() +if myplatform == 'Linux': +ZIPLIB_DIRS.append('/usr/share/cassandra/lib') + +if os.environ.get('CQLSH_NO_BUNDLED', ''): +ZIPLIB_DIRS = () + + +def find_zip(libprefix): +for ziplibdir in ZIPLIB_DIRS: +zips = glob(os.path.join(ziplibdir, libprefix + '*.zip')) +if zips: +return max(zips) # probably the highest version, if multiple + +cql_zip = find_zip(CQL_LIB_PREFIX) +if cql_zip: +ver = os.path.splitext(os.path.basename(cql_zip))[0][len(CQL_LIB_PREFIX):] +sys.path.insert(0, os.path.join(cql_zip, 'cassandra-driver-' + ver)) + +third_parties = ('futures-', 'six-') + +for lib in third_parties: +lib_zip = find_zip(lib) +if lib_zip: +sys.path.insert(0, lib_zip) + +warnings.filterwarnings(ignore, r.*blist.*) +try: +import cassandra +except ImportError, e: +sys.exit(\nPython Cassandra driver not installed, or not on PYTHONPATH.\n + 'You might try pip install cassandra-driver.\n\n' + 'Python: %s\n' + 'Module load path: %r\n\n' + 'Error: %s\n' % (sys.executable, sys.path, e)) + +from cassandra.cluster import Cluster, PagedResult +from cassandra.query import SimpleStatement, ordered_dict_factory +from cassandra.policies import WhiteListRoundRobinPolicy +from cassandra.protocol import QueryMessage, ResultMessage +from cassandra.metadata import protect_name, protect_names, protect_value, KeyspaceMetadata, TableMetadata, ColumnMetadata +from cassandra.auth import PlainTextAuthProvider + +# cqlsh should run correctly when run out of a Cassandra source tree, +# out of an unpacked Cassandra tarball, and after a proper package install. +cqlshlibdir = os.path.join(CASSANDRA_PATH, 'pylib') +if os.path.isdir(cqlshlibdir): +sys.path.insert(0, cqlshlibdir) + +from cqlshlib import cqlhandling, cql3handling, pylexotron, sslhandling +from cqlshlib.displaying import (RED, BLUE, CYAN, ANSI_RESET, COLUMN_NAME_COLORS, + FormattedValue, colorme) +from cqlshlib.formatting import format_by_type, formatter_for, format_value_utype +from cqlshlib.util import trim_if_present, get_file_encoding_bomsize +from cqlshlib.formatting import DateTimeFormat +from cqlshlib.formatting import
[1/7] cassandra git commit: Stop CommitLogTest hanging
Repository: cassandra Updated Branches: refs/heads/trunk 3c5de3c2f - 003141364 Stop CommitLogTest hanging patch by branimir; reviewed by aweisberg for CASSANDRA-8992 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/50e5802a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/50e5802a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/50e5802a Branch: refs/heads/trunk Commit: 50e5802a7d7151d9fb1339aa3cdd2b9e1c261712 Parents: 028e7cb Author: blambov branimir.lam...@datastax.com Authored: Fri Apr 3 22:57:59 2015 +0100 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:12:59 2015 -0500 -- .../db/CommitLogFailurePolicyTest.java | 53 .../org/apache/cassandra/db/CommitLogTest.java | 33 +++- 2 files changed, 61 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java new file mode 100644 index 000..235c9f1 --- /dev/null +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -0,0 +1,53 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* License); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +*http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.cassandra.db; + +import org.junit.Assert; +import org.junit.Test; + +import org.apache.cassandra.config.Config; +import org.apache.cassandra.config.DatabaseDescriptor; +import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.exceptions.ConfigurationException; +import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.StorageService; + +public class CommitLogFailurePolicyTest +{ +@Test +public void testCommitFailurePolicy_stop() throws ConfigurationException +{ +// Need storage service active so stop policy can shutdown gossip +StorageService.instance.initServer(); +Assert.assertTrue(Gossiper.instance.isEnabled()); + +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ + DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); +CommitLog.handleCommitError(Test stop error, new Throwable()); +Assert.assertFalse(Gossiper.instance.isEnabled()); +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +} +} +} http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogTest.java b/test/unit/org/apache/cassandra/db/CommitLogTest.java index 289fbc9..45cd30c 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogTest.java @@ -23,26 +23,23 @@ import java.io.*; import java.nio.ByteBuffer; import java.util.UUID; import java.util.concurrent.ExecutionException; -import java.util.concurrent.TimeUnit; import java.util.zip.CRC32; import java.util.zip.Checksum; -import com.google.common.util.concurrent.Uninterruptibles; import org.junit.Assert; +import org.junit.BeforeClass; import org.junit.Test; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.Util; -import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; import org.apache.cassandra.db.commitlog.CommitLogDescriptor; import org.apache.cassandra.db.commitlog.ReplayPosition; +import org.apache.cassandra.db.compaction.CompactionManager; import org.apache.cassandra.db.filter.NamesQueryFilter; import org.apache.cassandra.exceptions.ConfigurationException; -import org.apache.cassandra.gms.Gossiper; import
[3/6] cassandra git commit: cqlsh: specify encoding w/ command line option
cqlsh: specify encoding w/ command line option Patch by Paulo Motta; reviewed by Tyler Hobbs for CASSANDRA-10004 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7a6a5097 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7a6a5097 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7a6a5097 Branch: refs/heads/cassandra-3.0 Commit: 7a6a5097a35feb830b66a7e602ba3cb1ead2e105 Parents: 972ae14 Author: Paulo Motta pauloricard...@gmail.com Authored: Fri Aug 14 10:40:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:40:58 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh | 7 ++- 2 files changed, 7 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f7fb63c..5a76978 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.9 + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/bin/cqlsh -- diff --git a/bin/cqlsh b/bin/cqlsh index 69b669d..084d586 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -165,6 +165,9 @@ parser.add_option('-k', '--keyspace', help='Authenticate to the given keyspace.' parser.add_option(-f, --file, help=Execute commands from FILE, then exit) parser.add_option('--debug', action='store_true', help='Show additional debugging information') +parser.add_option(--encoding, help=Specify a non-default encoding for output. If you are + + experiencing problems with unicode characters, using utf8 may fix the problem. + + (Default from system preferences: %s) % (locale.getpreferredencoding(),)) parser.add_option(--cqlshrc, help=Specify an alternative cqlshrc file location.) parser.add_option('--cqlversion', default=DEFAULT_CQLVER, help='Specify a particular CQL version (default: %default).' @@ -2331,6 +2334,7 @@ def read_options(cmdlineargs, environment): optvalues.debug = False optvalues.file = None optvalues.ssl = False +optvalues.encoding = None optvalues.tty = sys.stdin.isatty() optvalues.cqlversion = option_with_default(configs.get, 'cql', 'version', DEFAULT_CQLVER) @@ -2461,7 +2465,8 @@ def main(options, hostname, port): ssl=options.ssl, single_statement=options.execute, client_timeout=options.client_timeout, - connect_timeout=options.connect_timeout) + connect_timeout=options.connect_timeout, + encoding=options.encoding) except KeyboardInterrupt: sys.exit('Connection aborted.') except CQL_ERRORS, e:
[1/6] cassandra git commit: Stop CommitLogTest hanging
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 6445dd62b - 381cf568c Stop CommitLogTest hanging patch by branimir; reviewed by aweisberg for CASSANDRA-8992 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/50e5802a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/50e5802a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/50e5802a Branch: refs/heads/cassandra-3.0 Commit: 50e5802a7d7151d9fb1339aa3cdd2b9e1c261712 Parents: 028e7cb Author: blambov branimir.lam...@datastax.com Authored: Fri Apr 3 22:57:59 2015 +0100 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:12:59 2015 -0500 -- .../db/CommitLogFailurePolicyTest.java | 53 .../org/apache/cassandra/db/CommitLogTest.java | 33 +++- 2 files changed, 61 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java new file mode 100644 index 000..235c9f1 --- /dev/null +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -0,0 +1,53 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* License); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +*http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.cassandra.db; + +import org.junit.Assert; +import org.junit.Test; + +import org.apache.cassandra.config.Config; +import org.apache.cassandra.config.DatabaseDescriptor; +import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.exceptions.ConfigurationException; +import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.StorageService; + +public class CommitLogFailurePolicyTest +{ +@Test +public void testCommitFailurePolicy_stop() throws ConfigurationException +{ +// Need storage service active so stop policy can shutdown gossip +StorageService.instance.initServer(); +Assert.assertTrue(Gossiper.instance.isEnabled()); + +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ + DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); +CommitLog.handleCommitError(Test stop error, new Throwable()); +Assert.assertFalse(Gossiper.instance.isEnabled()); +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +} +} +} http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogTest.java b/test/unit/org/apache/cassandra/db/CommitLogTest.java index 289fbc9..45cd30c 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogTest.java @@ -23,26 +23,23 @@ import java.io.*; import java.nio.ByteBuffer; import java.util.UUID; import java.util.concurrent.ExecutionException; -import java.util.concurrent.TimeUnit; import java.util.zip.CRC32; import java.util.zip.Checksum; -import com.google.common.util.concurrent.Uninterruptibles; import org.junit.Assert; +import org.junit.BeforeClass; import org.junit.Test; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.Util; -import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; import org.apache.cassandra.db.commitlog.CommitLogDescriptor; import org.apache.cassandra.db.commitlog.ReplayPosition; +import org.apache.cassandra.db.compaction.CompactionManager; import org.apache.cassandra.db.filter.NamesQueryFilter; import org.apache.cassandra.exceptions.ConfigurationException; -import org.apache.cassandra.gms.Gossiper; import
[6/7] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: CHANGES.txt Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/381cf568 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/381cf568 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/381cf568 Branch: refs/heads/trunk Commit: 381cf568c9515a3134797bf9fe236da37b599064 Parents: 6445dd6 da3a5a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:46:08 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:46:08 2015 -0500 -- CHANGES.txt | 2 ++ bin/cqlsh.py | 8 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/381cf568/CHANGES.txt -- diff --cc CHANGES.txt index 85eb223,6bc671d..bc17fcc --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -19,7 -3,12 +19,9 @@@ Merged from 2.2 * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737) - * Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900) - * UDF / UDA execution time in trace (CASSANDRA-9723) - * Fix broken internode SSL (CASSANDRA-9884) Merged from 2.1: + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) + * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always use UTC for timestamp display (CASSANDRA-1)
[3/7] cassandra git commit: cqlsh: specify encoding w/ command line option
cqlsh: specify encoding w/ command line option Patch by Paulo Motta; reviewed by Tyler Hobbs for CASSANDRA-10004 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7a6a5097 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7a6a5097 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7a6a5097 Branch: refs/heads/trunk Commit: 7a6a5097a35feb830b66a7e602ba3cb1ead2e105 Parents: 972ae14 Author: Paulo Motta pauloricard...@gmail.com Authored: Fri Aug 14 10:40:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:40:58 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh | 7 ++- 2 files changed, 7 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f7fb63c..5a76978 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.9 + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/bin/cqlsh -- diff --git a/bin/cqlsh b/bin/cqlsh index 69b669d..084d586 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -165,6 +165,9 @@ parser.add_option('-k', '--keyspace', help='Authenticate to the given keyspace.' parser.add_option(-f, --file, help=Execute commands from FILE, then exit) parser.add_option('--debug', action='store_true', help='Show additional debugging information') +parser.add_option(--encoding, help=Specify a non-default encoding for output. If you are + + experiencing problems with unicode characters, using utf8 may fix the problem. + + (Default from system preferences: %s) % (locale.getpreferredencoding(),)) parser.add_option(--cqlshrc, help=Specify an alternative cqlshrc file location.) parser.add_option('--cqlversion', default=DEFAULT_CQLVER, help='Specify a particular CQL version (default: %default).' @@ -2331,6 +2334,7 @@ def read_options(cmdlineargs, environment): optvalues.debug = False optvalues.file = None optvalues.ssl = False +optvalues.encoding = None optvalues.tty = sys.stdin.isatty() optvalues.cqlversion = option_with_default(configs.get, 'cql', 'version', DEFAULT_CQLVER) @@ -2461,7 +2465,8 @@ def main(options, hostname, port): ssl=options.ssl, single_statement=options.execute, client_timeout=options.client_timeout, - connect_timeout=options.connect_timeout) + connect_timeout=options.connect_timeout, + encoding=options.encoding) except KeyboardInterrupt: sys.exit('Connection aborted.') except CQL_ERRORS, e:
[7/7] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/00314136 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/00314136 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/00314136 Branch: refs/heads/trunk Commit: 003141364519000464edaae9f71e5c24c68a202a Parents: 3c5de3c 381cf56 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:46:30 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:46:30 2015 -0500 -- CHANGES.txt | 2 ++ bin/cqlsh.py | 8 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/00314136/CHANGES.txt --
[6/6] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: CHANGES.txt Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/381cf568 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/381cf568 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/381cf568 Branch: refs/heads/cassandra-3.0 Commit: 381cf568c9515a3134797bf9fe236da37b599064 Parents: 6445dd6 da3a5a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:46:08 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:46:08 2015 -0500 -- CHANGES.txt | 2 ++ bin/cqlsh.py | 8 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/381cf568/CHANGES.txt -- diff --cc CHANGES.txt index 85eb223,6bc671d..bc17fcc --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -19,7 -3,12 +19,9 @@@ Merged from 2.2 * Route gossip messages over dedicated socket (CASSANDRA-9237) * Add checksum to saved cache files (CASSANDRA-9265) * Log warning when using an aggregate without partition key (CASSANDRA-9737) - * Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900) - * UDF / UDA execution time in trace (CASSANDRA-9723) - * Fix broken internode SSL (CASSANDRA-9884) Merged from 2.1: + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) + * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always use UTC for timestamp display (CASSANDRA-1)
[jira] [Commented] (CASSANDRA-9500) SequentialWriter should extend BufferedDataOutputStreamPlus
[ https://issues.apache.org/jira/browse/CASSANDRA-9500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697187#comment-14697187 ] Ariel Weisberg commented on CASSANDRA-9500: --- Permit misaligned flushes is just as inaccurate since now it is incorrectly named for the constraint that you can't write direct to a channel. Which code path are you looking for coverage of? The only uncovered paths are close(), applyToChannel, order(), the little endian branch of writeSlow(), and writeExcessSlow that you just introduced. writeExcessSlow has indirect coverage that works well from CompressedSequentailWriterTest. I'll add a test to BDOSPTest just in case. I don't see the case for varying buffer size. What is that supposed to cover? SequentialWriter should extend BufferedDataOutputStreamPlus --- Key: CASSANDRA-9500 URL: https://issues.apache.org/jira/browse/CASSANDRA-9500 Project: Cassandra Issue Type: Improvement Reporter: Benedict Assignee: Ariel Weisberg Priority: Minor SequentialWriter is the last piece left not implementing DataOutputStreamPlus. It should not be too tricky to extend it, and it should result in improved write throughput. Further, it will permit it to exploit the more efficient implementation of writeVInt being delivered in CASSANDRA-9499 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9117) LEAK DETECTED during repair, startup
[ https://issues.apache.org/jira/browse/CASSANDRA-9117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697190#comment-14697190 ] Sebastian Estevez commented on CASSANDRA-9117: -- Seeing this issue on 2.1.8: https://dl.dropboxusercontent.com/u/4179566/cassandra-system.log {code} ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,055 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@5534701) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@194296283:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@fab2c71) to class org.apache.cassandra.io.util.MmappedSegmentedFile$Cleanup@1252635616:/var/lib/cassandra/data/metric/metric-811fa5402a3b11e5a2c0870545c0f352/metric-metric-ka-6883-Index.db was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@555d8efb) to class org.apache.cassandra.io.util.MmappedSegmentedFile$Cleanup@1252635616:/var/lib/cassandra/data/metric/metric-811fa5402a3b11e5a2c0870545c0f352/metric-metric-ka-6883-Index.db was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@7b29bfea) to class org.apache.cassandra.io.util.MmappedSegmentedFile$Cleanup@1252635616:/var/lib/cassandra/data/metric/metric-811fa5402a3b11e5a2c0870545c0f352/metric-metric-ka-6883-Index.db was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@2d37dc5a) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@713444527:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@13153552) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@713444527:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@25f51e35) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@713444527:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@3633d3dd) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@194296283:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,057 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@2ec81280) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@194296283:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,058 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@144d1dae) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@194296283:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,058 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@1944bda4) to class org.apache.cassandra.utils.concurrent.WrappedSharedCloseable$1@194296283:[[OffHeapBitSet]] was not released before the reference was garbage collected ERROR [Reference-Reaper:1] 2015-08-14 13:37:37,058 Ref.java:179 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@31c1386a) to class org.apache.cassandra.io.util.MmappedSegmentedFile$Cleanup@1601396928:/var/lib/cassandra/data/metric/metric-811fa5402a3b11e5a2c0870545c0f352/metric-metric-ka-8229-Index.db was not released before the reference was garbage collected {code} LEAK DETECTED during repair, startup Key: CASSANDRA-9117 URL: https://issues.apache.org/jira/browse/CASSANDRA-9117 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.2.0 beta 1 Attachments: 0001-dont-initialize-writer-before-checking-if-iter-is-em.patch, node1.log, node2.log.gz When
[jira] [Commented] (CASSANDRA-9552) COPY FROM times out after 110000 inserts
[ https://issues.apache.org/jira/browse/CASSANDRA-9552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697221#comment-14697221 ] Dmitry commented on CASSANDRA-9552: --- Getting nearly same error. But my problem is in - big amount of key:value items in map collection. When I try to insert 1kk rows with more than 20 pairs of key:value into one map collection - it fails with: {code:sql} COPY data(Col1, Col2, Col3, Col4, Col5) FROM '/tmp/dumpfile1kk20.tsv' WITH DELIMITER='\t'; Processed 17 rows; Write: 4008.84 rows/s Connection heartbeat failure Aborting import at record #177876. Previously inserted records are still present, and some records after that may be present as well. {code} If I try to insert nearly 80 pairs of key:value into one map collection - it fails earlier - near 90k row COPY FROM times out after 11 inserts Key: CASSANDRA-9552 URL: https://issues.apache.org/jira/browse/CASSANDRA-9552 Project: Cassandra Issue Type: Improvement Reporter: Brian Hess Labels: cqlsh Fix For: 2.1.x I am trying to test out performance of COPY FROM on various schemas. I have a 100-BIGINT-column table defined as: {code} CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '3'} AND durable_writes = true; CREATE TABLE test.test100 ( pkey bigint,ccol bigint,col0 bigint,col1 bigint,col10 bigint, col11 bigint,col12 bigint,col13 bigint,col14 bigint,col15 bigint, col16 bigint,col17 bigint,col18 bigint,col19 bigint,col2 bigint, col20 bigint,col21 bigint,col22 bigint,col23 bigint,col24 bigint, col25 bigint,col26 bigint,col27 bigint,col28 bigint,col29 bigint, col3 bigint,col30 bigint,col31 bigint,col32 bigint,col33 bigint, col34 bigint,col35 bigint,col36 bigint,col37 bigint,col38 bigint, col39 bigint,col4 bigint,col40 bigint,col41 bigint,col42 bigint, col43 bigint,col44 bigint,col45 bigint,col46 bigint,col47 bigint, col48 bigint,col49 bigint,col5 bigint,col50 bigint,col51 bigint, col52 bigint,col53 bigint,col54 bigint,col55 bigint,col56 bigint, col57 bigint,col58 bigint,col59 bigint,col6 bigint,col60 bigint, col61 bigint,col62 bigint,col63 bigint,col64 bigint,col65 bigint, col66 bigint,col67 bigint,col68 bigint,col69 bigint,col7 bigint, col70 bigint,col71 bigint,col72 bigint,col73 bigint,col74 bigint, col75 bigint,col76 bigint,col77 bigint,col78 bigint,col79 bigint, col8 bigint,col80 bigint,col81 bigint,col82 bigint,col83 bigint, col84 bigint,col85 bigint,col86 bigint,col87 bigint,col88 bigint, col89 bigint,col9 bigint,col90 bigint,col91 bigint,col92 bigint, col93 bigint,col94 bigint,col95 bigint,col96 bigint,col97 bigint, PRIMARY KEY (pkey, ccol) ) WITH CLUSTERING ORDER BY (ccol ASC) AND bloom_filter_fp_chance = 0.01 AND caching = '{keys:ALL, rows_per_partition:NONE}' AND comment = '' AND compaction = {'min_threshold': '4', 'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32'} AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'} AND dclocal_read_repair_chance = 0.1 AND default_time_to_live = 0 AND gc_grace_seconds = 864000 AND max_index_interval = 2048 AND memtable_flush_period_in_ms = 0 AND min_index_interval = 128 AND read_repair_chance = 0.0 AND speculative_retry = '99.0PERCENTILE'; {code} I then try to load the linked file of 120,000 rows of 100 BIGINT columns via: {code} cqlsh -e COPY test.test100(pkey,ccol,col0,col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,col11,col12,col13,col14,col15,col16,col17,col18,col19,col20,col21,col22,col23,col24,col25,col26,col27,col28,col29,col30,col31,col32,col33,col34,col35,col36,col37,col38,col39,col40,col41,col42,col43,col44,col45,col46,col47,col48,col49,col50,col51,col52,col53,col54,col55,col56,col57,col58,col59,col60,col61,col62,col63,col64,col65,col66,col67,col68,col69,col70,col71,col72,col73,col74,col75,col76,col77,col78,col79,col80,col81,col82,col83,col84,col85,col86,col87,col88,col89,col90,col91,col92,col93,col94,col95,col96,col97) FROM 'data120K.csv' {code} Data file here: https://drive.google.com/file/d/0B87-Pevy14fuUVcxemFRcFFtRjQ/view?usp=sharing After 11 rows, it errors and hangs: {code} stdin:1:11 rows; Write: 19848.21 rows/s Connection heartbeat failure
[1/2] cassandra git commit: Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 f8f6fd2d7 - 6445dd62b Unable to start Thrift RPC server in cassandra deployment created using cassandra-all patch by Peter Palaga; reviewed by Robert Stupp for CASSANDRA-10071 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1ba949af Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1ba949af Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1ba949af Branch: refs/heads/cassandra-3.0 Commit: 1ba949af4030cf09231be477d9ef0bf8baa120d7 Parents: 23826f7 Author: Peter Palaga ppal...@redhat.com Authored: Fri Aug 14 17:23:22 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:23:22 2015 +0200 -- build.xml | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1ba949af/build.xml -- diff --git a/build.xml b/build.xml index 8d5c827..26c3524 100644 --- a/build.xml +++ b/build.xml @@ -505,7 +505,7 @@ artifactId=cassandra-parent version=${version}/ !-- do NOT remove this, it breaks pig-test -- -dependency groupId=joda-time artifactId=joda-time version=2.4 / +dependency groupId=joda-time artifactId=joda-time/ /artifact:pom !-- now the pom's for artifacts being deployed to Maven Central -- @@ -540,9 +540,9 @@ dependency groupId=org.mindrot artifactId=jbcrypt/ dependency groupId=io.dropwizard.metrics artifactId=metrics-core/ dependency groupId=com.addthis.metrics artifactId=reporter-config3/ -dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server version=0.3.5/ -dependency groupId=com.clearspring.analytics artifactId=stream version=2.5.2 / -dependency groupId=net.sf.supercsv artifactId=super-csv version=2.1.0 / +dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server/ +dependency groupId=com.clearspring.analytics artifactId=stream/ +dependency groupId=net.sf.supercsv artifactId=super-csv/ dependency groupId=ch.qos.logback artifactId=logback-core/ dependency groupId=ch.qos.logback artifactId=logback-classic/ @@ -559,16 +559,16 @@ -- !-- don't need jna to run, but nice to have -- -dependency groupId=net.java.dev.jna artifactId=jna version=4.0.0/ +dependency groupId=net.java.dev.jna artifactId=jna/ !-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -- dependency groupId=com.github.jbellis artifactId=jamm/ dependency groupId=com.github.tjake artifactId=crc32ex/ dependency groupId=io.netty artifactId=netty-all/ - dependency groupId=joda-time artifactId=joda-time version=2.4 / + dependency groupId=joda-time artifactId=joda-time/ -dependency groupId=org.fusesource artifactId=sigar version=1.6.4/ +dependency groupId=org.fusesource artifactId=sigar/ /artifact:pom artifact:pom id=thrift-pom artifactId=cassandra-thrift
[1/3] cassandra git commit: Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
Repository: cassandra Updated Branches: refs/heads/trunk d0ba476c8 - 3c5de3c2f Unable to start Thrift RPC server in cassandra deployment created using cassandra-all patch by Peter Palaga; reviewed by Robert Stupp for CASSANDRA-10071 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1ba949af Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1ba949af Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1ba949af Branch: refs/heads/trunk Commit: 1ba949af4030cf09231be477d9ef0bf8baa120d7 Parents: 23826f7 Author: Peter Palaga ppal...@redhat.com Authored: Fri Aug 14 17:23:22 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:23:22 2015 +0200 -- build.xml | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1ba949af/build.xml -- diff --git a/build.xml b/build.xml index 8d5c827..26c3524 100644 --- a/build.xml +++ b/build.xml @@ -505,7 +505,7 @@ artifactId=cassandra-parent version=${version}/ !-- do NOT remove this, it breaks pig-test -- -dependency groupId=joda-time artifactId=joda-time version=2.4 / +dependency groupId=joda-time artifactId=joda-time/ /artifact:pom !-- now the pom's for artifacts being deployed to Maven Central -- @@ -540,9 +540,9 @@ dependency groupId=org.mindrot artifactId=jbcrypt/ dependency groupId=io.dropwizard.metrics artifactId=metrics-core/ dependency groupId=com.addthis.metrics artifactId=reporter-config3/ -dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server version=0.3.5/ -dependency groupId=com.clearspring.analytics artifactId=stream version=2.5.2 / -dependency groupId=net.sf.supercsv artifactId=super-csv version=2.1.0 / +dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server/ +dependency groupId=com.clearspring.analytics artifactId=stream/ +dependency groupId=net.sf.supercsv artifactId=super-csv/ dependency groupId=ch.qos.logback artifactId=logback-core/ dependency groupId=ch.qos.logback artifactId=logback-classic/ @@ -559,16 +559,16 @@ -- !-- don't need jna to run, but nice to have -- -dependency groupId=net.java.dev.jna artifactId=jna version=4.0.0/ +dependency groupId=net.java.dev.jna artifactId=jna/ !-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -- dependency groupId=com.github.jbellis artifactId=jamm/ dependency groupId=com.github.tjake artifactId=crc32ex/ dependency groupId=io.netty artifactId=netty-all/ - dependency groupId=joda-time artifactId=joda-time version=2.4 / + dependency groupId=joda-time artifactId=joda-time/ -dependency groupId=org.fusesource artifactId=sigar version=1.6.4/ +dependency groupId=org.fusesource artifactId=sigar/ /artifact:pom artifact:pom id=thrift-pom artifactId=cassandra-thrift
cassandra git commit: Unable to start Thrift RPC server in cassandra deployment created using cassandra-all
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 23826f7a2 - 1ba949af4 Unable to start Thrift RPC server in cassandra deployment created using cassandra-all patch by Peter Palaga; reviewed by Robert Stupp for CASSANDRA-10071 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1ba949af Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1ba949af Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1ba949af Branch: refs/heads/cassandra-2.2 Commit: 1ba949af4030cf09231be477d9ef0bf8baa120d7 Parents: 23826f7 Author: Peter Palaga ppal...@redhat.com Authored: Fri Aug 14 17:23:22 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Fri Aug 14 17:23:22 2015 +0200 -- build.xml | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1ba949af/build.xml -- diff --git a/build.xml b/build.xml index 8d5c827..26c3524 100644 --- a/build.xml +++ b/build.xml @@ -505,7 +505,7 @@ artifactId=cassandra-parent version=${version}/ !-- do NOT remove this, it breaks pig-test -- -dependency groupId=joda-time artifactId=joda-time version=2.4 / +dependency groupId=joda-time artifactId=joda-time/ /artifact:pom !-- now the pom's for artifacts being deployed to Maven Central -- @@ -540,9 +540,9 @@ dependency groupId=org.mindrot artifactId=jbcrypt/ dependency groupId=io.dropwizard.metrics artifactId=metrics-core/ dependency groupId=com.addthis.metrics artifactId=reporter-config3/ -dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server version=0.3.5/ -dependency groupId=com.clearspring.analytics artifactId=stream version=2.5.2 / -dependency groupId=net.sf.supercsv artifactId=super-csv version=2.1.0 / +dependency groupId=com.thinkaurelius.thrift artifactId=thrift-server/ +dependency groupId=com.clearspring.analytics artifactId=stream/ +dependency groupId=net.sf.supercsv artifactId=super-csv/ dependency groupId=ch.qos.logback artifactId=logback-core/ dependency groupId=ch.qos.logback artifactId=logback-classic/ @@ -559,16 +559,16 @@ -- !-- don't need jna to run, but nice to have -- -dependency groupId=net.java.dev.jna artifactId=jna version=4.0.0/ +dependency groupId=net.java.dev.jna artifactId=jna/ !-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -- dependency groupId=com.github.jbellis artifactId=jamm/ dependency groupId=com.github.tjake artifactId=crc32ex/ dependency groupId=io.netty artifactId=netty-all/ - dependency groupId=joda-time artifactId=joda-time version=2.4 / + dependency groupId=joda-time artifactId=joda-time/ -dependency groupId=org.fusesource artifactId=sigar version=1.6.4/ +dependency groupId=org.fusesource artifactId=sigar/ /artifact:pom artifact:pom id=thrift-pom artifactId=cassandra-thrift
[jira] [Commented] (CASSANDRA-6717) Modernize schema tables
[ https://issues.apache.org/jira/browse/CASSANDRA-6717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697225#comment-14697225 ] Sam Tunnicliffe commented on CASSANDRA-6717: Just a note, there are actually some new test failures in BatchLogManagerTest. I'll push a fix for them asap. Modernize schema tables --- Key: CASSANDRA-6717 URL: https://issues.apache.org/jira/browse/CASSANDRA-6717 Project: Cassandra Issue Type: Sub-task Reporter: Sylvain Lebresne Assignee: Sam Tunnicliffe Labels: client-impacting, doc-impacting Fix For: 3.0 beta 1 There is a few problems/improvements that can be done with the way we store schema: # CASSANDRA-4988: as explained on the ticket, storing the comparator is now redundant (or almost, we'd need to store whether the table is COMPACT or not too, which we don't currently is easy and probably a good idea anyway), it can be entirely reconstructed from the infos in schema_columns (the same is true of key_validator and subcomparator, and replacing default_validator by a COMPACT_VALUE column in all case is relatively simple). And storing the comparator as an opaque string broke concurrent updates of sub-part of said comparator (concurrent collection addition or altering 2 separate clustering columns typically) so it's really worth removing it. # CASSANDRA-4603: it's time to get rid of those ugly json maps. I'll note that schema_keyspaces is a problem due to its use of COMPACT STORAGE, but I think we should fix it once and for-all nonetheless (see below). # For CASSANDRA-6382 and to allow indexing both map keys and values at the same time, we'd need to be able to have more than one index definition for a given column. # There is a few mismatches in table options between the one stored in the schema and the one used when declaring/altering a table which would be nice to fix. The compaction, compression and replication maps are one already mentioned from CASSANDRA-4603, but also for some reason 'dclocal_read_repair_chance' in CQL is called just 'local_read_repair_chance' in the schema table, and 'min/max_compaction_threshold' are column families option in the schema but just compaction options for CQL (which makes more sense). None of those issues are major, and we could probably deal with them independently but it might be simpler to just fix them all in one shot so I wanted to sum them all up here. In particular, the fact that 'schema_keyspaces' uses COMPACT STORAGE is annoying (for the replication map, but it may limit future stuff too) which suggest we should migrate it to a new, non COMPACT table. And while that's arguably a detail, it wouldn't hurt to rename schema_columnfamilies to schema_tables for the years to come since that's the prefered vernacular for CQL. Overall, what I would suggest is to move all schema tables to a new keyspace, named 'schema' for instance (or 'system_schema' but I prefer the shorter version), and fix all the issues above at once. Since we currently don't exchange schema between nodes of different versions, all we'd need to do that is a one shot startup migration, and overall, I think it could be simpler for clients to deal with one clear migration than to have to handle minor individual changes all over the place. I also think it's somewhat cleaner conceptually to have schema tables in their own keyspace since they are replicated through a different mechanism than other system tables. If we do that, we could, for instance, migrate to the following schema tables (details up for discussion of course): {noformat} CREATE TYPE user_type ( name text, column_names listtext, column_types listtext ) CREATE TABLE keyspaces ( name text PRIMARY KEY, durable_writes boolean, replication mapstring, string, user_types mapstring, user_type ) CREATE TYPE trigger_definition ( name text, options maptex, text ) CREATE TABLE tables ( keyspace text, name text, id uuid, table_type text, // COMPACT, CQL or SUPER dropped_columns maptext, bigint, triggers maptext, trigger_definition, // options comment text, compaction maptext, text, compression maptext, text, read_repair_chance double, dclocal_read_repair_chance double, gc_grace_seconds int, caching text, rows_per_partition_to_cache text, default_time_to_live int, min_index_interval int, max_index_interval int, speculative_retry text, populate_io_cache_on_flush boolean, bloom_filter_fp_chance double memtable_flush_period_in_ms int, PRIMARY KEY (keyspace, name) ) CREATE TYPE index_definition ( name text, index_type text, options maptext, text ) CREATE TABLE columns ( keyspace text, table text, name
[4/5] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/bin/cqlsh.py -- diff --cc bin/cqlsh.py index 11f110d,000..9a348bc mode 100644,00..100644 --- a/bin/cqlsh.py +++ b/bin/cqlsh.py @@@ -1,2675 -1,0 +1,2679 @@@ +#!/bin/sh +# -*- mode: Python -*- + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# License); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +: +# bash code here; finds a suitable python interpreter and execs this file. +# prefer unqualified python if suitable: +python -c 'import sys; sys.exit(not (0x020500b0 sys.hexversion 0x0300))' 2/dev/null \ + exec python $0 $@ +for pyver in 2.6 2.7 2.5; do +which python$pyver /dev/null 21 exec python$pyver $0 $@ +done +echo No appropriate python interpreter found. 2 +exit 1 +: + +from __future__ import with_statement +from uuid import UUID + +description = CQL Shell for Apache Cassandra +version = 5.0.1 + +from StringIO import StringIO +from contextlib import contextmanager +from glob import glob + +import cmd +import sys +import os +import time +import optparse +import ConfigParser +import codecs +import locale +import platform +import warnings +import csv +import getpass +from functools import partial +import traceback + + +readline = None +try: +# check if tty first, cause readline doesn't check, and only cares +# about $TERM. we don't want the funky escape code stuff to be +# output if not a tty. +if sys.stdin.isatty(): +import readline +except ImportError: +pass + +CQL_LIB_PREFIX = 'cassandra-driver-internal-only-' + +CASSANDRA_PATH = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..') + +# use bundled libs for python-cql and thrift, if available. if there +# is a ../lib dir, use bundled libs there preferentially. +ZIPLIB_DIRS = [os.path.join(CASSANDRA_PATH, 'lib')] +myplatform = platform.system() +if myplatform == 'Linux': +ZIPLIB_DIRS.append('/usr/share/cassandra/lib') + +if os.environ.get('CQLSH_NO_BUNDLED', ''): +ZIPLIB_DIRS = () + + +def find_zip(libprefix): +for ziplibdir in ZIPLIB_DIRS: +zips = glob(os.path.join(ziplibdir, libprefix + '*.zip')) +if zips: +return max(zips) # probably the highest version, if multiple + +cql_zip = find_zip(CQL_LIB_PREFIX) +if cql_zip: +ver = os.path.splitext(os.path.basename(cql_zip))[0][len(CQL_LIB_PREFIX):] +sys.path.insert(0, os.path.join(cql_zip, 'cassandra-driver-' + ver)) + +third_parties = ('futures-', 'six-') + +for lib in third_parties: +lib_zip = find_zip(lib) +if lib_zip: +sys.path.insert(0, lib_zip) + +warnings.filterwarnings(ignore, r.*blist.*) +try: +import cassandra +except ImportError, e: +sys.exit(\nPython Cassandra driver not installed, or not on PYTHONPATH.\n + 'You might try pip install cassandra-driver.\n\n' + 'Python: %s\n' + 'Module load path: %r\n\n' + 'Error: %s\n' % (sys.executable, sys.path, e)) + +from cassandra.cluster import Cluster, PagedResult +from cassandra.query import SimpleStatement, ordered_dict_factory +from cassandra.policies import WhiteListRoundRobinPolicy +from cassandra.protocol import QueryMessage, ResultMessage +from cassandra.metadata import protect_name, protect_names, protect_value, KeyspaceMetadata, TableMetadata, ColumnMetadata +from cassandra.auth import PlainTextAuthProvider + +# cqlsh should run correctly when run out of a Cassandra source tree, +# out of an unpacked Cassandra tarball, and after a proper package install. +cqlshlibdir = os.path.join(CASSANDRA_PATH, 'pylib') +if os.path.isdir(cqlshlibdir): +sys.path.insert(0, cqlshlibdir) + +from cqlshlib import cqlhandling, cql3handling, pylexotron, sslhandling +from cqlshlib.displaying import (RED, BLUE, CYAN, ANSI_RESET, COLUMN_NAME_COLORS, + FormattedValue, colorme) +from cqlshlib.formatting import format_by_type, formatter_for, format_value_utype +from cqlshlib.util import trim_if_present, get_file_encoding_bomsize +from cqlshlib.formatting import DateTimeFormat +from cqlshlib.formatting import
[3/5] cassandra git commit: cqlsh: specify encoding w/ command line option
cqlsh: specify encoding w/ command line option Patch by Paulo Motta; reviewed by Tyler Hobbs for CASSANDRA-10004 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7a6a5097 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7a6a5097 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7a6a5097 Branch: refs/heads/cassandra-2.2 Commit: 7a6a5097a35feb830b66a7e602ba3cb1ead2e105 Parents: 972ae14 Author: Paulo Motta pauloricard...@gmail.com Authored: Fri Aug 14 10:40:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:40:58 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh | 7 ++- 2 files changed, 7 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f7fb63c..5a76978 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.9 + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a6a5097/bin/cqlsh -- diff --git a/bin/cqlsh b/bin/cqlsh index 69b669d..084d586 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -165,6 +165,9 @@ parser.add_option('-k', '--keyspace', help='Authenticate to the given keyspace.' parser.add_option(-f, --file, help=Execute commands from FILE, then exit) parser.add_option('--debug', action='store_true', help='Show additional debugging information') +parser.add_option(--encoding, help=Specify a non-default encoding for output. If you are + + experiencing problems with unicode characters, using utf8 may fix the problem. + + (Default from system preferences: %s) % (locale.getpreferredencoding(),)) parser.add_option(--cqlshrc, help=Specify an alternative cqlshrc file location.) parser.add_option('--cqlversion', default=DEFAULT_CQLVER, help='Specify a particular CQL version (default: %default).' @@ -2331,6 +2334,7 @@ def read_options(cmdlineargs, environment): optvalues.debug = False optvalues.file = None optvalues.ssl = False +optvalues.encoding = None optvalues.tty = sys.stdin.isatty() optvalues.cqlversion = option_with_default(configs.get, 'cql', 'version', DEFAULT_CQLVER) @@ -2461,7 +2465,8 @@ def main(options, hostname, port): ssl=options.ssl, single_statement=options.execute, client_timeout=options.client_timeout, - connect_timeout=options.connect_timeout) + connect_timeout=options.connect_timeout, + encoding=options.encoding) except KeyboardInterrupt: sys.exit('Connection aborted.') except CQL_ERRORS, e:
[1/5] cassandra git commit: Stop CommitLogTest hanging
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 1ba949af4 - da3a5a7fa Stop CommitLogTest hanging patch by branimir; reviewed by aweisberg for CASSANDRA-8992 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/50e5802a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/50e5802a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/50e5802a Branch: refs/heads/cassandra-2.2 Commit: 50e5802a7d7151d9fb1339aa3cdd2b9e1c261712 Parents: 028e7cb Author: blambov branimir.lam...@datastax.com Authored: Fri Apr 3 22:57:59 2015 +0100 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:12:59 2015 -0500 -- .../db/CommitLogFailurePolicyTest.java | 53 .../org/apache/cassandra/db/CommitLogTest.java | 33 +++- 2 files changed, 61 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java new file mode 100644 index 000..235c9f1 --- /dev/null +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -0,0 +1,53 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* License); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +*http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.cassandra.db; + +import org.junit.Assert; +import org.junit.Test; + +import org.apache.cassandra.config.Config; +import org.apache.cassandra.config.DatabaseDescriptor; +import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.exceptions.ConfigurationException; +import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.StorageService; + +public class CommitLogFailurePolicyTest +{ +@Test +public void testCommitFailurePolicy_stop() throws ConfigurationException +{ +// Need storage service active so stop policy can shutdown gossip +StorageService.instance.initServer(); +Assert.assertTrue(Gossiper.instance.isEnabled()); + +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ + DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); +CommitLog.handleCommitError(Test stop error, new Throwable()); +Assert.assertFalse(Gossiper.instance.isEnabled()); +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +} +} +} http://git-wip-us.apache.org/repos/asf/cassandra/blob/50e5802a/test/unit/org/apache/cassandra/db/CommitLogTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogTest.java b/test/unit/org/apache/cassandra/db/CommitLogTest.java index 289fbc9..45cd30c 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogTest.java @@ -23,26 +23,23 @@ import java.io.*; import java.nio.ByteBuffer; import java.util.UUID; import java.util.concurrent.ExecutionException; -import java.util.concurrent.TimeUnit; import java.util.zip.CRC32; import java.util.zip.Checksum; -import com.google.common.util.concurrent.Uninterruptibles; import org.junit.Assert; +import org.junit.BeforeClass; import org.junit.Test; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.Util; -import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; import org.apache.cassandra.db.commitlog.CommitLogDescriptor; import org.apache.cassandra.db.commitlog.ReplayPosition; +import org.apache.cassandra.db.compaction.CompactionManager; import org.apache.cassandra.db.filter.NamesQueryFilter; import org.apache.cassandra.exceptions.ConfigurationException; -import org.apache.cassandra.gms.Gossiper; import
[2/5] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/972ae147 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/972ae147 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/972ae147 Branch: refs/heads/cassandra-2.2 Commit: 972ae147247a0e4c2bba3a3c2853c2209e93cd95 Parents: 012b987 50e5802 Author: Jonathan Ellis jbel...@apache.org Authored: Tue Aug 11 16:32:47 2015 -0500 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:32:47 2015 -0500 -- --
[5/6] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
Merge branch 'cassandra-2.1' into cassandra-2.2 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/da3a5a7f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/da3a5a7f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/da3a5a7f Branch: refs/heads/cassandra-3.0 Commit: da3a5a7fa29cd1e1fdcfa397a4b63a1ccb8e9b62 Parents: 1ba949a 7a6a509 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:45:09 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:45:09 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh.py | 8 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/CHANGES.txt -- diff --cc CHANGES.txt index 6a9dc1e,5a76978..6bc671d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,12 -1,5 +1,13 @@@ -2.1.9 +2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) + * Route gossip messages over dedicated socket (CASSANDRA-9237) + * Add checksum to saved cache files (CASSANDRA-9265) + * Log warning when using an aggregate without partition key (CASSANDRA-9737) + * Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900) + * UDF / UDA execution time in trace (CASSANDRA-9723) + * Fix broken internode SSL (CASSANDRA-9884) +Merged from 2.1: + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always
[2/6] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/972ae147 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/972ae147 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/972ae147 Branch: refs/heads/cassandra-3.0 Commit: 972ae147247a0e4c2bba3a3c2853c2209e93cd95 Parents: 012b987 50e5802 Author: Jonathan Ellis jbel...@apache.org Authored: Tue Aug 11 16:32:47 2015 -0500 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:32:47 2015 -0500 -- --
[4/7] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/bin/cqlsh.py -- diff --cc bin/cqlsh.py index 11f110d,000..9a348bc mode 100644,00..100644 --- a/bin/cqlsh.py +++ b/bin/cqlsh.py @@@ -1,2675 -1,0 +1,2679 @@@ +#!/bin/sh +# -*- mode: Python -*- + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# License); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +: +# bash code here; finds a suitable python interpreter and execs this file. +# prefer unqualified python if suitable: +python -c 'import sys; sys.exit(not (0x020500b0 sys.hexversion 0x0300))' 2/dev/null \ + exec python $0 $@ +for pyver in 2.6 2.7 2.5; do +which python$pyver /dev/null 21 exec python$pyver $0 $@ +done +echo No appropriate python interpreter found. 2 +exit 1 +: + +from __future__ import with_statement +from uuid import UUID + +description = CQL Shell for Apache Cassandra +version = 5.0.1 + +from StringIO import StringIO +from contextlib import contextmanager +from glob import glob + +import cmd +import sys +import os +import time +import optparse +import ConfigParser +import codecs +import locale +import platform +import warnings +import csv +import getpass +from functools import partial +import traceback + + +readline = None +try: +# check if tty first, cause readline doesn't check, and only cares +# about $TERM. we don't want the funky escape code stuff to be +# output if not a tty. +if sys.stdin.isatty(): +import readline +except ImportError: +pass + +CQL_LIB_PREFIX = 'cassandra-driver-internal-only-' + +CASSANDRA_PATH = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..') + +# use bundled libs for python-cql and thrift, if available. if there +# is a ../lib dir, use bundled libs there preferentially. +ZIPLIB_DIRS = [os.path.join(CASSANDRA_PATH, 'lib')] +myplatform = platform.system() +if myplatform == 'Linux': +ZIPLIB_DIRS.append('/usr/share/cassandra/lib') + +if os.environ.get('CQLSH_NO_BUNDLED', ''): +ZIPLIB_DIRS = () + + +def find_zip(libprefix): +for ziplibdir in ZIPLIB_DIRS: +zips = glob(os.path.join(ziplibdir, libprefix + '*.zip')) +if zips: +return max(zips) # probably the highest version, if multiple + +cql_zip = find_zip(CQL_LIB_PREFIX) +if cql_zip: +ver = os.path.splitext(os.path.basename(cql_zip))[0][len(CQL_LIB_PREFIX):] +sys.path.insert(0, os.path.join(cql_zip, 'cassandra-driver-' + ver)) + +third_parties = ('futures-', 'six-') + +for lib in third_parties: +lib_zip = find_zip(lib) +if lib_zip: +sys.path.insert(0, lib_zip) + +warnings.filterwarnings(ignore, r.*blist.*) +try: +import cassandra +except ImportError, e: +sys.exit(\nPython Cassandra driver not installed, or not on PYTHONPATH.\n + 'You might try pip install cassandra-driver.\n\n' + 'Python: %s\n' + 'Module load path: %r\n\n' + 'Error: %s\n' % (sys.executable, sys.path, e)) + +from cassandra.cluster import Cluster, PagedResult +from cassandra.query import SimpleStatement, ordered_dict_factory +from cassandra.policies import WhiteListRoundRobinPolicy +from cassandra.protocol import QueryMessage, ResultMessage +from cassandra.metadata import protect_name, protect_names, protect_value, KeyspaceMetadata, TableMetadata, ColumnMetadata +from cassandra.auth import PlainTextAuthProvider + +# cqlsh should run correctly when run out of a Cassandra source tree, +# out of an unpacked Cassandra tarball, and after a proper package install. +cqlshlibdir = os.path.join(CASSANDRA_PATH, 'pylib') +if os.path.isdir(cqlshlibdir): +sys.path.insert(0, cqlshlibdir) + +from cqlshlib import cqlhandling, cql3handling, pylexotron, sslhandling +from cqlshlib.displaying import (RED, BLUE, CYAN, ANSI_RESET, COLUMN_NAME_COLORS, + FormattedValue, colorme) +from cqlshlib.formatting import format_by_type, formatter_for, format_value_utype +from cqlshlib.util import trim_if_present, get_file_encoding_bomsize +from cqlshlib.formatting import DateTimeFormat +from cqlshlib.formatting import
[2/7] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/972ae147 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/972ae147 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/972ae147 Branch: refs/heads/trunk Commit: 972ae147247a0e4c2bba3a3c2853c2209e93cd95 Parents: 012b987 50e5802 Author: Jonathan Ellis jbel...@apache.org Authored: Tue Aug 11 16:32:47 2015 -0500 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Aug 11 16:32:47 2015 -0500 -- --
[5/7] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
Merge branch 'cassandra-2.1' into cassandra-2.2 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/da3a5a7f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/da3a5a7f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/da3a5a7f Branch: refs/heads/trunk Commit: da3a5a7fa29cd1e1fdcfa397a4b63a1ccb8e9b62 Parents: 1ba949a 7a6a509 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Fri Aug 14 10:45:09 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Fri Aug 14 10:45:09 2015 -0500 -- CHANGES.txt | 1 + bin/cqlsh.py | 8 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/da3a5a7f/CHANGES.txt -- diff --cc CHANGES.txt index 6a9dc1e,5a76978..6bc671d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,12 -1,5 +1,13 @@@ -2.1.9 +2.2.1 + * Fix histogram overflow exception (CASSANDRA-9973) + * Route gossip messages over dedicated socket (CASSANDRA-9237) + * Add checksum to saved cache files (CASSANDRA-9265) + * Log warning when using an aggregate without partition key (CASSANDRA-9737) + * Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900) + * UDF / UDA execution time in trace (CASSANDRA-9723) + * Fix broken internode SSL (CASSANDRA-9884) +Merged from 2.1: + * (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004) * Add new JMX methods to change local compaction strategy (CASSANDRA-9965) * Write hints for paxos commits (CASSANDRA-7342) * (cqlsh) Fix timestamps before 1970 on Windows, always
[jira] [Commented] (CASSANDRA-9738) Migrate key-cache to be fully off-heap
[ https://issues.apache.org/jira/browse/CASSANDRA-9738?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697543#comment-14697543 ] Robert Stupp commented on CASSANDRA-9738: - Code coverage looks not bad so far. Important code is covered (by nature) from nearly every unit test. getter/setter on CacheService for all caches are uncovered. Key cache's hotKeyIterator() is also uncovered. Will add unit tests for them in the respective test classes. Migrate key-cache to be fully off-heap -- Key: CASSANDRA-9738 URL: https://issues.apache.org/jira/browse/CASSANDRA-9738 Project: Cassandra Issue Type: Sub-task Reporter: Robert Stupp Assignee: Robert Stupp Fix For: 3.0.0 rc1 Key cache still uses a concurrent map on-heap. This could go to off-heap and feels doable now after CASSANDRA-8099. Evaluation should be done in advance based on a POC to prove that pure off-heap counter cache buys a performance and/or gc-pressure improvement. In theory, elimination of on-heap management of the map should buy us some benefit. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10078) Windows dtest 2.2: rebuild_test.py:TestRebuild.simple_rebuild_test
[ https://issues.apache.org/jira/browse/CASSANDRA-10078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697568#comment-14697568 ] Philip Thompson commented on CASSANDRA-10078: - +1 Windows dtest 2.2: rebuild_test.py:TestRebuild.simple_rebuild_test -- Key: CASSANDRA-10078 URL: https://issues.apache.org/jira/browse/CASSANDRA-10078 Project: Cassandra Issue Type: Sub-task Reporter: Joshua McKenzie Assignee: Joshua McKenzie Labels: Windows Fix For: 2.2.x Attachments: 10078_v1.txt Error text: {noformat} concurrent rebuild should not be allowed File C:\tools\python2\lib\unittest\case.py, line 329, in run testMethod() File D:\jenkins\workspace\cassandra-2.2_dtest_win32\cassandra-dtest\rebuild_test.py, line 87, in simple_rebuild_test self.fail(concurrent rebuild should not be allowed) File C:\tools\python2\lib\unittest\case.py, line 410, in fail raise self.failureException(msg) 'concurrent rebuild should not be allowed\n begin captured logging \ndtest: DEBUG: cluster ccm directory: d:\\temp\\dtest-rltloj\n- end captured logging -' {noformat} [Failure history|http://cassci.datastax.com/view/cassandra-2.2/job/cassandra-2.2_dtest_win32/61/testReport/rebuild_test/TestRebuild/simple_rebuild_test/history/] (Consistent) Env: Both CI and local -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/3] cassandra git commit: Return %ERRORLEVEL% in nodetool.bat
Repository: cassandra Updated Branches: refs/heads/trunk 45faed014 - 8517e13fe Return %ERRORLEVEL% in nodetool.bat Patch by jmckenzie; reviewed by pthompson for CASSANDRA-10078 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/58bee04c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/58bee04c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/58bee04c Branch: refs/heads/trunk Commit: 58bee04ccbd2d5434dbd28ce0743d5bf2cf54bbc Parents: 3aa7308 Author: Joshua McKenzie jmcken...@apache.org Authored: Fri Aug 14 15:22:50 2015 -0400 Committer: Joshua McKenzie jmcken...@apache.org Committed: Fri Aug 14 15:22:50 2015 -0400 -- bin/nodetool.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/58bee04c/bin/nodetool.bat -- diff --git a/bin/nodetool.bat b/bin/nodetool.bat index 92d5c05..416aca5 100644 --- a/bin/nodetool.bat +++ b/bin/nodetool.bat @@ -35,5 +35,5 @@ echo The JAVA_HOME environment variable must be set to run this program! pause :finally - -ENDLOCAL +ENDLOCAL set RC=%ERRORLEVEL% +exit /B %RC%
cassandra git commit: Return %ERRORLEVEL% in nodetool.bat
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 3aa7308e8 - 58bee04cc Return %ERRORLEVEL% in nodetool.bat Patch by jmckenzie; reviewed by pthompson for CASSANDRA-10078 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/58bee04c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/58bee04c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/58bee04c Branch: refs/heads/cassandra-2.2 Commit: 58bee04ccbd2d5434dbd28ce0743d5bf2cf54bbc Parents: 3aa7308 Author: Joshua McKenzie jmcken...@apache.org Authored: Fri Aug 14 15:22:50 2015 -0400 Committer: Joshua McKenzie jmcken...@apache.org Committed: Fri Aug 14 15:22:50 2015 -0400 -- bin/nodetool.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/58bee04c/bin/nodetool.bat -- diff --git a/bin/nodetool.bat b/bin/nodetool.bat index 92d5c05..416aca5 100644 --- a/bin/nodetool.bat +++ b/bin/nodetool.bat @@ -35,5 +35,5 @@ echo The JAVA_HOME environment variable must be set to run this program! pause :finally - -ENDLOCAL +ENDLOCAL set RC=%ERRORLEVEL% +exit /B %RC%
[1/2] cassandra git commit: Return %ERRORLEVEL% in nodetool.bat
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 99e0c907e - b294058b6 Return %ERRORLEVEL% in nodetool.bat Patch by jmckenzie; reviewed by pthompson for CASSANDRA-10078 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/58bee04c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/58bee04c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/58bee04c Branch: refs/heads/cassandra-3.0 Commit: 58bee04ccbd2d5434dbd28ce0743d5bf2cf54bbc Parents: 3aa7308 Author: Joshua McKenzie jmcken...@apache.org Authored: Fri Aug 14 15:22:50 2015 -0400 Committer: Joshua McKenzie jmcken...@apache.org Committed: Fri Aug 14 15:22:50 2015 -0400 -- bin/nodetool.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/58bee04c/bin/nodetool.bat -- diff --git a/bin/nodetool.bat b/bin/nodetool.bat index 92d5c05..416aca5 100644 --- a/bin/nodetool.bat +++ b/bin/nodetool.bat @@ -35,5 +35,5 @@ echo The JAVA_HOME environment variable must be set to run this program! pause :finally - -ENDLOCAL +ENDLOCAL set RC=%ERRORLEVEL% +exit /B %RC%
[2/2] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b294058b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b294058b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b294058b Branch: refs/heads/cassandra-3.0 Commit: b294058b67cd33c4834b06c76613fbf1483348de Parents: 99e0c90 58bee04 Author: Joshua McKenzie jmcken...@apache.org Authored: Fri Aug 14 15:23:27 2015 -0400 Committer: Joshua McKenzie jmcken...@apache.org Committed: Fri Aug 14 15:23:27 2015 -0400 -- bin/nodetool.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --
[2/3] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b294058b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b294058b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b294058b Branch: refs/heads/trunk Commit: b294058b67cd33c4834b06c76613fbf1483348de Parents: 99e0c90 58bee04 Author: Joshua McKenzie jmcken...@apache.org Authored: Fri Aug 14 15:23:27 2015 -0400 Committer: Joshua McKenzie jmcken...@apache.org Committed: Fri Aug 14 15:23:27 2015 -0400 -- bin/nodetool.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --
[4/6] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: test/unit/org/apache/cassandra/db/CommitLogTest.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/da8d48a7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/da8d48a7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/da8d48a7 Branch: refs/heads/trunk Commit: da8d48a79abf031b6a4e7bfd381bd4689f2fc12c Parents: b294058 c645b11 Author: Benedict Elliott Smith bened...@apache.org Authored: Fri Aug 14 20:29:03 2015 +0100 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:29:03 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/da8d48a7/test/unit/org/apache/cassandra/db/CommitLogTest.java -- diff --cc test/unit/org/apache/cassandra/db/CommitLogTest.java index 0c5093a,2764da4..6db29a8 --- a/test/unit/org/apache/cassandra/db/CommitLogTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogTest.java @@@ -317,187 -319,32 +317,40 @@@ public class CommitLogTes } @Test - public void testCommitFailurePolicy_stop() throws ConfigurationException - { - CassandraDaemon daemon = new CassandraDaemon(); - daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy - StorageService.instance.registerDaemon(daemon); - - // Need storage service active so stop policy can shutdown gossip - StorageService.instance.initServer(); - Assert.assertTrue(Gossiper.instance.isEnabled()); - - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); - CommitLog.handleCommitError(Test stop error, new Throwable()); - Assert.assertFalse(Gossiper.instance.isEnabled()); - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - } - } - - @Test - public void testCommitFailurePolicy_die() - { - CassandraDaemon daemon = new CassandraDaemon(); - daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy - StorageService.instance.registerDaemon(daemon); - - KillerForTests killerForTests = new KillerForTests(); - JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); - CommitLog.handleCommitError(Testing die policy, new Throwable()); - Assert.assertTrue(killerForTests.wasKilled()); - Assert.assertFalse(killerForTests.wasKilledQuietly()); //only killed quietly on startup failure - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - JVMStabilityInspector.replaceKiller(originalKiller); - } - } - - @Test - public void testCommitFailurePolicy_mustDieIfNotStartedUp() - { - //startup was not completed successfuly (since method completeSetup() was not called) - CassandraDaemon daemon = new CassandraDaemon(); - StorageService.instance.registerDaemon(daemon); - - KillerForTests killerForTests = new KillerForTests(); - JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - //even though policy is ignore, JVM must die because Daemon has not finished initializing - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.ignore); - CommitLog.handleCommitError(Testing die policy, new Throwable()); - Assert.assertTrue(killerForTests.wasKilled()); - Assert.assertTrue(killerForTests.wasKilledQuietly()); //killed quietly due to startup failure - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - JVMStabilityInspector.replaceKiller(originalKiller); - } - } - - @Test - public void
[5/6] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Conflicts: test/unit/org/apache/cassandra/db/CommitLogTest.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/da8d48a7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/da8d48a7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/da8d48a7 Branch: refs/heads/cassandra-3.0 Commit: da8d48a79abf031b6a4e7bfd381bd4689f2fc12c Parents: b294058 c645b11 Author: Benedict Elliott Smith bened...@apache.org Authored: Fri Aug 14 20:29:03 2015 +0100 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:29:03 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/da8d48a7/test/unit/org/apache/cassandra/db/CommitLogTest.java -- diff --cc test/unit/org/apache/cassandra/db/CommitLogTest.java index 0c5093a,2764da4..6db29a8 --- a/test/unit/org/apache/cassandra/db/CommitLogTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogTest.java @@@ -317,187 -319,32 +317,40 @@@ public class CommitLogTes } @Test - public void testCommitFailurePolicy_stop() throws ConfigurationException - { - CassandraDaemon daemon = new CassandraDaemon(); - daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy - StorageService.instance.registerDaemon(daemon); - - // Need storage service active so stop policy can shutdown gossip - StorageService.instance.initServer(); - Assert.assertTrue(Gossiper.instance.isEnabled()); - - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); - CommitLog.handleCommitError(Test stop error, new Throwable()); - Assert.assertFalse(Gossiper.instance.isEnabled()); - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - } - } - - @Test - public void testCommitFailurePolicy_die() - { - CassandraDaemon daemon = new CassandraDaemon(); - daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy - StorageService.instance.registerDaemon(daemon); - - KillerForTests killerForTests = new KillerForTests(); - JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); - CommitLog.handleCommitError(Testing die policy, new Throwable()); - Assert.assertTrue(killerForTests.wasKilled()); - Assert.assertFalse(killerForTests.wasKilledQuietly()); //only killed quietly on startup failure - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - JVMStabilityInspector.replaceKiller(originalKiller); - } - } - - @Test - public void testCommitFailurePolicy_mustDieIfNotStartedUp() - { - //startup was not completed successfuly (since method completeSetup() was not called) - CassandraDaemon daemon = new CassandraDaemon(); - StorageService.instance.registerDaemon(daemon); - - KillerForTests killerForTests = new KillerForTests(); - JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); - Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); - try - { - //even though policy is ignore, JVM must die because Daemon has not finished initializing - DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.ignore); - CommitLog.handleCommitError(Testing die policy, new Throwable()); - Assert.assertTrue(killerForTests.wasKilled()); - Assert.assertTrue(killerForTests.wasKilledQuietly()); //killed quietly due to startup failure - } - finally - { - DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); - JVMStabilityInspector.replaceKiller(originalKiller); - } - } - - @Test - public void
[jira] [Commented] (CASSANDRA-9906) get_slice and multiget_slice failing on trunk
[ https://issues.apache.org/jira/browse/CASSANDRA-9906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697596#comment-14697596 ] Benjamin Lerer commented on CASSANDRA-9906: --- * The results of the tests are [here|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-9906-testall/lastCompletedBuild/testReport/] * The results of the Dtests are [here|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-9906-dtest/lastCompletedBuild/testReport/] As we have a lot of DTests failing on 3.0, it is difficult to be fully sure that the patch does not break anything. I have checked the failing DTests and it seems that the failures are not related to the patch. [~iamaleksey] could you have a quick look to the patch to be sure that we did not miss anything? get_slice and multiget_slice failing on trunk - Key: CASSANDRA-9906 URL: https://issues.apache.org/jira/browse/CASSANDRA-9906 Project: Cassandra Issue Type: Bug Components: Core Reporter: Mike Adamson Assignee: Benjamin Lerer Priority: Blocker Fix For: 3.0.0 rc1 Attachments: 9906.txt, dtest-CASSANDRA-9906.txt {{get_slice}} and {{multiget_slice}} are failing on trunk with the following error: {noformat} java.lang.AssertionError: null at org.apache.cassandra.db.filter.ClusteringIndexNamesFilter.init(ClusteringIndexNamesFilter.java:53) ~[cassandra-all-3.0.0.592.jar:3.0.0.592] at org.apache.cassandra.thrift.CassandraServer.toInternalFilter(CassandraServer.java:405) ~[cassandra-all-3.0.0.592.jar:5.0.0-SNAPSHOT] at org.apache.cassandra.thrift.CassandraServer.multigetSliceInternal(CassandraServer.java:547) ~[cassandra-all-3.0.0.592.jar:5.0.0-SNAPSHOT] at org.apache.cassandra.thrift.CassandraServer.multiget_slice(CassandraServer.java:348) ~[cassandra-all-3.0.0.592.jar:5.0.0-SNAPSHOT] at org.apache.cassandra.thrift.Cassandra$Processor$multiget_slice.getResult(Cassandra.java:3716) ~[cassandra-thrift-3.0.0.592.jar:5.0.0-SNAPSHOT] at org.apache.cassandra.thrift.Cassandra$Processor$multiget_slice.getResult(Cassandra.java:3700) ~[cassandra-thrift-3.0.0.592.jar:5.0.0-SNAPSHOT] at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) ~[libthrift-0.9.2.jar:0.9.2] at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) ~[libthrift-0.9.2.jar:0.9.2] at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:204) ~[cassandra-all-3.0.0.592.jar:5.0.0-SNAPSHOT] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_45] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_45] at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_45] {noformat} The schema used for this was {noformat} create table test (k int, v int, primary key(k)) with compact storage; {noformat} and the code used for the call was {noformat} SlicePredicate predicate = new SlicePredicate(); predicate.column_names = Collections.singletonList(ByteBufferUtil.bytes(v)); client.multiget_slice(Collections.singletonList(key), new ColumnParent(test), predicate, ConsistencyLevel.ONE); {noformat} The error is coming from this line in {{ClusteringIndexNamesFilter}} {noformat} assert !clusterings.contains(Clustering.STATIC_CLUSTERING); {noformat} which is failing the assertion because column 'v' is static. Apologies for the line mismatches in {{ClusteringIndexNamesFilter}} I had some debug statements in the code to help track down what was happening -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[3/6] cassandra git commit: Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest
Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c645b119 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c645b119 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c645b119 Branch: refs/heads/trunk Commit: c645b1193444fdfae7ded2ce01bddc0de2813429 Parents: 58bee04 Author: Paulo Motta pauloricard...@gmail.com Authored: Mon Aug 10 16:28:06 2015 -0300 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:28:24 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c645b119/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java index 7dabd5f..cca6503 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -19,6 +19,8 @@ package org.apache.cassandra.db; +import java.io.File; + import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -26,8 +28,10 @@ import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.db.commitlog.CommitLogSegmentManager; import org.apache.cassandra.exceptions.ConfigurationException; import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.CassandraDaemon; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.utils.JVMStabilityInspector; import org.apache.cassandra.utils.KillerForTests; @@ -45,6 +49,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_stop() throws ConfigurationException { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + // Need storage service active so stop policy can shutdown gossip StorageService.instance.initServer(); Assert.assertTrue(Gossiper.instance.isEnabled()); @@ -65,6 +73,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_die() { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + KillerForTests killerForTests = new KillerForTests(); JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); @@ -73,11 +85,111 @@ public class CommitLogFailurePolicyTest DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); CommitLog.handleCommitError(Testing die policy, new Throwable()); Assert.assertTrue(killerForTests.wasKilled()); +Assert.assertFalse(killerForTests.wasKilledQuietly()); //only killed quietly on startup failure +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +JVMStabilityInspector.replaceKiller(originalKiller); +} +} + +@Test +public void testCommitFailurePolicy_mustDieIfNotStartedUp() +{ +//startup was not completed successfuly (since method completeSetup() was not called) +CassandraDaemon daemon = new CassandraDaemon(); +StorageService.instance.registerDaemon(daemon); + +KillerForTests killerForTests = new KillerForTests(); +JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ +//even though policy is ignore, JVM must die because Daemon has not finished initializing + DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.ignore); +CommitLog.handleCommitError(Testing die policy, new Throwable()); +
[1/6] cassandra git commit: Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 58bee04cc - c645b1193 refs/heads/cassandra-3.0 b294058b6 - da8d48a79 refs/heads/trunk 8517e13fe - 793bf45fb Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c645b119 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c645b119 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c645b119 Branch: refs/heads/cassandra-2.2 Commit: c645b1193444fdfae7ded2ce01bddc0de2813429 Parents: 58bee04 Author: Paulo Motta pauloricard...@gmail.com Authored: Mon Aug 10 16:28:06 2015 -0300 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:28:24 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c645b119/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java index 7dabd5f..cca6503 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -19,6 +19,8 @@ package org.apache.cassandra.db; +import java.io.File; + import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -26,8 +28,10 @@ import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.db.commitlog.CommitLogSegmentManager; import org.apache.cassandra.exceptions.ConfigurationException; import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.CassandraDaemon; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.utils.JVMStabilityInspector; import org.apache.cassandra.utils.KillerForTests; @@ -45,6 +49,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_stop() throws ConfigurationException { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + // Need storage service active so stop policy can shutdown gossip StorageService.instance.initServer(); Assert.assertTrue(Gossiper.instance.isEnabled()); @@ -65,6 +73,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_die() { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + KillerForTests killerForTests = new KillerForTests(); JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); @@ -73,11 +85,111 @@ public class CommitLogFailurePolicyTest DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); CommitLog.handleCommitError(Testing die policy, new Throwable()); Assert.assertTrue(killerForTests.wasKilled()); +Assert.assertFalse(killerForTests.wasKilledQuietly()); //only killed quietly on startup failure +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +JVMStabilityInspector.replaceKiller(originalKiller); +} +} + +@Test +public void testCommitFailurePolicy_mustDieIfNotStartedUp() +{ +//startup was not completed successfuly (since method completeSetup() was not called) +CassandraDaemon daemon = new CassandraDaemon(); +StorageService.instance.registerDaemon(daemon); + +KillerForTests killerForTests = new KillerForTests(); +JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ +//even though policy is ignore, JVM must die because Daemon has not finished initializing +
[6/6] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Merge branch 'cassandra-3.0' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/793bf45f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/793bf45f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/793bf45f Branch: refs/heads/trunk Commit: 793bf45fb7bf3c0b4aaff114a501ff77e307 Parents: 8517e13 da8d48a Author: Benedict Elliott Smith bened...@apache.org Authored: Fri Aug 14 20:29:19 2015 +0100 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:29:19 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) --
[2/6] cassandra git commit: Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest
Extracted commit log failure policy tests from CommitLogTest to CommitLogFailurePolicyTest Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c645b119 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c645b119 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c645b119 Branch: refs/heads/cassandra-3.0 Commit: c645b1193444fdfae7ded2ce01bddc0de2813429 Parents: 58bee04 Author: Paulo Motta pauloricard...@gmail.com Authored: Mon Aug 10 16:28:06 2015 -0300 Committer: Benedict Elliott Smith bened...@apache.org Committed: Fri Aug 14 20:28:24 2015 +0100 -- .../db/CommitLogFailurePolicyTest.java | 112 ++ .../org/apache/cassandra/db/CommitLogTest.java | 147 --- 2 files changed, 112 insertions(+), 147 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c645b119/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java -- diff --git a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java index 7dabd5f..cca6503 100644 --- a/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java +++ b/test/unit/org/apache/cassandra/db/CommitLogFailurePolicyTest.java @@ -19,6 +19,8 @@ package org.apache.cassandra.db; +import java.io.File; + import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -26,8 +28,10 @@ import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.db.commitlog.CommitLog; +import org.apache.cassandra.db.commitlog.CommitLogSegmentManager; import org.apache.cassandra.exceptions.ConfigurationException; import org.apache.cassandra.gms.Gossiper; +import org.apache.cassandra.service.CassandraDaemon; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.utils.JVMStabilityInspector; import org.apache.cassandra.utils.KillerForTests; @@ -45,6 +49,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_stop() throws ConfigurationException { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + // Need storage service active so stop policy can shutdown gossip StorageService.instance.initServer(); Assert.assertTrue(Gossiper.instance.isEnabled()); @@ -65,6 +73,10 @@ public class CommitLogFailurePolicyTest @Test public void testCommitFailurePolicy_die() { +CassandraDaemon daemon = new CassandraDaemon(); +daemon.completeSetup(); //startup must be completed, otherwise commit log failure must kill JVM regardless of failure policy +StorageService.instance.registerDaemon(daemon); + KillerForTests killerForTests = new KillerForTests(); JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); @@ -73,11 +85,111 @@ public class CommitLogFailurePolicyTest DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); CommitLog.handleCommitError(Testing die policy, new Throwable()); Assert.assertTrue(killerForTests.wasKilled()); +Assert.assertFalse(killerForTests.wasKilledQuietly()); //only killed quietly on startup failure +} +finally +{ +DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); +JVMStabilityInspector.replaceKiller(originalKiller); +} +} + +@Test +public void testCommitFailurePolicy_mustDieIfNotStartedUp() +{ +//startup was not completed successfuly (since method completeSetup() was not called) +CassandraDaemon daemon = new CassandraDaemon(); +StorageService.instance.registerDaemon(daemon); + +KillerForTests killerForTests = new KillerForTests(); +JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); +Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); +try +{ +//even though policy is ignore, JVM must die because Daemon has not finished initializing + DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.ignore); +CommitLog.handleCommitError(Testing die policy, new Throwable()); +
[jira] [Comment Edited] (CASSANDRA-9500) SequentialWriter should extend BufferedDataOutputStreamPlus
[ https://issues.apache.org/jira/browse/CASSANDRA-9500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697691#comment-14697691 ] Ariel Weisberg edited comment on CASSANDRA-9500 at 8/14/15 8:25 PM: You are right I want to change it. I pushed an update for that. Should I squash it? [Squashed commit|https://github.com/apache/cassandra/commit/b8413b66ccbdab09811bf7928fa5dcb50ef54050] was (Author: aweisberg): You are right I want to change it. I pushed an update for that. Should I squash it? SequentialWriter should extend BufferedDataOutputStreamPlus --- Key: CASSANDRA-9500 URL: https://issues.apache.org/jira/browse/CASSANDRA-9500 Project: Cassandra Issue Type: Improvement Reporter: Benedict Assignee: Ariel Weisberg Priority: Minor SequentialWriter is the last piece left not implementing DataOutputStreamPlus. It should not be too tricky to extend it, and it should result in improved write throughput. Further, it will permit it to exploit the more efficient implementation of writeVInt being delivered in CASSANDRA-9499 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-10078) Windows dtest 2.2: rebuild_test.py:TestRebuild.simple_rebuild_test
Joshua McKenzie created CASSANDRA-10078: --- Summary: Windows dtest 2.2: rebuild_test.py:TestRebuild.simple_rebuild_test Key: CASSANDRA-10078 URL: https://issues.apache.org/jira/browse/CASSANDRA-10078 Project: Cassandra Issue Type: Sub-task Reporter: Joshua McKenzie Fix For: 2.2.x Error text: {noformat} concurrent rebuild should not be allowed File C:\tools\python2\lib\unittest\case.py, line 329, in run testMethod() File D:\jenkins\workspace\cassandra-2.2_dtest_win32\cassandra-dtest\rebuild_test.py, line 87, in simple_rebuild_test self.fail(concurrent rebuild should not be allowed) File C:\tools\python2\lib\unittest\case.py, line 410, in fail raise self.failureException(msg) 'concurrent rebuild should not be allowed\n begin captured logging \ndtest: DEBUG: cluster ccm directory: d:\\temp\\dtest-rltloj\n- end captured logging -' {noformat} [Failure history|http://cassci.datastax.com/view/cassandra-2.2/job/cassandra-2.2_dtest_win32/61/testReport/rebuild_test/TestRebuild/simple_rebuild_test/history/] (Consistent) Env: Both CI and local -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10055) High CPU load for Cassandra 2.1.8
[ https://issues.apache.org/jira/browse/CASSANDRA-10055?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697370#comment-14697370 ] Benedict commented on CASSANDRA-10055: -- Hi Vijay, I'm afraid none of your log outputs seem to match up. In none of the jstack outputs are the PIDs shown to be the top consumers of CPU apparently doing anything. The jstack and top outputs need to have been obtained in close proximity to each other. If they have been, there must be something very peculiar happening at a much lower level with your system. High CPU load for Cassandra 2.1.8 - Key: CASSANDRA-10055 URL: https://issues.apache.org/jira/browse/CASSANDRA-10055 Project: Cassandra Issue Type: Bug Components: Config Environment: Prod Reporter: vijay Attachments: dstst-lcdn.log, dstst-lcdn2.log, dstst-lcdn3.log, dstst-lcdn4.log, dstst-lcdn5.log, dstst-lcdn6.log, js.log, js2.log, js3.log, js4.log, js5.log, js6.log, top-bHn1-2.log, top-bHn1-3.log, top-bHn1-4.log, top-bHn1-5.log, top-bHn1-6.log, top-bHn1.log We are seeing High CPU Load about 80% to 100% in Cassandra 2.1.8 when doing Data ingest, we did not had this issue in 2.0.x version of Cassandra we tested this in different Cloud platforms and results are same. CPU: Tested with M3 2xlarge AWS instances Ingest rate: Injecting 1 million Inserts each insert is of 1000bytes no other Operations are happening except inserts in Cassandra let me know if more info is needed. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9749) CommitLogReplayer continues startup after encountering errors
[ https://issues.apache.org/jira/browse/CASSANDRA-9749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697382#comment-14697382 ] Ariel Weisberg commented on CASSANDRA-9749: --- I am struggling here with where to draw the line for testing the code you worked on. I created CASANDRA-10080 for the missing coverage. I don't think code review and JIRA is the right venue for deciding whether you should go fill in more test coverage or not. There are instances of handleReplayError [like this one|https://github.com/apache/cassandra/compare/cassandra-2.2...blambov:9749-2.2#diff-348a1347dacf897385fb0a97116a1b5eR183] that throw instead of logging or returning a value. I feel like even when trying to constrain scope those are things that need to be tested for the change to be done. So if you are super saturated with 3.0 work that has to be in (no opportunity to constrain scope) then this is +1. If you could legitimately spend more time on it and make sure the cases that throw that didn't used to are tested then do that first. CommitLogReplayer continues startup after encountering errors - Key: CASSANDRA-9749 URL: https://issues.apache.org/jira/browse/CASSANDRA-9749 Project: Cassandra Issue Type: Bug Reporter: Blake Eggleston Assignee: Branimir Lambov Fix For: 2.2.x There are a few places where the commit log recovery method either skips sections or just returns when it encounters errors. Specifically if it can't read the header here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L298 Or if there are compressor problems here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L314 and here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L366 Whether these are user-fixable or not, I think we should require more direct user intervention (ie: fix what's wrong, or remove the bad file and restart) since we're basically losing data. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-10036) Windows utest 3.0: ColumnFamilyStoreTest.testScrubDataDirectories failing
[ https://issues.apache.org/jira/browse/CASSANDRA-10036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697533#comment-14697533 ] Joshua McKenzie commented on CASSANDRA-10036: - The change LGTM and it passes locally but the CI you linked shows this test as [failing|http://cassci.datastax.com/view/Dev/view/stef1927/job/stef1927_7066-b_utest_WIN/lastCompletedBuild/testReport/org.apache.cassandra.db/ColumnFamilyStoreTest/testScrubDataDirectories/]. Could we get a re-run of that job? Windows utest 3.0: ColumnFamilyStoreTest.testScrubDataDirectories failing - Key: CASSANDRA-10036 URL: https://issues.apache.org/jira/browse/CASSANDRA-10036 Project: Cassandra Issue Type: Sub-task Reporter: Joshua McKenzie Assignee: Stefania Labels: Windows Fix For: 3.0.0 rc1 {noformat} [junit] Testcase: testScrubDataDirectories(org.apache.cassandra.db.ColumnFamilyStoreTest): Caused an ERROR [junit] java.nio.file.AccessDeniedException: build\test\cassandra\data;0\ColumnFamilyStoreTest1\Standard1-a0d5fa503f8b11e58dec831ef068609c\ma-7-big-Index.db [junit] FSWriteError in build\test\cassandra\data;0\ColumnFamilyStoreTest1\Standard1-a0d5fa503f8b11e58dec831ef068609c\ma-7-big-Index.db [junit] at org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:135) [junit] at org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:152) [junit] at org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:147) [junit] at org.apache.cassandra.db.ColumnFamilyStore.scrubDataDirectories(ColumnFamilyStore.java:556) [junit] at org.apache.cassandra.db.ColumnFamilyStoreTest.testScrubDataDirectories(ColumnFamilyStoreTest.java:533) [junit] Caused by: java.nio.file.AccessDeniedException: build\test\cassandra\data;0\ColumnFamilyStoreTest1\Standard1-a0d5fa503f8b11e58dec831ef068609c\ma-7-big-Index.db [junit] at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83) [junit] at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97) [junit] at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102) [junit] at sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:269) [junit] at sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:103) [junit] at java.nio.file.Files.delete(Files.java:1126) [junit] at org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:129) {noformat} Test has never passed on Windows ([history|http://cassci.datastax.com/view/trunk/job/trunk_utest_win32/lastCompletedBuild/testReport/org.apache.cassandra.db/ColumnFamilyStoreTest/testScrubDataDirectories/history/]). [~stefania_alborghetti]: Looks like this is your test. Care to take this? -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9749) CommitLogReplayer continues startup after encountering errors
[ https://issues.apache.org/jira/browse/CASSANDRA-9749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14697558#comment-14697558 ] Branimir Lambov commented on CASSANDRA-9749: Done. CommitLogReplayer continues startup after encountering errors - Key: CASSANDRA-9749 URL: https://issues.apache.org/jira/browse/CASSANDRA-9749 Project: Cassandra Issue Type: Bug Reporter: Blake Eggleston Assignee: Branimir Lambov Fix For: 2.2.x Attachments: 9749-coverage.tgz There are a few places where the commit log recovery method either skips sections or just returns when it encounters errors. Specifically if it can't read the header here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L298 Or if there are compressor problems here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L314 and here: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java#L366 Whether these are user-fixable or not, I think we should require more direct user intervention (ie: fix what's wrong, or remove the bad file and restart) since we're basically losing data. -- This message was sent by Atlassian JIRA (v6.3.4#6332)