[jira] [Created] (CASSANDRA-9490) testcase failure : testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest):
Pallavi Bhardwaj created CASSANDRA-9490: --- Summary: testcase failure : testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest): Key: CASSANDRA-9490 URL: https://issues.apache.org/jira/browse/CASSANDRA-9490 Project: Cassandra Issue Type: Bug Components: Tests Environment: Red Hat enterprise Linux ; Arch : PPC64le Reporter: Pallavi Bhardwaj Fix For: 2.1.5 While executing the unit test cases, I observed the following failure, [junit] Testcase: testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest): FAILED [junit] expected:-2.038078123E9 but was:1.432716678E9 [junit] junit.framework.AssertionFailedError: expected:-2.038078123E9 but was:1.432716678E9 [junit] at org.apache.cassandra.io.sstable.SSTableMetadataTest.testWithDeletes(SSTableMetadataTest.java:156) [junit] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-6977) attempting to create 10K column families fails with 100 node cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-6977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560749#comment-14560749 ] ZhaoYang edited comment on CASSANDRA-6977 at 5/27/15 11:39 AM: --- [~jkrupan] hi, In fact, what is the difference between 100 KS with 100 tables each and 1 KS with 1 tables in a cluster? as far as I can tell, at least the it's almost impossible to create 10K tables in one keyspace. What about performance? Thanks. was (Author: jasonstack): [~jkrupan] hi, In factor, what is the difference between 100 KS with 100 tables and 1 KS with 1 tables in a cluster? as far as I can tell, at least the it's almost impossible to create 10K tables in one keyspace. What about performance? Thanks. attempting to create 10K column families fails with 100 node cluster Key: CASSANDRA-6977 URL: https://issues.apache.org/jira/browse/CASSANDRA-6977 Project: Cassandra Issue Type: Bug Environment: 100 nodes, Ubuntu 12.04.3 LTS, AWS m1.large instances Reporter: Daniel Meyer Assignee: Rocco Varela Priority: Minor Fix For: 2.1.1 Attachments: 100_nodes_all_data.png, all_data_5_nodes.png, keyspace_create.py, logs.tar, tpstats.txt, visualvm_tracer_data.csv During this test we are attempting to create a total of 1K keyspaces with 10 column families each to bring the total column families to 10K. With a 5 node cluster this operation can be completed; however, it fails with 100 nodes. Please see the two charts. For the 5 node case the time required to create each keyspace and subsequent 10 column families increases linearly until the number of keyspaces is 1K. For a 100 node cluster there is a sudden increase in latency between 450 keyspaces and 550 keyspaces. The test ends when the test script times out. After the test script times out it is impossible to reconnect to the cluster with the datastax python driver because it cannot connect to the host: cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'10.199.5.98': OperationTimedOut()} It was found that running the following stress command does work from the same machine the test script runs on. cassandra-stress -d 10.199.5.98 -l 2 -e QUORUM -L3 -b -o INSERT It should be noted that this test was initially done with DSE 4.0 and c* version 2.0.5.24 and in that case it was not possible to run stress against the cluster even locally on a node due to not finding the host. Attached are system logs from one of the nodes, charts showing schema creation latency for 5 and 100 node clusters and virtualvm tracer data for cpu, memory, num_threads and gc runs, tpstat output and the test script. The test script was on an m1.large aws instance outside of the cluster under test. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-8897) Remove FileCacheService, instead pooling the buffers
[ https://issues.apache.org/jira/browse/CASSANDRA-8897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560734#comment-14560734 ] Stefania commented on CASSANDRA-8897: - Thanks for the comments, as discussed earlier on, it should be clear now. In the meantime I have been working on the cperf test: bq. It would be nice to run some tests that show this change's strengths: if you disable auto-compaction on cstar (not sure if you can do this), and make the memtable size very small, then we can produce a workload with many sstables that still fit in memory. If we aim to write say 4G of data, but perhaps with many overwrites so each operation has to touch multiple files (so perhaps only 400M of data written 10 times, or 4G of data with 10+ clustering values, written with visits=fixed(10)). If we set the memtable size to = 100Mb, this will likely result in files of = 30Mb, giving us 120+ sstables. If we constrain the size of the file cache to just 64Mb, say, we should on a random read workload see much more GC activity under the old scheme, and likely reduced throughput. I can disable compaction in the schema and setup the memtable size parameters in cassandra.yaml so as to obtain sstables of approx 30MB. However I am having problems ensuring the overwrite part. Is it enough to run stress 10 times writing 400MB each time or do I need to do anything specific like using visits: fixed(10), which I cannot get to work, or using 10 clustering values (which generate batches too big and I cannot work out how to disable batching using stress). Here is the profile: {code} keyspace: perftesting keyspace_definition: | CREATE KEYSPACE perftesting WITH replication = { 'class': 'SimpleStrategy', 'replication_factor':1}; table: mytest table_definition: CREATE TABLE mytest ( id text, sub_id uuid, data text, PRIMARY KEY(id, sub_id) ) WITH compaction = {'class':'SizeTieredCompactionStrategy', 'enabled':false }; columnspec: - name: id size: gaussian(1..50) population: uniform(1..5000) - name: sub_id cluster: fixed(5000) - name: data size: fixed(1000) insert: partitions: fixed(1) select: fixed(1)/5000 batchtype: LOGGED queries: read: cql: select * from mytest where id = ? LIMIT 10 fields: samerow {code} Here is the command: {code} ./tools/bin/cassandra-stress user profile=~/Documents/tests/8897.yaml ops\(insert=1\) n=30 -rate threads=50 {code} Here are the warnings: {code} WARN 10:02:18 Batch of prepared statements for [perftesting.mytest] is of size 5140, exceeding specified threshold of 5120 by 20. {code} And this is the problem when adding {{visits: fixed(10)}} to the profile insert section, plus I am not sure it is picked up even if I comment out the line generating the Exception: {code} Exception in thread main java.lang.IllegalArgumentException: Unrecognised insert option(s): {visits=fixed(10)} at org.apache.cassandra.stress.StressProfile.getInsert(StressProfile.java:357) at org.apache.cassandra.stress.settings.SettingsCommandUser$1.get(SettingsCommandUser.java:82) at org.apache.cassandra.stress.settings.SettingsCommandUser$1.get(SettingsCommandUser.java:78) at org.apache.cassandra.stress.operations.SampledOpDistributionFactory$1.get(SampledOpDistributionFactory.java:80) at org.apache.cassandra.stress.StressAction$Consumer.init(StressAction.java:269) at org.apache.cassandra.stress.StressAction.run(StressAction.java:204) at org.apache.cassandra.stress.StressAction.warmup(StressAction.java:105) at org.apache.cassandra.stress.StressAction.run(StressAction.java:61) at org.apache.cassandra.stress.Stress.main(Stress.java:109) {code} Thanks! :) Remove FileCacheService, instead pooling the buffers Key: CASSANDRA-8897 URL: https://issues.apache.org/jira/browse/CASSANDRA-8897 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: Stefania Fix For: 3.x Attachments: 9240_test_results.txt, snapshot-1431582436640-cpu-backtraces.png, snapshot-1431582436640-cpu-calltree-compression-8897.nps, snapshot-1431582436640-cpu-calltree-compression-trunk.nps After CASSANDRA-8893, a RAR will be a very lightweight object and will not need caching, so we can eliminate this cache entirely. Instead we should have a pool of buffers that are page-aligned. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-8897) Remove FileCacheService, instead pooling the buffers
[ https://issues.apache.org/jira/browse/CASSANDRA-8897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560751#comment-14560751 ] Benedict commented on CASSANDRA-8897: - You can just overwrite it ten times, but it results in a bit of a different profile. With a schema workload it should still require touching ten files, due to implementation quirks, so this should be fine. There's also no absolute requirement we have ten readers involved in a given query, either, it just seemed like a nice addition to the test. However the trick you're missing for the visits is to provide it under the insert options group. i.e. {{ cassandra-stress -insert visits=fixed(10)}} . Its on the roadmap to clarify all of this in the help, and most likely to deprecate the old options, permitting us to amalgamate a lot of the options under the new banner. Remove FileCacheService, instead pooling the buffers Key: CASSANDRA-8897 URL: https://issues.apache.org/jira/browse/CASSANDRA-8897 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: Stefania Fix For: 3.x Attachments: 9240_test_results.txt, snapshot-1431582436640-cpu-backtraces.png, snapshot-1431582436640-cpu-calltree-compression-8897.nps, snapshot-1431582436640-cpu-calltree-compression-trunk.nps After CASSANDRA-8893, a RAR will be a very lightweight object and will not need caching, so we can eliminate this cache entirely. Instead we should have a pool of buffers that are page-aligned. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6977) attempting to create 10K column families fails with 100 node cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-6977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560749#comment-14560749 ] ZhaoYang commented on CASSANDRA-6977: - [~jkrupan] hi, In factor, what is the difference between 100 KS with 100 tables and 1 KS with 1 tables in a cluster? as far as I can tell, at least the it's almost impossible to create 10K tables in one keyspace. What about performance? Thanks. attempting to create 10K column families fails with 100 node cluster Key: CASSANDRA-6977 URL: https://issues.apache.org/jira/browse/CASSANDRA-6977 Project: Cassandra Issue Type: Bug Environment: 100 nodes, Ubuntu 12.04.3 LTS, AWS m1.large instances Reporter: Daniel Meyer Assignee: Rocco Varela Priority: Minor Fix For: 2.1.1 Attachments: 100_nodes_all_data.png, all_data_5_nodes.png, keyspace_create.py, logs.tar, tpstats.txt, visualvm_tracer_data.csv During this test we are attempting to create a total of 1K keyspaces with 10 column families each to bring the total column families to 10K. With a 5 node cluster this operation can be completed; however, it fails with 100 nodes. Please see the two charts. For the 5 node case the time required to create each keyspace and subsequent 10 column families increases linearly until the number of keyspaces is 1K. For a 100 node cluster there is a sudden increase in latency between 450 keyspaces and 550 keyspaces. The test ends when the test script times out. After the test script times out it is impossible to reconnect to the cluster with the datastax python driver because it cannot connect to the host: cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'10.199.5.98': OperationTimedOut()} It was found that running the following stress command does work from the same machine the test script runs on. cassandra-stress -d 10.199.5.98 -l 2 -e QUORUM -L3 -b -o INSERT It should be noted that this test was initially done with DSE 4.0 and c* version 2.0.5.24 and in that case it was not possible to run stress against the cluster even locally on a node due to not finding the host. Attached are system logs from one of the nodes, charts showing schema creation latency for 5 and 100 node clusters and virtualvm tracer data for cpu, memory, num_threads and gc runs, tpstat output and the test script. The test script was on an m1.large aws instance outside of the cluster under test. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Assigned] (CASSANDRA-9479) Improve trace messages
[ https://issues.apache.org/jira/browse/CASSANDRA-9479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robert Stupp reassigned CASSANDRA-9479: --- Assignee: Robert Stupp Improve trace messages -- Key: CASSANDRA-9479 URL: https://issues.apache.org/jira/browse/CASSANDRA-9479 Project: Cassandra Issue Type: Improvement Reporter: Robert Stupp Assignee: Robert Stupp Priority: Minor Currently, tracing only records lines like {{Enqueuing response to}} / {{Processing response from}} or {{Sending message to}} / {{Message received from}}. It would help if these messages also contain some information about the verb and (if easily accessible) about kind of content. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-9489) Testcase failure: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest)
Pallavi Bhardwaj created CASSANDRA-9489: --- Summary: Testcase failure: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest) Key: CASSANDRA-9489 URL: https://issues.apache.org/jira/browse/CASSANDRA-9489 Project: Cassandra Issue Type: Bug Components: Tests Environment: Red Hat Enterprise Linux, Arch : PPC64le Reporter: Pallavi Bhardwaj Fix For: 2.1.5 While executing the test cases, I observed the following failure, [junit] ERROR 08:42:40 Scanned over 100 tombstones in cql_test_keyspace.table_4; query aborted (see tombstone_failure_threshold) [junit] ERROR 08:42:40 Scanned over 100 tombstones in cql_test_keyspace.table_4; query aborted (see tombstone_failure_threshold) [junit] - --- [junit] Testcase: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest): FAILED [junit] null [junit] junit.framework.AssertionFailedError: null [junit] at org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest.testExpiredTombstones(SliceQueryFilterWithTombstonesTest.java:155) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9491) Inefficient sequential repairs against vnode clusters
[ https://issues.apache.org/jira/browse/CASSANDRA-9491?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-9491: -- Assignee: Yuki Morishita Inefficient sequential repairs against vnode clusters - Key: CASSANDRA-9491 URL: https://issues.apache.org/jira/browse/CASSANDRA-9491 Project: Cassandra Issue Type: Improvement Reporter: Robert Stupp Assignee: Yuki Morishita Priority: Minor I've got a cluster with vnodes enabled. People regularly run sequential repairs against that cluster. During such a sequential repair (just {{nodetool -pr}}, statistics show: * huge increase of live-sstable-count (approx doubling the amount), * huge amount of memtable-switches (approx 1200 per node per minute), * huge number of flushed (approx 25 per node per minute) * memtable-data-size drops to (nearly) 0 * huge amount of compaction-completed-tasks (60k per minute) and compacted-bytes (25GB per minute) These numbers do not match the real, tiny workload that the cluster really has. The reason for these (IMO crazy) numbers is the way how sequential repairs work on vnode clusters: Starting at {{StorageService.forceRepairAsync}} (from {{nodetool -pr}}, a repair on the ranges from {{getLocalPrimaryRanges(keyspace)}} is initiated. I'll express the schema in pseudo-code: {code} ranges = getLocalPrimaryRanges(keyspace) foreach range in ranges: { foreach columnFamily { start async RepairJob { if sequentialRepair: start SnapshotTask against each endpoint (including self) send tree requests if snapshot successful else // if parallel repair send tree requests } } } {code} This means, that for each sequential repair, a snapshot (including all its implications like flushes, tiny sstables, followup-compactions) is taken for every range. That means 256 snapshots per column-family per repair on each (involved) endpoint. For about 20 tables, this could mean 5120 snapshots within a very short period of time. You do not realize that amount on the file system, since the _tag_ for the snapshot is always the same - so all snapshots end in the same directory. IMO it would be sufficient to snapshot only once per column-family. Or do I miss something? So basically changing the pseudo-code to: {code} ranges = getLocalPrimaryRanges(keyspace) foreach range in ranges: { foreach columnFamily { if sequentialRepair: start SnapshotTask against each endpoint (including self) start async RepairJob { send tree requests (if snapshot successful) } } } {code} NB: The code's similar in all versions (checked 2.0.11, 2.0.15, 2.1, 2.2, trunk) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9490) testcase failure : testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest):
[ https://issues.apache.org/jira/browse/CASSANDRA-9490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561027#comment-14561027 ] Philip Thompson commented on CASSANDRA-9490: This test is currently passing on 2.1-head. Where are you experiencing this issue? testcase failure : testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest): Key: CASSANDRA-9490 URL: https://issues.apache.org/jira/browse/CASSANDRA-9490 Project: Cassandra Issue Type: Bug Components: Tests Environment: Red Hat enterprise Linux ; Arch : PPC64le Reporter: Pallavi Bhardwaj Fix For: 2.1.5 While executing the unit test cases, I observed the following failure, [junit] Testcase: testWithDeletes(org.apache.cassandra.io.sstable.SSTableMetadataTest): FAILED [junit] expected:-2.038078123E9 but was:1.432716678E9 [junit] junit.framework.AssertionFailedError: expected:-2.038078123E9 but was:1.432716678E9 [junit] at org.apache.cassandra.io.sstable.SSTableMetadataTest.testWithDeletes(SSTableMetadataTest.java:156) [junit] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-9491) Inefficient sequential repairs against vnode clusters
Robert Stupp created CASSANDRA-9491: --- Summary: Inefficient sequential repairs against vnode clusters Key: CASSANDRA-9491 URL: https://issues.apache.org/jira/browse/CASSANDRA-9491 Project: Cassandra Issue Type: Improvement Reporter: Robert Stupp Priority: Minor I've got a cluster with vnodes enabled. People regularly run sequential repairs against that cluster. During such a sequential repair (just {{nodetool -pr}}, statistics show: * huge increase of live-sstable-count (approx doubling the amount), * huge amount of memtable-switches (approx 1200 per node per minute), * huge number of flushed (approx 25 per node per minute) * memtable-data-size drops to (nearly) 0 * huge amount of compaction-completed-tasks (60k per minute) and compacted-bytes (25GB per minute) These numbers do not match the real, tiny workload that the cluster really has. The reason for these (IMO crazy) numbers is the way how sequential repairs work on vnode clusters: Starting at {{StorageService.forceRepairAsync}} (from {{nodetool -pr}}, a repair on the ranges from {{getLocalPrimaryRanges(keyspace)}} is initiated. I'll express the schema in pseudo-code: {code} ranges = getLocalPrimaryRanges(keyspace) foreach range in ranges: { foreach columnFamily { start async RepairJob { if sequentialRepair: start SnapshotTask against each endpoint (including self) send tree requests if snapshot successful else // if parallel repair send tree requests } } } {code} This means, that for each sequential repair, a snapshot (including all its implications like flushes, tiny sstables, followup-compactions) is taken for every range. That means 256 snapshots per column-family per repair on each (involved) endpoint. For about 20 tables, this could mean 5120 snapshots within a very short period of time. You do not realize that amount on the file system, since the _tag_ for the snapshot is always the same - so all snapshots end in the same directory. IMO it would be sufficient to snapshot only once per column-family. Or do I miss something? So basically changing the pseudo-code to: {code} ranges = getLocalPrimaryRanges(keyspace) foreach range in ranges: { foreach columnFamily { if sequentialRepair: start SnapshotTask against each endpoint (including self) start async RepairJob { send tree requests (if snapshot successful) } } } {code} NB: The code's similar in all versions (checked 2.0.11, 2.0.15, 2.1, 2.2, trunk) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9489) Testcase failure: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest)
[ https://issues.apache.org/jira/browse/CASSANDRA-9489?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561029#comment-14561029 ] Philip Thompson commented on CASSANDRA-9489: This test is currently passing on 2.1-head. Where are you experiencing this issue? Testcase failure: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest) - Key: CASSANDRA-9489 URL: https://issues.apache.org/jira/browse/CASSANDRA-9489 Project: Cassandra Issue Type: Bug Components: Tests Environment: Red Hat Enterprise Linux, Arch : PPC64le Reporter: Pallavi Bhardwaj Fix For: 2.1.5 While executing the test cases, I observed the following failure, [junit] ERROR 08:42:40 Scanned over 100 tombstones in cql_test_keyspace.table_4; query aborted (see tombstone_failure_threshold) [junit] ERROR 08:42:40 Scanned over 100 tombstones in cql_test_keyspace.table_4; query aborted (see tombstone_failure_threshold) [junit] - --- [junit] Testcase: testExpiredTombstones(org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest): FAILED [junit] null [junit] junit.framework.AssertionFailedError: null [junit] at org.apache.cassandra.cql3.SliceQueryFilterWithTombstonesTest.testExpiredTombstones(SliceQueryFilterWithTombstonesTest.java:155) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-8502) Static columns returning null for pages after first
[ https://issues.apache.org/jira/browse/CASSANDRA-8502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560996#comment-14560996 ] Sylvain Lebresne commented on CASSANDRA-8502: - Sorry for the delay, +1 on v2. Static columns returning null for pages after first --- Key: CASSANDRA-8502 URL: https://issues.apache.org/jira/browse/CASSANDRA-8502 Project: Cassandra Issue Type: Bug Components: Core Reporter: Flavien Charlon Assignee: Tyler Hobbs Fix For: 2.1.x, 2.0.x Attachments: 8502-2.0-v2.txt, 8502-2.0.txt, 8502-2.1-v2.txt, null-static-column.txt When paging is used for a query containing a static column, the first page contains the right value for the static column, but subsequent pages have null null for the static column instead of the expected value. Repro steps: - Create a table with a static column - Create a partition with 500 cells - Using cqlsh, query that partition Actual result: - You will see that first, the static column appears as expected, but if you press a key after ---MORE---, the static columns will appear as null. See the attached file for a repro of the output. I am using a single node cluster. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9458) Race condition causing StreamSession to get stuck in WAIT_COMPLETE
[ https://issues.apache.org/jira/browse/CASSANDRA-9458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560844#comment-14560844 ] Omid Aladini commented on CASSANDRA-9458: - Thanks for checking the log and the patch. You're right as all the relevant calls to maybeCompleted are synchronised on the object. {quote} Do you have secondary indexes? Right now, streaming is considered completed after secondary indexes are built in that finalise phase(CASSANDRA-9308). {quote} There are secondary indexes and I see a bunch of submitting index build of in the full log so I guess it's possible that the index build is just taking longer than the timeout. I'll disable the timeout (and enable TCP keep-alive via CASSANDRA-9455) to see if it gets resolved. Race condition causing StreamSession to get stuck in WAIT_COMPLETE -- Key: CASSANDRA-9458 URL: https://issues.apache.org/jira/browse/CASSANDRA-9458 Project: Cassandra Issue Type: Bug Reporter: Omid Aladini Assignee: Omid Aladini Priority: Critical Fix For: 2.1.x, 2.0.x Attachments: 9458-v1.txt I think there is a race condition in StreamSession where one side of the stream could get stuck in WAIT_COMPLETE although both have sent COMPLETE messages. Consider a scenario that node B is being bootstrapped and it only receives files during the session: 1- During a stream session A sends some files to B and B sends no files to A. 2- Once B completes the last task (receiving), StreamSession::maybeComplete is invoked. 3- While B is sending the COMPLETE message via StreamSession::maybeComplete, it also receives the COMPLETE message from A and therefore StreamSession::complete() is invoked. 4- Therefore both maybeComplete() and complete() functions have branched into the state != State.WAIT_COMPLETE case and both set the state to WAIT_COMPLETE. 5- Now B is waiting to receive COMPLETE although it's already received it and nothing triggers checking the state again, until it times out after streaming_socket_timeout_in_ms. In the log below: https://gist.github.com/omidaladini/003de259958ad8dfb07e although the node has received COMPLETE, SocketTimeoutException is thrown after streaming_socket_timeout_in_ms (30 minutes here). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9431) Static Analysis to warn on unsafe use of Autocloseable instances
[ https://issues.apache.org/jira/browse/CASSANDRA-9431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560928#comment-14560928 ] T Jake Luciani commented on CASSANDRA-9431: --- Hmm, the problem is when I do that the tests fail in all sorts of glorious ways. see http://cassci.datastax.com/view/Dev/view/tjake/job/tjake-fix-leaks-testall/5/ Static Analysis to warn on unsafe use of Autocloseable instances Key: CASSANDRA-9431 URL: https://issues.apache.org/jira/browse/CASSANDRA-9431 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: T Jake Luciani Fix For: 2.2.0 rc1 The ideal goal would be to fail the build under any unsafe (and not annotated as considered safe independently) uses of Autocloseable. It looks as though eclipse (and hence, hopefully ecj) has support for this feature, so we should investigate if it meets our requirements and we can get it integrated -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: Fix error executing bound statement after adding a collection
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 3e4ed9666 - 63165a719 Fix error executing bound statement after adding a collection patch by blerer; reviewed by slebresne for CASSANDRA-9411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/63165a71 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/63165a71 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/63165a71 Branch: refs/heads/cassandra-2.0 Commit: 63165a719cd8ec9d7f06c186f61d39403e192edc Parents: 3e4ed96 Author: Benjamin Lerer benjamin.le...@datastax.com Authored: Wed May 27 16:00:52 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:00:52 2015 +0200 -- CHANGES.txt | 1 + .../cql3/statements/ModificationStatement.java | 6 +- .../cql3/statements/SelectStatement.java| 186 +++ 3 files changed, 110 insertions(+), 83 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index af08802..709100b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java index db22e7d..3852920 100644 --- a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java @@ -668,7 +668,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF private static ResultSet buildCasFailureResultSet(ByteBuffer key, ColumnFamily cf, IterableColumnIdentifier columnsWithConditions, boolean isBatch) throws InvalidRequestException { -CFDefinition cfDef = cf.metadata().getCfDef(); +CFMetaData cfm = cf.metadata(); +CFDefinition cfDef = cfm.getCfDef(); Selection selection; if (columnsWithConditions == null) @@ -694,7 +695,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF long now = System.currentTimeMillis(); Selection.ResultSetBuilder builder = selection.resultSetBuilder(now); -SelectStatement.forSelection(cfDef, selection).processColumnFamily(key, cf, Collections.ByteBufferemptyList(), now, builder); +SelectStatement.forSelection(cfm, selection) + .processColumnFamily(cfDef, key, cf, Collections.ByteBufferemptyList(), now, builder); return builder.build(); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java index 8a4deb6..95e0441 100644 --- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java @@ -46,6 +46,7 @@ import org.apache.cassandra.service.StorageProxy; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.service.pager.*; import org.apache.cassandra.db.ConsistencyLevel; +import org.apache.cassandra.thrift.ColumnDef; import org.apache.cassandra.thrift.IndexExpression; import org.apache.cassandra.thrift.IndexOperator; import org.apache.cassandra.thrift.ThriftValidation; @@ -68,7 +69,7 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache private static final int DEFAULT_COUNT_PAGE_SIZE = 1; private final int boundTerms; -public final CFDefinition cfDef; +public final CFMetaData cfm; public final Parameters parameters; private final Selection selection; private final Term limit; @@ -110,13 +111,13 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache } }; -public SelectStatement(CFDefinition cfDef, int boundTerms, Parameters parameters, Selection selection, Term limit) +public
[jira] [Commented] (CASSANDRA-9482) SSTable leak after stress and repair
[ https://issues.apache.org/jira/browse/CASSANDRA-9482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560998#comment-14560998 ] Philip Thompson commented on CASSANDRA-9482: Most likely bisecting will only point you to when leak detection was introduced, and not when the leak was. SSTable leak after stress and repair Key: CASSANDRA-9482 URL: https://issues.apache.org/jira/browse/CASSANDRA-9482 Project: Cassandra Issue Type: Bug Reporter: Jim Witschey I have a dtest that fails intermittently because of SSTable leaks. The test logic leading to the error is: - create a 5-node cluster - insert 5000 records with {{stress}}, RF=3 at CL=ONE - run {{flush}} on all nodes - run {{repair}} on a single node. The leak is detected on a different node than {{repair}} was run on. The failing test is [here|https://github.com/mambocab/cassandra-dtest/blob/CASSANDRA-5839-squash/repair_test.py#L317]. The relevant error his [here|https://gist.github.com/mambocab/8aab7b03496e0b279bd3#file-node2-log-L256], along with the errors from the entire 5-node cluster. In these logs, the {{repair}} was run on {{node1}} and the leak was found on {{node2}}. I can bisect, but I thought I'd get the ball rolling in case someone knows where to look. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9482) SSTable leak after stress and repair
[ https://issues.apache.org/jira/browse/CASSANDRA-9482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14560999#comment-14560999 ] Philip Thompson commented on CASSANDRA-9482: /cc [~krummas] SSTable leak after stress and repair Key: CASSANDRA-9482 URL: https://issues.apache.org/jira/browse/CASSANDRA-9482 Project: Cassandra Issue Type: Bug Reporter: Jim Witschey I have a dtest that fails intermittently because of SSTable leaks. The test logic leading to the error is: - create a 5-node cluster - insert 5000 records with {{stress}}, RF=3 at CL=ONE - run {{flush}} on all nodes - run {{repair}} on a single node. The leak is detected on a different node than {{repair}} was run on. The failing test is [here|https://github.com/mambocab/cassandra-dtest/blob/CASSANDRA-5839-squash/repair_test.py#L317]. The relevant error his [here|https://gist.github.com/mambocab/8aab7b03496e0b279bd3#file-node2-log-L256], along with the errors from the entire 5-node cluster. In these logs, the {{repair}} was run on {{node1}} and the leak was found on {{node2}}. I can bisect, but I thought I'd get the ball rolling in case someone knows where to look. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-9494) Need to set TTL with COPY command
Ed Chen created CASSANDRA-9494: -- Summary: Need to set TTL with COPY command Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Improvement Components: API Reporter: Ed Chen I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7486) Migrate to G1GC by default
[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561432#comment-14561432 ] Albert P Tobey commented on CASSANDRA-7486: --- Updated patches with spelling and whitespace fixes: https://github.com/tobert/cassandra/commits/g1gc-2 https://github.com/tobert/cassandra/commit/419d39814985a6ef165fdbafee5f1b84bf2f197b https://github.com/tobert/cassandra/commit/89d40af978eaeb02185726a63257d979111ad317 https://github.com/tobert/cassandra/commit/0f70469985d62aeadc20b41dc9cdc9d72a035c64 Migrate to G1GC by default -- Key: CASSANDRA-7486 URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 Project: Cassandra Issue Type: New Feature Components: Config Reporter: Jonathan Ellis Assignee: Albert P Tobey Fix For: 3.0 beta 1 See http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning and https://twitter.com/rbranson/status/482113561431265281 May want to default 2.1 to G1. 2.1 is a different animal from 2.0 after moving most of memtables off heap. Suspect this will help G1 even more than CMS. (NB this is off by default but needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9494) Need to set TTL with COPY command
[ https://issues.apache.org/jira/browse/CASSANDRA-9494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-9494: -- Issue Type: Sub-task (was: Improvement) Parent: CASSANDRA-9303 Need to set TTL with COPY command - Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Ed Chen I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: Fix null static columns during paging, reversed queries
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 63165a719 - d075540c4 Fix null static columns during paging, reversed queries Patch by Tyler Hobbs; reviewed by Sylvain Lebresne for CASSANDRA-8502 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d075540c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d075540c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d075540c Branch: refs/heads/cassandra-2.0 Commit: d075540c46209fdabde74db1e210114965372605 Parents: 63165a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:48:52 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:48:52 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 81 +--- .../cassandra/db/SliceFromReadCommand.java | 24 ++ .../cassandra/db/filter/ColumnCounter.java | 67 +++- .../cassandra/db/filter/ExtendedFilter.java | 13 .../cassandra/db/filter/SliceQueryFilter.java | 79 ++- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../cassandra/cql3/MultiColumnRelationTest.java | 2 + .../service/pager/AbstractQueryPagerTest.java | 8 +- 12 files changed, 293 insertions(+), 37 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 709100b..054cf79 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.0.16: + * Fix null static columns in pages after the first, paged reversed + queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index eec4044..f81ec82 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -1682,7 +1682,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean boolean countCQL3Rows, long now) { -DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata.comparator); +DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata); return ExtendedFilter.create(this, dataRange, rowFilter, maxResults, countCQL3Rows, now); } @@ -1714,7 +1714,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean // create a new SliceQueryFilter that selects all cells, but pass the original slice start and finish // through to DataRange.Paging to be used on the first and last partitions SliceQueryFilter newFilter = new SliceQueryFilter(ColumnSlice.ALL_COLUMNS_ARRAY, sfilter.isReversed(), sfilter.count); -dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata.comparator); +dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata); } else { http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/DataRange.java -- diff --git a/src/java/org/apache/cassandra/db/DataRange.java b/src/java/org/apache/cassandra/db/DataRange.java index 774a3aa..1be9469 100644 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@ -22,10 +22,12 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; +import com.google.common.base.Objects; +import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; import org.apache.cassandra.db.filter.*; -import org.apache.cassandra.db.marshal.AbstractType; import org.apache.cassandra.dht.*; +import org.apache.cassandra.utils.ByteBufferUtil; /** * Groups key range and column filter for range queries. @@ -41,7 +43,7 @@ import
[1/2] cassandra git commit: Fix null static columns during paging, reversed queries
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 74280b1ee - a8dce228d Fix null static columns during paging, reversed queries Patch by Tyler Hobbs; reviewed by Sylvain Lebresne for CASSANDRA-8502 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d075540c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d075540c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d075540c Branch: refs/heads/cassandra-2.1 Commit: d075540c46209fdabde74db1e210114965372605 Parents: 63165a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:48:52 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:48:52 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 81 +--- .../cassandra/db/SliceFromReadCommand.java | 24 ++ .../cassandra/db/filter/ColumnCounter.java | 67 +++- .../cassandra/db/filter/ExtendedFilter.java | 13 .../cassandra/db/filter/SliceQueryFilter.java | 79 ++- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../cassandra/cql3/MultiColumnRelationTest.java | 2 + .../service/pager/AbstractQueryPagerTest.java | 8 +- 12 files changed, 293 insertions(+), 37 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 709100b..054cf79 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.0.16: + * Fix null static columns in pages after the first, paged reversed + queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index eec4044..f81ec82 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -1682,7 +1682,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean boolean countCQL3Rows, long now) { -DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata.comparator); +DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata); return ExtendedFilter.create(this, dataRange, rowFilter, maxResults, countCQL3Rows, now); } @@ -1714,7 +1714,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean // create a new SliceQueryFilter that selects all cells, but pass the original slice start and finish // through to DataRange.Paging to be used on the first and last partitions SliceQueryFilter newFilter = new SliceQueryFilter(ColumnSlice.ALL_COLUMNS_ARRAY, sfilter.isReversed(), sfilter.count); -dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata.comparator); +dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata); } else { http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/DataRange.java -- diff --git a/src/java/org/apache/cassandra/db/DataRange.java b/src/java/org/apache/cassandra/db/DataRange.java index 774a3aa..1be9469 100644 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@ -22,10 +22,12 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; +import com.google.common.base.Objects; +import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; import org.apache.cassandra.db.filter.*; -import org.apache.cassandra.db.marshal.AbstractType; import org.apache.cassandra.dht.*; +import org.apache.cassandra.utils.ByteBufferUtil; /** * Groups key range and column filter for range queries. @@ -41,7 +43,7 @@ import
[2/2] 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/a8dce228 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a8dce228 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a8dce228 Branch: refs/heads/cassandra-2.1 Commit: a8dce228de443716556f59510b0494078bbe97a2 Parents: 74280b1 d075540 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:50:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:50:58 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 61 +- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 278 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/CHANGES.txt -- diff --cc CHANGES.txt index cea6135,054cf79..d00cc65 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,7 +1,36 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix null static columns in pages after the first, paged reversed +queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/DataRange.java -- diff --cc src/java/org/apache/cassandra/db/DataRange.java index dd4fbe8,1be9469..08fdd14 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@@ -22,11 -22,12 +22,13 @@@ import java.util.ArrayList import java.util.Comparator; import java.util.List; + import com.google.common.base.Objects; + import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; - import
[2/5] cassandra git commit: Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' into cassandra-2.1
Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' 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/74280b1e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/74280b1e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/74280b1e Branch: refs/heads/cassandra-2.2 Commit: 74280b1eeb0478f5c3e939aa72daedb62437f50c Parents: 434d27b 63165a7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed May 27 16:17:10 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:17:10 2015 +0200 -- --
[4/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/a8dce228 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a8dce228 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a8dce228 Branch: refs/heads/cassandra-2.2 Commit: a8dce228de443716556f59510b0494078bbe97a2 Parents: 74280b1 d075540 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:50:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:50:58 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 61 +- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 278 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/CHANGES.txt -- diff --cc CHANGES.txt index cea6135,054cf79..d00cc65 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,7 +1,36 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix null static columns in pages after the first, paged reversed +queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/DataRange.java -- diff --cc src/java/org/apache/cassandra/db/DataRange.java index dd4fbe8,1be9469..08fdd14 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@@ -22,11 -22,12 +22,13 @@@ import java.util.ArrayList import java.util.Comparator; import java.util.List; + import com.google.common.base.Objects; + import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; - import
[1/5] cassandra git commit: Fix error executing bound statement after adding a collection
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 f9c998cbc - 80ba11c62 Fix error executing bound statement after adding a collection patch by blerer; reviewed by slebresne for CASSANDRA-9411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/63165a71 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/63165a71 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/63165a71 Branch: refs/heads/cassandra-2.2 Commit: 63165a719cd8ec9d7f06c186f61d39403e192edc Parents: 3e4ed96 Author: Benjamin Lerer benjamin.le...@datastax.com Authored: Wed May 27 16:00:52 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:00:52 2015 +0200 -- CHANGES.txt | 1 + .../cql3/statements/ModificationStatement.java | 6 +- .../cql3/statements/SelectStatement.java| 186 +++ 3 files changed, 110 insertions(+), 83 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index af08802..709100b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java index db22e7d..3852920 100644 --- a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java @@ -668,7 +668,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF private static ResultSet buildCasFailureResultSet(ByteBuffer key, ColumnFamily cf, IterableColumnIdentifier columnsWithConditions, boolean isBatch) throws InvalidRequestException { -CFDefinition cfDef = cf.metadata().getCfDef(); +CFMetaData cfm = cf.metadata(); +CFDefinition cfDef = cfm.getCfDef(); Selection selection; if (columnsWithConditions == null) @@ -694,7 +695,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF long now = System.currentTimeMillis(); Selection.ResultSetBuilder builder = selection.resultSetBuilder(now); -SelectStatement.forSelection(cfDef, selection).processColumnFamily(key, cf, Collections.ByteBufferemptyList(), now, builder); +SelectStatement.forSelection(cfm, selection) + .processColumnFamily(cfDef, key, cf, Collections.ByteBufferemptyList(), now, builder); return builder.build(); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java index 8a4deb6..95e0441 100644 --- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java @@ -46,6 +46,7 @@ import org.apache.cassandra.service.StorageProxy; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.service.pager.*; import org.apache.cassandra.db.ConsistencyLevel; +import org.apache.cassandra.thrift.ColumnDef; import org.apache.cassandra.thrift.IndexExpression; import org.apache.cassandra.thrift.IndexOperator; import org.apache.cassandra.thrift.ThriftValidation; @@ -68,7 +69,7 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache private static final int DEFAULT_COUNT_PAGE_SIZE = 1; private final int boundTerms; -public final CFDefinition cfDef; +public final CFMetaData cfm; public final Parameters parameters; private final Selection selection; private final Term limit; @@ -110,13 +111,13 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache } }; -public SelectStatement(CFDefinition cfDef, int boundTerms, Parameters parameters, Selection selection, Term limit) +public
[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/80ba11c6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/80ba11c6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/80ba11c6 Branch: refs/heads/cassandra-2.2 Commit: 80ba11c62acff08954a1f79d1bf9078602dfc665 Parents: f9c998c a8dce22 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:52:34 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:52:34 2015 -0500 -- CHANGES.txt | 3 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 63 ++- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 281 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/80ba11c6/CHANGES.txt -- diff --cc CHANGES.txt index e183137,d00cc65..0864759 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -12,124 -3,6 +12,127 @@@ Merged from 2.1 * Improve estimated row count (CASSANDRA-9107) * Optimize range tombstone memory footprint (CASSANDRA-8603) * Use configured gcgs in anticompaction (CASSANDRA-9397) ++Merged from 2.0: ++ * Fix null static columns in pages after the first, paged reversed ++ queries (CASSANDRA-8502) + + +2.2.0-beta1 + * Introduce Transactional API for internal state changes (CASSANDRA-8984) + * Add a flag in cassandra.yaml to enable UDFs (CASSANDRA-9404) + * Better support of null for UDF (CASSANDRA-8374) + * Use ecj instead of javassist for UDFs (CASSANDRA-8241) + * faster async logback configuration for tests (CASSANDRA-9376) + * Add `smallint` and `tinyint` data types (CASSANDRA-8951) + * Avoid thrift schema creation when native driver is used in stress tool (CASSANDRA-9374) + * Populate TokenMetadata early during startup (CASSANDRA-9317) + * Make Functions.declared thread-safe + * Add client warnings to native protocol v4 (CASSANDRA-8930) + * Allow roles cache to be invalidated (CASSANDRA-8967) + * Upgrade Snappy (CASSANDRA-9063) + * Don't start Thrift rpc by default (CASSANDRA-9319) + * Only stream from unrepaired sstables with incremental repair (CASSANDRA-8267) + * Aggregate UDFs allow SFUNC return type to differ from STYPE if FFUNC specified (CASSANDRA-9321) + * Remove Thrift dependencies in bundled tools (CASSANDRA-8358) + * Disable memory mapping of hsperfdata file for JVM statistics (CASSANDRA-9242) + * Add pre-startup checks to detect potential incompatibilities (CASSANDRA-8049) + * Distinguish between null and unset in protocol v4 (CASSANDRA-7304) + * Add user/role permissions for user-defined functions (CASSANDRA-7557) + * Allow cassandra config to be updated to restart daemon without unloading classes (CASSANDRA-9046) + * Don't initialize compaction writer before checking if iter is empty (CASSANDRA-9117) + * Don't execute any functions at prepare-time (CASSANDRA-9037) + * Share file handles between all instances of a SegmentedFile (CASSANDRA-8893) + * Make it possible to major compact LCS (CASSANDRA-7272) + * Make FunctionExecutionException extend RequestExecutionException + (CASSANDRA-9055) + * Add support for SELECT JSON, INSERT JSON syntax and new toJson(), fromJson() + functions (CASSANDRA-7970) + * Optimise max purgeable timestamp calculation in compaction (CASSANDRA-8920) + * Constrain internode message buffer sizes, and improve IO class hierarchy (CASSANDRA-8670) + * New tool added to validate all sstables in a node (CASSANDRA-5791) + * Push notification when tracing completes for an operation (CASSANDRA-7807) + * Delay node up and node added notifications until native protocol server is started (CASSANDRA-8236) + * Compressed Commit Log (CASSANDRA-6809) + * Optimise IntervalTree (CASSANDRA-8988) + * Add a key-value payload for third party usage (CASSANDRA-8553, 9212) + * Bump metrics-reporter-config dependency for metrics 3.0 (CASSANDRA-8149) + * Partition intra-cluster message streams by size, not type (CASSANDRA-8789) + * Add WriteFailureException to native protocol, notify coordinator of + write failures (CASSANDRA-8592) + * Convert SequentialWriter to nio (CASSANDRA-8709) + * Add role based access control (CASSANDRA-7653, 8650, 7216, 8760, 8849,
[3/5] cassandra git commit: Fix null static columns during paging, reversed queries
Fix null static columns during paging, reversed queries Patch by Tyler Hobbs; reviewed by Sylvain Lebresne for CASSANDRA-8502 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d075540c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d075540c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d075540c Branch: refs/heads/cassandra-2.2 Commit: d075540c46209fdabde74db1e210114965372605 Parents: 63165a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:48:52 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:48:52 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 81 +--- .../cassandra/db/SliceFromReadCommand.java | 24 ++ .../cassandra/db/filter/ColumnCounter.java | 67 +++- .../cassandra/db/filter/ExtendedFilter.java | 13 .../cassandra/db/filter/SliceQueryFilter.java | 79 ++- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../cassandra/cql3/MultiColumnRelationTest.java | 2 + .../service/pager/AbstractQueryPagerTest.java | 8 +- 12 files changed, 293 insertions(+), 37 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 709100b..054cf79 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.0.16: + * Fix null static columns in pages after the first, paged reversed + queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index eec4044..f81ec82 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -1682,7 +1682,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean boolean countCQL3Rows, long now) { -DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata.comparator); +DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata); return ExtendedFilter.create(this, dataRange, rowFilter, maxResults, countCQL3Rows, now); } @@ -1714,7 +1714,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean // create a new SliceQueryFilter that selects all cells, but pass the original slice start and finish // through to DataRange.Paging to be used on the first and last partitions SliceQueryFilter newFilter = new SliceQueryFilter(ColumnSlice.ALL_COLUMNS_ARRAY, sfilter.isReversed(), sfilter.count); -dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata.comparator); +dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata); } else { http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/DataRange.java -- diff --git a/src/java/org/apache/cassandra/db/DataRange.java b/src/java/org/apache/cassandra/db/DataRange.java index 774a3aa..1be9469 100644 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@ -22,10 +22,12 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; +import com.google.common.base.Objects; +import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; import org.apache.cassandra.db.filter.*; -import org.apache.cassandra.db.marshal.AbstractType; import org.apache.cassandra.dht.*; +import org.apache.cassandra.utils.ByteBufferUtil; /** * Groups key range and column filter for range queries. @@ -41,7 +43,7 @@ import org.apache.cassandra.dht.*; */ public class DataRange { -private final
[3/6] cassandra git commit: Fix null static columns during paging, reversed queries
Fix null static columns during paging, reversed queries Patch by Tyler Hobbs; reviewed by Sylvain Lebresne for CASSANDRA-8502 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d075540c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d075540c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d075540c Branch: refs/heads/trunk Commit: d075540c46209fdabde74db1e210114965372605 Parents: 63165a7 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:48:52 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:48:52 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 81 +--- .../cassandra/db/SliceFromReadCommand.java | 24 ++ .../cassandra/db/filter/ColumnCounter.java | 67 +++- .../cassandra/db/filter/ExtendedFilter.java | 13 .../cassandra/db/filter/SliceQueryFilter.java | 79 ++- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../cassandra/cql3/MultiColumnRelationTest.java | 2 + .../service/pager/AbstractQueryPagerTest.java | 8 +- 12 files changed, 293 insertions(+), 37 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 709100b..054cf79 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.0.16: + * Fix null static columns in pages after the first, paged reversed + queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index eec4044..f81ec82 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -1682,7 +1682,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean boolean countCQL3Rows, long now) { -DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata.comparator); +DataRange dataRange = new DataRange.Paging(keyRange, columnRange, columnStart, columnStop, metadata); return ExtendedFilter.create(this, dataRange, rowFilter, maxResults, countCQL3Rows, now); } @@ -1714,7 +1714,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean // create a new SliceQueryFilter that selects all cells, but pass the original slice start and finish // through to DataRange.Paging to be used on the first and last partitions SliceQueryFilter newFilter = new SliceQueryFilter(ColumnSlice.ALL_COLUMNS_ARRAY, sfilter.isReversed(), sfilter.count); -dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata.comparator); +dataRange = new DataRange.Paging(range, newFilter, sfilter.start(), sfilter.finish(), metadata); } else { http://git-wip-us.apache.org/repos/asf/cassandra/blob/d075540c/src/java/org/apache/cassandra/db/DataRange.java -- diff --git a/src/java/org/apache/cassandra/db/DataRange.java b/src/java/org/apache/cassandra/db/DataRange.java index 774a3aa..1be9469 100644 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@ -22,10 +22,12 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; +import com.google.common.base.Objects; +import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; import org.apache.cassandra.db.filter.*; -import org.apache.cassandra.db.marshal.AbstractType; import org.apache.cassandra.dht.*; +import org.apache.cassandra.utils.ByteBufferUtil; /** * Groups key range and column filter for range queries. @@ -41,7 +43,7 @@ import org.apache.cassandra.dht.*; */ public class DataRange { -private final AbstractBoundsRowPosition
[1/6] cassandra git commit: Fix error executing bound statement after adding a collection
Repository: cassandra Updated Branches: refs/heads/trunk e9a263dae - eb60f3101 Fix error executing bound statement after adding a collection patch by blerer; reviewed by slebresne for CASSANDRA-9411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/63165a71 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/63165a71 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/63165a71 Branch: refs/heads/trunk Commit: 63165a719cd8ec9d7f06c186f61d39403e192edc Parents: 3e4ed96 Author: Benjamin Lerer benjamin.le...@datastax.com Authored: Wed May 27 16:00:52 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:00:52 2015 +0200 -- CHANGES.txt | 1 + .../cql3/statements/ModificationStatement.java | 6 +- .../cql3/statements/SelectStatement.java| 186 +++ 3 files changed, 110 insertions(+), 83 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index af08802..709100b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java index db22e7d..3852920 100644 --- a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java @@ -668,7 +668,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF private static ResultSet buildCasFailureResultSet(ByteBuffer key, ColumnFamily cf, IterableColumnIdentifier columnsWithConditions, boolean isBatch) throws InvalidRequestException { -CFDefinition cfDef = cf.metadata().getCfDef(); +CFMetaData cfm = cf.metadata(); +CFDefinition cfDef = cfm.getCfDef(); Selection selection; if (columnsWithConditions == null) @@ -694,7 +695,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF long now = System.currentTimeMillis(); Selection.ResultSetBuilder builder = selection.resultSetBuilder(now); -SelectStatement.forSelection(cfDef, selection).processColumnFamily(key, cf, Collections.ByteBufferemptyList(), now, builder); +SelectStatement.forSelection(cfm, selection) + .processColumnFamily(cfDef, key, cf, Collections.ByteBufferemptyList(), now, builder); return builder.build(); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java index 8a4deb6..95e0441 100644 --- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java @@ -46,6 +46,7 @@ import org.apache.cassandra.service.StorageProxy; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.service.pager.*; import org.apache.cassandra.db.ConsistencyLevel; +import org.apache.cassandra.thrift.ColumnDef; import org.apache.cassandra.thrift.IndexExpression; import org.apache.cassandra.thrift.IndexOperator; import org.apache.cassandra.thrift.ThriftValidation; @@ -68,7 +69,7 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache private static final int DEFAULT_COUNT_PAGE_SIZE = 1; private final int boundTerms; -public final CFDefinition cfDef; +public final CFMetaData cfm; public final Parameters parameters; private final Selection selection; private final Term limit; @@ -110,13 +111,13 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache } }; -public SelectStatement(CFDefinition cfDef, int boundTerms, Parameters parameters, Selection selection, Term limit) +public SelectStatement(CFMetaData cfm, int
[6/6] cassandra git commit: Merge branch 'cassandra-2.2' into trunk
Merge branch 'cassandra-2.2' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/eb60f310 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/eb60f310 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/eb60f310 Branch: refs/heads/trunk Commit: eb60f3101985b67eba8f96af63b0a214c4f41969 Parents: e9a263d 80ba11c Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:54:09 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:54:09 2015 -0500 -- CHANGES.txt | 3 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 63 ++- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 281 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/eb60f310/CHANGES.txt --
[2/6] cassandra git commit: Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' into cassandra-2.1
Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' 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/74280b1e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/74280b1e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/74280b1e Branch: refs/heads/trunk Commit: 74280b1eeb0478f5c3e939aa72daedb62437f50c Parents: 434d27b 63165a7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed May 27 16:17:10 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:17:10 2015 +0200 -- --
[4/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/a8dce228 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a8dce228 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a8dce228 Branch: refs/heads/trunk Commit: a8dce228de443716556f59510b0494078bbe97a2 Parents: 74280b1 d075540 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:50:58 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:50:58 2015 -0500 -- CHANGES.txt | 2 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 61 +- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 278 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/CHANGES.txt -- diff --cc CHANGES.txt index cea6135,054cf79..d00cc65 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,7 +1,36 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix null static columns in pages after the first, paged reversed +queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a8dce228/src/java/org/apache/cassandra/db/DataRange.java -- diff --cc src/java/org/apache/cassandra/db/DataRange.java index dd4fbe8,1be9469..08fdd14 --- a/src/java/org/apache/cassandra/db/DataRange.java +++ b/src/java/org/apache/cassandra/db/DataRange.java @@@ -22,11 -22,12 +22,13 @@@ import java.util.ArrayList import java.util.Comparator; import java.util.List; + import com.google.common.base.Objects; + import org.apache.cassandra.config.CFMetaData; import org.apache.cassandra.db.columniterator.IdentityQueryFilter; - import
[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/80ba11c6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/80ba11c6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/80ba11c6 Branch: refs/heads/trunk Commit: 80ba11c62acff08954a1f79d1bf9078602dfc665 Parents: f9c998c a8dce22 Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 13:52:34 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 13:52:34 2015 -0500 -- CHANGES.txt | 3 + .../apache/cassandra/db/ColumnFamilyStore.java | 4 +- src/java/org/apache/cassandra/db/DataRange.java | 82 --- .../cassandra/db/SliceFromReadCommand.java | 28 +++ .../cassandra/db/filter/ColumnCounter.java | 63 ++- .../cassandra/db/filter/SliceQueryFilter.java | 83 ++-- .../service/pager/AbstractQueryPager.java | 40 -- .../service/pager/RangeSliceQueryPager.java | 4 +- .../service/pager/SliceQueryPager.java | 6 +- .../service/pager/AbstractQueryPagerTest.java | 8 +- 10 files changed, 281 insertions(+), 40 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/80ba11c6/CHANGES.txt -- diff --cc CHANGES.txt index e183137,d00cc65..0864759 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -12,124 -3,6 +12,127 @@@ Merged from 2.1 * Improve estimated row count (CASSANDRA-9107) * Optimize range tombstone memory footprint (CASSANDRA-8603) * Use configured gcgs in anticompaction (CASSANDRA-9397) ++Merged from 2.0: ++ * Fix null static columns in pages after the first, paged reversed ++ queries (CASSANDRA-8502) + + +2.2.0-beta1 + * Introduce Transactional API for internal state changes (CASSANDRA-8984) + * Add a flag in cassandra.yaml to enable UDFs (CASSANDRA-9404) + * Better support of null for UDF (CASSANDRA-8374) + * Use ecj instead of javassist for UDFs (CASSANDRA-8241) + * faster async logback configuration for tests (CASSANDRA-9376) + * Add `smallint` and `tinyint` data types (CASSANDRA-8951) + * Avoid thrift schema creation when native driver is used in stress tool (CASSANDRA-9374) + * Populate TokenMetadata early during startup (CASSANDRA-9317) + * Make Functions.declared thread-safe + * Add client warnings to native protocol v4 (CASSANDRA-8930) + * Allow roles cache to be invalidated (CASSANDRA-8967) + * Upgrade Snappy (CASSANDRA-9063) + * Don't start Thrift rpc by default (CASSANDRA-9319) + * Only stream from unrepaired sstables with incremental repair (CASSANDRA-8267) + * Aggregate UDFs allow SFUNC return type to differ from STYPE if FFUNC specified (CASSANDRA-9321) + * Remove Thrift dependencies in bundled tools (CASSANDRA-8358) + * Disable memory mapping of hsperfdata file for JVM statistics (CASSANDRA-9242) + * Add pre-startup checks to detect potential incompatibilities (CASSANDRA-8049) + * Distinguish between null and unset in protocol v4 (CASSANDRA-7304) + * Add user/role permissions for user-defined functions (CASSANDRA-7557) + * Allow cassandra config to be updated to restart daemon without unloading classes (CASSANDRA-9046) + * Don't initialize compaction writer before checking if iter is empty (CASSANDRA-9117) + * Don't execute any functions at prepare-time (CASSANDRA-9037) + * Share file handles between all instances of a SegmentedFile (CASSANDRA-8893) + * Make it possible to major compact LCS (CASSANDRA-7272) + * Make FunctionExecutionException extend RequestExecutionException + (CASSANDRA-9055) + * Add support for SELECT JSON, INSERT JSON syntax and new toJson(), fromJson() + functions (CASSANDRA-7970) + * Optimise max purgeable timestamp calculation in compaction (CASSANDRA-8920) + * Constrain internode message buffer sizes, and improve IO class hierarchy (CASSANDRA-8670) + * New tool added to validate all sstables in a node (CASSANDRA-5791) + * Push notification when tracing completes for an operation (CASSANDRA-7807) + * Delay node up and node added notifications until native protocol server is started (CASSANDRA-8236) + * Compressed Commit Log (CASSANDRA-6809) + * Optimise IntervalTree (CASSANDRA-8988) + * Add a key-value payload for third party usage (CASSANDRA-8553, 9212) + * Bump metrics-reporter-config dependency for metrics 3.0 (CASSANDRA-8149) + * Partition intra-cluster message streams by size, not type (CASSANDRA-8789) + * Add WriteFailureException to native protocol, notify coordinator of + write failures (CASSANDRA-8592) + * Convert SequentialWriter to nio (CASSANDRA-8709) + * Add role based access control (CASSANDRA-7653, 8650, 7216, 8760, 8849, 8761,
[jira] [Commented] (CASSANDRA-8099) Refactor and modernize the storage engine
[ https://issues.apache.org/jira/browse/CASSANDRA-8099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561497#comment-14561497 ] Benedict commented on CASSANDRA-8099: - It occurs to me that another option, for the read path at least, would be to: # In the case of a single data request (and it being local): immediately transform to the resultset, and store the digest for corroboration; # In the case of a read-repair (or other multiple data requests), delay performing the local read operation until the remote replies have already arrived. This may marginally increase latency, but only on an uncommon codepath. Refactor and modernize the storage engine - Key: CASSANDRA-8099 URL: https://issues.apache.org/jira/browse/CASSANDRA-8099 Project: Cassandra Issue Type: Improvement Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Fix For: 3.0 beta 1 Attachments: 8099-nit The current storage engine (which for this ticket I'll loosely define as the code implementing the read/write path) is suffering from old age. One of the main problem is that the only structure it deals with is the cell, which completely ignores the more high level CQL structure that groups cell into (CQL) rows. This leads to many inefficiencies, like the fact that during a reads we have to group cells multiple times (to count on replica, then to count on the coordinator, then to produce the CQL resultset) because we forget about the grouping right away each time (so lots of useless cell names comparisons in particular). But outside inefficiencies, having to manually recreate the CQL structure every time we need it for something is hindering new features and makes the code more complex that it should be. Said storage engine also has tons of technical debt. To pick an example, the fact that during range queries we update {{SliceQueryFilter.count}} is pretty hacky and error prone. Or the overly complex ways {{AbstractQueryPager}} has to go into to simply remove the last query result. So I want to bite the bullet and modernize this storage engine. I propose to do 2 main things: # Make the storage engine more aware of the CQL structure. In practice, instead of having partitions be a simple iterable map of cells, it should be an iterable list of row (each being itself composed of per-column cells, though obviously not exactly the same kind of cell we have today). # Make the engine more iterative. What I mean here is that in the read path, we end up reading all cells in memory (we put them in a ColumnFamily object), but there is really no reason to. If instead we were working with iterators all the way through, we could get to a point where we're basically transferring data from disk to the network, and we should be able to reduce GC substantially. Please note that such refactor should provide some performance improvements right off the bat but it's not it's primary goal either. It's primary goal is to simplify the storage engine and adds abstraction that are better suited to further optimizations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8502) Static columns returning null for pages after first
[ https://issues.apache.org/jira/browse/CASSANDRA-8502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561502#comment-14561502 ] Tyler Hobbs edited comment on CASSANDRA-8502 at 5/27/15 6:56 PM: - The test results for all four branches look good. Committed as {{d075540c46209fdabde74db1e210114965372605}} to 2.0 and merged to 2.1, 2.2, and trunk. was (Author: thobbs): The test results for all for branches look good. Committed as {{d075540c46209fdabde74db1e210114965372605}} to 2.0 and merged to 2.1, 2.2, and trunk. Static columns returning null for pages after first --- Key: CASSANDRA-8502 URL: https://issues.apache.org/jira/browse/CASSANDRA-8502 Project: Cassandra Issue Type: Bug Components: Core Reporter: Flavien Charlon Assignee: Tyler Hobbs Fix For: 2.1.6, 2.0.16, 2.2.0 rc1 Attachments: 8502-2.0-v2.txt, 8502-2.0.txt, 8502-2.1-v2.txt, null-static-column.txt When paging is used for a query containing a static column, the first page contains the right value for the static column, but subsequent pages have null null for the static column instead of the expected value. Repro steps: - Create a table with a static column - Create a partition with 500 cells - Using cqlsh, query that partition Actual result: - You will see that first, the static column appears as expected, but if you press a key after ---MORE---, the static columns will appear as null. See the attached file for a repro of the output. I am using a single node cluster. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Assigned] (CASSANDRA-9494) Need to set TTL with COPY command
[ https://issues.apache.org/jira/browse/CASSANDRA-9494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams reassigned CASSANDRA-9494: --- Assignee: Stefania Need to set TTL with COPY command - Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Ed Chen Assignee: Stefania I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9494) Need to set TTL with COPY command
[ https://issues.apache.org/jira/browse/CASSANDRA-9494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams updated CASSANDRA-9494: Fix Version/s: 2.2.x 2.0.x Need to set TTL with COPY command - Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Ed Chen Assignee: Stefania Fix For: 2.0.x, 2.2.x I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[4/4] cassandra git commit: Merge branch 'cassandra-2.2' into trunk
Merge branch 'cassandra-2.2' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3c98472d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3c98472d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3c98472d Branch: refs/heads/trunk Commit: 3c98472d54f8b530f31219a46fdd84996c31136f Parents: 352302f 8601412 Author: Robert Stupp sn...@snazy.de Authored: Wed May 27 17:55:57 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Wed May 27 17:55:57 2015 +0200 -- doc/cql3/CQL.textile | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) --
[jira] [Commented] (CASSANDRA-9160) Migrate CQL dtests to unit tests
[ https://issues.apache.org/jira/browse/CASSANDRA-9160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561188#comment-14561188 ] Philip Thompson commented on CASSANDRA-9160: What versions are we targeting for this? CQLTester was added in 2.1, is there any reason not to target 2.1+? Migrate CQL dtests to unit tests Key: CASSANDRA-9160 URL: https://issues.apache.org/jira/browse/CASSANDRA-9160 Project: Cassandra Issue Type: Test Reporter: Sylvain Lebresne Assignee: Stefania We have CQL tests in 2 places: dtests and unit tests. The unit tests are actually somewhat better in the sense that they have the ability to test both prepared and unprepared statements at the flip of a switch. It's also better to have all those tests in the same place so we can improve the test framework in only one place (CASSANDRA-7959, CASSANDRA-9159, etc...). So we should move the CQL dtests to the unit tests (which will be a good occasion to organize them better). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
Robert Stupp created CASSANDRA-9493: --- Summary: Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.x We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9492) Error message changes based on jdk used
[ https://issues.apache.org/jira/browse/CASSANDRA-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-9492: --- Description: Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column in a non counter column family}}. With jdk8 it contains {{Cannot add a non counter column in a counter column family}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. was: Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column}}, but with jdk8 it contains {{Cannot add a non counter column}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. Error message changes based on jdk used --- Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Philip Thompson Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column in a non counter column family}}. With jdk8 it contains {{Cannot add a non counter column in a counter column family}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/4] cassandra git commit: test-all results incomplete when parsed
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 162489aed - 860141229 refs/heads/trunk 352302f5a - 3c98472d5 test-all results incomplete when parsed patch by aweisberg; reviewed by jasobrown for CASSANDRA-9463 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/162489ae Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/162489ae Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/162489ae Branch: refs/heads/trunk Commit: 162489aed57866d5f8185d78a05588e1e81c549e Parents: 91187b5 Author: Jason Brown jasedbr...@gmail.com Authored: Tue May 26 15:29:01 2015 -0700 Committer: Jason Brown jasedbr...@gmail.com Committed: Wed May 27 08:39:32 2015 -0700 -- build.xml | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/162489ae/build.xml -- diff --git a/build.xml b/build.xml index 69f6a61..cbedf20 100644 --- a/build.xml +++ b/build.xml @@ -1116,6 +1116,7 @@ attribute name=exclude default= / attribute name=filelist default= / attribute name=poffset default=0/ +attribute name=outsubdir default=/ attribute name=usejacoco default=no/ sequential @@ -1127,6 +1128,7 @@ echo message=running @{suitename} tests/ mkdir dir=${build.test.dir}/cassandra/ mkdir dir=${build.test.dir}/output/ + mkdir dir=${build.test.dir}/output/@{outsubdir}/ junit fork=on forkmode=@{forkmode} failureproperty=testfailed maxmemory=1024m timeout=@{timeout} sysproperty key=net.sourceforge.cobertura.datafile file=${cobertura.datafile}/ formatter type=xml usefile=true/ @@ -1152,14 +1154,14 @@ include name=**/*.jar / /fileset /classpath -batchtest todir=${build.test.dir}/output +batchtest todir=${build.test.dir}/output/@{outsubdir} fileset dir=@{inputdir} includes=@{filter} excludes=@{exclude}/ filelist dir=@{inputdir} files=@{filelist}/ /batchtest /junit junitreport todir=${build.test.dir} fileset dir=${build.test.dir}/output - include name=TEST-*.xml/ + include name=**/TEST-*.xml/ /fileset report format=frames todir=${build.test.dir}/junitreport/ /junitreport @@ -1268,7 +1270,7 @@ fileset file=${test.conf}/commitlog_compression.yaml/ /concat echoCompressed config: ${compressed_yaml}/echo -testmacro suitename=unit inputdir=${test.unit.src} exclude=**/pig/*.java timeout=${test.timeout} +testmacro suitename=unit inputdir=${test.unit.src} exclude=**/pig/*.java timeout=${test.timeout} outsubdir=compression jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/ jvmarg value=-Dinvalid-legacy-sstable-root=${test.data}/invalid-legacy-sstables/ jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
[2/4] cassandra git commit: Example UDFs don't work
Example UDFs don't work patch by Christopher Batey; reviewed by Robert Stupp for CASSANDRA-9480 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/86014122 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/86014122 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/86014122 Branch: refs/heads/trunk Commit: 860141229ab3291675d9b632e34ab4405359316b Parents: 162489a Author: Christopher Batey christopher.ba...@gmail.com Authored: Wed May 27 17:55:14 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Wed May 27 17:55:14 2015 +0200 -- doc/cql3/CQL.textile | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/86014122/doc/cql3/CQL.textile -- diff --git a/doc/cql3/CQL.textile b/doc/cql3/CQL.textile index 2463a01..91d8dd8 100644 --- a/doc/cql3/CQL.textile +++ b/doc/cql3/CQL.textile @@ -1422,6 +1422,7 @@ Note that you can use the double-quoted string syntax to enclose the UDF source bc(sample).. CREATE FUNCTION some_function ( arg int ) + RETURNS NULL ON NULL INPUT RETURNS int LANGUAGE java AS $$ return arg; $$; @@ -1432,7 +1433,8 @@ p. bc(sample). CREATE TYPE custom_type (txt text, i int); -CREATE FUNCTION fct_using_udt ( udtarg frozencustomType ) +CREATE FUNCTION fct_using_udt ( udtarg frozencustom_type ) + RETURNS NULL ON NULL INPUT RETURNS text LANGUAGE java AS $$ return udtarg.getString(txt); $$; @@ -1484,7 +1486,7 @@ CREATE AGGREGATE average ( int ) FINALFUNC averageFinal INITCOND (0, 0); -CREATE TYPE atable ( +CREATE TABLE atable ( pk int PRIMARY KEY, val int); INSERT INTO atable (pk, val) VALUES (1,1);
[3/4] cassandra git commit: Example UDFs don't work
Example UDFs don't work patch by Christopher Batey; reviewed by Robert Stupp for CASSANDRA-9480 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/86014122 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/86014122 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/86014122 Branch: refs/heads/cassandra-2.2 Commit: 860141229ab3291675d9b632e34ab4405359316b Parents: 162489a Author: Christopher Batey christopher.ba...@gmail.com Authored: Wed May 27 17:55:14 2015 +0200 Committer: Robert Stupp sn...@snazy.de Committed: Wed May 27 17:55:14 2015 +0200 -- doc/cql3/CQL.textile | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/86014122/doc/cql3/CQL.textile -- diff --git a/doc/cql3/CQL.textile b/doc/cql3/CQL.textile index 2463a01..91d8dd8 100644 --- a/doc/cql3/CQL.textile +++ b/doc/cql3/CQL.textile @@ -1422,6 +1422,7 @@ Note that you can use the double-quoted string syntax to enclose the UDF source bc(sample).. CREATE FUNCTION some_function ( arg int ) + RETURNS NULL ON NULL INPUT RETURNS int LANGUAGE java AS $$ return arg; $$; @@ -1432,7 +1433,8 @@ p. bc(sample). CREATE TYPE custom_type (txt text, i int); -CREATE FUNCTION fct_using_udt ( udtarg frozencustomType ) +CREATE FUNCTION fct_using_udt ( udtarg frozencustom_type ) + RETURNS NULL ON NULL INPUT RETURNS text LANGUAGE java AS $$ return udtarg.getString(txt); $$; @@ -1484,7 +1486,7 @@ CREATE AGGREGATE average ( int ) FINALFUNC averageFinal INITCOND (0, 0); -CREATE TYPE atable ( +CREATE TABLE atable ( pk int PRIMARY KEY, val int); INSERT INTO atable (pk, val) VALUES (1,1);
[jira] [Commented] (CASSANDRA-9480) Example UDFs don't work
[ https://issues.apache.org/jira/browse/CASSANDRA-9480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561189#comment-14561189 ] Robert Stupp commented on CASSANDRA-9480: - Thanks, [~chbatey]! Committed as 860141229ab3291675d9b632e34ab4405359316b Example UDFs don't work --- Key: CASSANDRA-9480 URL: https://issues.apache.org/jira/browse/CASSANDRA-9480 Project: Cassandra Issue Type: Bug Components: Documentation website Reporter: Christopher Batey Assignee: Robert Stupp Priority: Minor Fix For: 2.2.0 rc1 Attachments: 9480.txt The example function isn't updated for https://issues.apache.org/jira/browse/CASSANDRA-8374 and example aggregate example CQL has create type rather than create table. Updated on this branch: https://github.com/chbatey/cassandra-1/tree/patch-1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9431) Static Analysis to warn on unsafe use of Autocloseable instances
[ https://issues.apache.org/jira/browse/CASSANDRA-9431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561209#comment-14561209 ] T Jake Luciani commented on CASSANDRA-9431: --- Ah missed that Static Analysis to warn on unsafe use of Autocloseable instances Key: CASSANDRA-9431 URL: https://issues.apache.org/jira/browse/CASSANDRA-9431 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: T Jake Luciani Fix For: 2.2.0 rc1 The ideal goal would be to fail the build under any unsafe (and not annotated as considered safe independently) uses of Autocloseable. It looks as though eclipse (and hence, hopefully ecj) has support for this feature, so we should investigate if it meets our requirements and we can get it integrated -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: test-all results incomplete when parsed
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 91187b542 - 162489aed test-all results incomplete when parsed patch by aweisberg; reviewed by jasobrown for CASSANDRA-9463 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/162489ae Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/162489ae Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/162489ae Branch: refs/heads/cassandra-2.2 Commit: 162489aed57866d5f8185d78a05588e1e81c549e Parents: 91187b5 Author: Jason Brown jasedbr...@gmail.com Authored: Tue May 26 15:29:01 2015 -0700 Committer: Jason Brown jasedbr...@gmail.com Committed: Wed May 27 08:39:32 2015 -0700 -- build.xml | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/162489ae/build.xml -- diff --git a/build.xml b/build.xml index 69f6a61..cbedf20 100644 --- a/build.xml +++ b/build.xml @@ -1116,6 +1116,7 @@ attribute name=exclude default= / attribute name=filelist default= / attribute name=poffset default=0/ +attribute name=outsubdir default=/ attribute name=usejacoco default=no/ sequential @@ -1127,6 +1128,7 @@ echo message=running @{suitename} tests/ mkdir dir=${build.test.dir}/cassandra/ mkdir dir=${build.test.dir}/output/ + mkdir dir=${build.test.dir}/output/@{outsubdir}/ junit fork=on forkmode=@{forkmode} failureproperty=testfailed maxmemory=1024m timeout=@{timeout} sysproperty key=net.sourceforge.cobertura.datafile file=${cobertura.datafile}/ formatter type=xml usefile=true/ @@ -1152,14 +1154,14 @@ include name=**/*.jar / /fileset /classpath -batchtest todir=${build.test.dir}/output +batchtest todir=${build.test.dir}/output/@{outsubdir} fileset dir=@{inputdir} includes=@{filter} excludes=@{exclude}/ filelist dir=@{inputdir} files=@{filelist}/ /batchtest /junit junitreport todir=${build.test.dir} fileset dir=${build.test.dir}/output - include name=TEST-*.xml/ + include name=**/TEST-*.xml/ /fileset report format=frames todir=${build.test.dir}/junitreport/ /junitreport @@ -1268,7 +1270,7 @@ fileset file=${test.conf}/commitlog_compression.yaml/ /concat echoCompressed config: ${compressed_yaml}/echo -testmacro suitename=unit inputdir=${test.unit.src} exclude=**/pig/*.java timeout=${test.timeout} +testmacro suitename=unit inputdir=${test.unit.src} exclude=**/pig/*.java timeout=${test.timeout} outsubdir=compression jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/ jvmarg value=-Dinvalid-legacy-sstable-root=${test.data}/invalid-legacy-sstables/ jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
[jira] [Created] (CASSANDRA-9492) Error message changes based on jdk used
Philip Thompson created CASSANDRA-9492: -- Summary: Error message changes based on jdk used Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Philip Thompson Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column}, but with jdk8 it contains {{Cannot add a non counter column}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9492) Error message changes based on jdk used
[ https://issues.apache.org/jira/browse/CASSANDRA-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-9492: --- Description: Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column}}, but with jdk8 it contains {{Cannot add a non counter column}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. was: Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column}, but with jdk8 it contains {{Cannot add a non counter column}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. Error message changes based on jdk used --- Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Philip Thompson Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column}}, but with jdk8 it contains {{Cannot add a non counter column}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9492) Error message changes based on jdk used
[ https://issues.apache.org/jira/browse/CASSANDRA-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-9492: --- Assignee: Carl Yeksigian (was: Philip Thompson) Error message changes based on jdk used --- Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Carl Yeksigian Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column in a non counter column family}}. With jdk8 it contains {{Cannot add a non counter column in a counter column family}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9492) Error message changes based on jdk used
[ https://issues.apache.org/jira/browse/CASSANDRA-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-9492: --- Tester: Philip Thompson Error message changes based on jdk used --- Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Carl Yeksigian Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column in a non counter column family}}. With jdk8 it contains {{Cannot add a non counter column in a counter column family}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9431) Static Analysis to warn on unsafe use of Autocloseable instances
[ https://issues.apache.org/jira/browse/CASSANDRA-9431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561208#comment-14561208 ] Benedict commented on CASSANDRA-9431: - Did you see the comment I made on your github? I meant to collect them all in a List, and close them only once all of the futures have successfully (or _all_ unsuccessfully_ terminated. Since we're passing them off to another thread we cannot use a try/finally block, but we should make certain they're closed regardless of what the runnable does with them... Static Analysis to warn on unsafe use of Autocloseable instances Key: CASSANDRA-9431 URL: https://issues.apache.org/jira/browse/CASSANDRA-9431 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Assignee: T Jake Luciani Fix For: 2.2.0 rc1 The ideal goal would be to fail the build under any unsafe (and not annotated as considered safe independently) uses of Autocloseable. It looks as though eclipse (and hence, hopefully ecj) has support for this feature, so we should investigate if it meets our requirements and we can get it integrated -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9463) ant test-all results incomplete when parsed
[ https://issues.apache.org/jira/browse/CASSANDRA-9463?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561162#comment-14561162 ] Jason Brown commented on CASSANDRA-9463: cherry-picked the commit to 2.2 (162489aed57866d5f8185d78a05588e1e81c549e) ant test-all results incomplete when parsed --- Key: CASSANDRA-9463 URL: https://issues.apache.org/jira/browse/CASSANDRA-9463 Project: Cassandra Issue Type: Test Reporter: Michael Shuler Assignee: Ariel Weisberg Fix For: 3.x, 2.2.x trunk `ant test` - 1,196 total tests trunk `ant test-all` - 1,353 total tests `ant test-all` runs test,long-test,test-compression,pig-test,test-clientutil-jar, so we should be getting 1196*2 (test, test-compresssion) + N (long-test) + 24 (pig-test) + N (test-clientutil-jar) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9492) Error message changes based on jdk used
[ https://issues.apache.org/jira/browse/CASSANDRA-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561200#comment-14561200 ] Philip Thompson commented on CASSANDRA-9492: I've found using IntelliJ that with jdk8, at the relevant line in CFMetadata.java, that defaultValidator is an instance of CounterColumnType. With jdk7, it is an instance of o.a.c.db.marshal.BytesType. Error message changes based on jdk used --- Key: CASSANDRA-9492 URL: https://issues.apache.org/jira/browse/CASSANDRA-9492 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Philip Thompson Fix For: 2.1.x, 2.2.x Running the dtest cql_tests:TestCQL.validate_counter_regular test, it passes on both 2.2-HEAD and 2.1-HEAD with jdk7, but fails with jdk8. The test attempts an invalid query and expects a certain failure message. With jdk7, the error returned contains {{Cannot add a counter column in a non counter column family}}. With jdk8 it contains {{Cannot add a non counter column in a counter column family}}. This check is made in CFMetadata.java, and the message returned is based on the result of {{if (defaultValidator instanceof CounterColumnType)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9488) CrcCheckChanceTest.testChangingCrcCheckChance fails with stack overflow
[ https://issues.apache.org/jira/browse/CASSANDRA-9488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561217#comment-14561217 ] Ariel Weisberg commented on CASSANDRA-9488: --- +1 Passes when run in a loop now. CrcCheckChanceTest.testChangingCrcCheckChance fails with stack overflow --- Key: CASSANDRA-9488 URL: https://issues.apache.org/jira/browse/CASSANDRA-9488 Project: Cassandra Issue Type: Bug Reporter: Ariel Weisberg Assignee: T Jake Luciani Priority: Minor Fix For: 2.1.x, 2.0.x Attachments: fix.txt http://cassci.datastax.com/job/trunk_utest/212/testReport/junit/org.apache.cassandra.cql3/CrcCheckChanceTest/testChangingCrcCheckChance/ {noformat} java.lang.StackOverflowError at org.apache.cassandra.io.compress.CompressionParameters.validateCrcCheckChance(CompressionParameters.java:138) at org.apache.cassandra.io.compress.CompressionParameters.setCrcCheckChance(CompressionParameters.java:110) at org.apache.cassandra.io.compress.CompressionParameters.setCrcCheckChance(CompressionParameters.java:114) at org.apache.cassandra.io.compress.CompressionParameters.setCrcCheckChance(CompressionParameters.java:114) at org.apache.cassandra.io.compress.CompressionParameters.setCrcCheckChance(CompressionParameters.java:114) {noformat} The code is {noformat} public void setCrcCheckChance(double crcCheckChance) throws ConfigurationException { validateCrcCheckChance(crcCheckChance); this.crcCheckChance = crcCheckChance; if (liveMetadata != null) liveMetadata.compressionParameters.setCrcCheckChance(crcCheckChance); } {noformat} Looks like it is just following itself circularly. Should definitely add an assertion that they are not the same compression parameters. Will run it in a loop for a while to see if it reproduces. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/2] cassandra git commit: Fix error executing bound statement after adding a collection
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 434d27b8a - 74280b1ee Fix error executing bound statement after adding a collection patch by blerer; reviewed by slebresne for CASSANDRA-9411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/63165a71 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/63165a71 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/63165a71 Branch: refs/heads/cassandra-2.1 Commit: 63165a719cd8ec9d7f06c186f61d39403e192edc Parents: 3e4ed96 Author: Benjamin Lerer benjamin.le...@datastax.com Authored: Wed May 27 16:00:52 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:00:52 2015 +0200 -- CHANGES.txt | 1 + .../cql3/statements/ModificationStatement.java | 6 +- .../cql3/statements/SelectStatement.java| 186 +++ 3 files changed, 110 insertions(+), 83 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index af08802..709100b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java index db22e7d..3852920 100644 --- a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java @@ -668,7 +668,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF private static ResultSet buildCasFailureResultSet(ByteBuffer key, ColumnFamily cf, IterableColumnIdentifier columnsWithConditions, boolean isBatch) throws InvalidRequestException { -CFDefinition cfDef = cf.metadata().getCfDef(); +CFMetaData cfm = cf.metadata(); +CFDefinition cfDef = cfm.getCfDef(); Selection selection; if (columnsWithConditions == null) @@ -694,7 +695,8 @@ public abstract class ModificationStatement implements CQLStatement, MeasurableF long now = System.currentTimeMillis(); Selection.ResultSetBuilder builder = selection.resultSetBuilder(now); -SelectStatement.forSelection(cfDef, selection).processColumnFamily(key, cf, Collections.ByteBufferemptyList(), now, builder); +SelectStatement.forSelection(cfm, selection) + .processColumnFamily(cfDef, key, cf, Collections.ByteBufferemptyList(), now, builder); return builder.build(); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/63165a71/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java index 8a4deb6..95e0441 100644 --- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java @@ -46,6 +46,7 @@ import org.apache.cassandra.service.StorageProxy; import org.apache.cassandra.service.StorageService; import org.apache.cassandra.service.pager.*; import org.apache.cassandra.db.ConsistencyLevel; +import org.apache.cassandra.thrift.ColumnDef; import org.apache.cassandra.thrift.IndexExpression; import org.apache.cassandra.thrift.IndexOperator; import org.apache.cassandra.thrift.ThriftValidation; @@ -68,7 +69,7 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache private static final int DEFAULT_COUNT_PAGE_SIZE = 1; private final int boundTerms; -public final CFDefinition cfDef; +public final CFMetaData cfm; public final Parameters parameters; private final Selection selection; private final Term limit; @@ -110,13 +111,13 @@ public class SelectStatement implements CQLStatement, MeasurableForPreparedCache } }; -public SelectStatement(CFDefinition cfDef, int boundTerms, Parameters parameters, Selection selection, Term limit) +public
[jira] [Commented] (CASSANDRA-9443) UFTest UFIdentificationTest are failing in the CI environment
[ https://issues.apache.org/jira/browse/CASSANDRA-9443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561115#comment-14561115 ] Jonathan Ellis commented on CASSANDRA-9443: --- Do we still want to move this to long-test post 9475? UFTest UFIdentificationTest are failing in the CI environment --- Key: CASSANDRA-9443 URL: https://issues.apache.org/jira/browse/CASSANDRA-9443 Project: Cassandra Issue Type: Test Components: Tests Reporter: Sam Tunnicliffe Assignee: Sam Tunnicliffe Fix For: 2.2.0 rc1 These 2 tests are consistently timing out, but I'm so far unable to repro locally. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9484) Inconsistent select count
[ https://issues.apache.org/jira/browse/CASSANDRA-9484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561114#comment-14561114 ] Philip Thompson commented on CASSANDRA-9484: [~blerer], this passes on 2.1 before 8940 was committed, so it seems entirely unrelated. I'm unable to get a good bisect on trunk. Inconsistent select count - Key: CASSANDRA-9484 URL: https://issues.apache.org/jira/browse/CASSANDRA-9484 Project: Cassandra Issue Type: Bug Reporter: Philip Thompson Assignee: Benjamin Lerer Fix For: 3.x, 2.2.x I am running the dtest simultaneous_bootstrap_test located at https://github.com/riptano/cassandra-dtest/compare/cassandra-7069 and finding that at the final data verification step, the query {{SELECT COUNT (*) FROM keyspace1.standard1}} alternated between correctly returning 500,000 rows and returning 500,001 rows. Running cleanup or compaction does not affect the behavior. I have verified with sstable2json that there are exactly 500k rows on disk between the two nodes in the cluster. I am reproducing this on trunk currently. It is not happening on 2.1-head. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9480) Example UDFs don't work
[ https://issues.apache.org/jira/browse/CASSANDRA-9480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561112#comment-14561112 ] Jonathan Ellis commented on CASSANDRA-9480: --- Are we good to commit then? Example UDFs don't work --- Key: CASSANDRA-9480 URL: https://issues.apache.org/jira/browse/CASSANDRA-9480 Project: Cassandra Issue Type: Bug Components: Documentation website Reporter: Christopher Batey Assignee: Robert Stupp Priority: Minor Fix For: 2.2.0 rc1 Attachments: 9480.txt The example function isn't updated for https://issues.apache.org/jira/browse/CASSANDRA-8374 and example aggregate example CQL has create type rather than create table. Updated on this branch: https://github.com/chbatey/cassandra-1/tree/patch-1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9457) Empty INITCOND treated as null in aggregate
[ https://issues.apache.org/jira/browse/CASSANDRA-9457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-9457: -- Reviewer: Sylvain Lebresne Tagging [~slebresne] for review since he's already weighed in here. Empty INITCOND treated as null in aggregate --- Key: CASSANDRA-9457 URL: https://issues.apache.org/jira/browse/CASSANDRA-9457 Project: Cassandra Issue Type: Bug Components: Core Reporter: Olivier Michallat Assignee: Robert Stupp Priority: Minor Fix For: 2.2.0 rc1 Given the following test data: {code} cqlsh:test create table foo(k int, v int, primary key(k,v)); cqlsh:test insert into foo(k,v) values(1,1); cqlsh:test insert into foo(k,v) values(1,2); cqlsh:test insert into foo(k,v) values(1,3); {code} And the following aggregate definition: {code} cqlsh:test CREATE FUNCTION cat(s text, v int) RETURNS NULL ON NULL INPUT RETURNS text LANGUAGE java AS 'return s + v;'; cqlsh:test CREATE AGGREGATE cats(int) SFUNC cat STYPE text INITCOND ''; {code} The following should return '123', but it returns null: {code} cqlsh:test select cats(v) from foo where k = 1; test.cats(v) --- {code} The empty INITCOND is treated as null, and the SFUNC is never called. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/2] cassandra git commit: Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' into cassandra-2.1
Merge commit '63165a719cd8ec9d7f06c186f61d39403e192edc' 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/74280b1e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/74280b1e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/74280b1e Branch: refs/heads/cassandra-2.1 Commit: 74280b1eeb0478f5c3e939aa72daedb62437f50c Parents: 434d27b 63165a7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed May 27 16:17:10 2015 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed May 27 16:17:10 2015 +0200 -- --
[jira] [Updated] (CASSANDRA-9485) RangeTombstoneListTest.addAllRandomTest failed on trunk
[ https://issues.apache.org/jira/browse/CASSANDRA-9485?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-9485: -- Reproduced In: 3.x Since Version: 2.2.0 beta 1 Priority: Blocker (was: Major) Issue Type: Bug (was: Test) RangeTombstoneListTest.addAllRandomTest failed on trunk --- Key: CASSANDRA-9485 URL: https://issues.apache.org/jira/browse/CASSANDRA-9485 Project: Cassandra Issue Type: Bug Reporter: Ariel Weisberg Assignee: Ariel Weisberg Priority: Blocker Attachments: RangeTombstoneListTest.java http://cassci.datastax.com/job/trunk_utest/201/testReport/org.apache.cassandra.db/RangeTombstoneListTest/addAllRandomTest/ The test is also broken for reproducibility. It doesn't print the seed used for the RNG so it isn't possible to take a failing run and reproduce it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9485) RangeTombstoneListTest.addAllRandomTest failed on trunk
[ https://issues.apache.org/jira/browse/CASSANDRA-9485?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-9485: -- Since Version: 1.2.0 beta 1 (was: 2.2.0 beta 1) RangeTombstoneListTest.addAllRandomTest failed on trunk --- Key: CASSANDRA-9485 URL: https://issues.apache.org/jira/browse/CASSANDRA-9485 Project: Cassandra Issue Type: Bug Reporter: Ariel Weisberg Assignee: Ariel Weisberg Priority: Blocker Attachments: RangeTombstoneListTest.java http://cassci.datastax.com/job/trunk_utest/201/testReport/org.apache.cassandra.db/RangeTombstoneListTest/addAllRandomTest/ The test is also broken for reproducibility. It doesn't print the seed used for the RNG so it isn't possible to take a failing run and reproduce it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
cassandra git commit: Update commitlog archiving docs now that segments aren't recycled
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 860141229 - f9c998cbc Update commitlog archiving docs now that segments aren't recycled Patch by Branimir Lambov; reviewed by Ariel Weisberg for CASSANDRA-9350 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f9c998cb Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f9c998cb Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f9c998cb Branch: refs/heads/cassandra-2.2 Commit: f9c998cbc33c1cdbd65c1b57a1e3fba6c38a17a5 Parents: 8601412 Author: Branimir Lambov branimir.lam...@datastax.com Authored: Wed May 27 12:03:22 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 12:03:22 2015 -0500 -- CHANGES.txt | 2 ++ conf/commitlog_archiving.properties | 7 --- 2 files changed, 2 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f9c998cb/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 454bd65..e183137 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.2 + * Update commitlog archiving examples now that commitlog segments are + not recycled (CASSANDRA-9350) * Extend Transactional API to sstable lifecycle management (CASSANDRA-8568) * (cqlsh) Add support for native protocol 4 (CASSANDRA-9399) * Ensure that UDF and UDAs are keyspace-isolated (CASSANDRA-9409) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f9c998cb/conf/commitlog_archiving.properties -- diff --git a/conf/commitlog_archiving.properties b/conf/commitlog_archiving.properties index 109a50b..393259c 100644 --- a/conf/commitlog_archiving.properties +++ b/conf/commitlog_archiving.properties @@ -22,13 +22,6 @@ # %name = Name of the commit log. # Example: archive_command=/bin/ln %path /backup/%name # -# commitlog archiving configuration. Leave blank to disable. - -# Command to execute to archive a commitlog segment -# Parameters: %path = Fully qualified path of the segment to archive -# %name = Name of the commit log. -# Example: archive_command=/bin/cp -f %path /backup/%name -# # Limitation: *_command= expects one command with arguments. STDOUT # and STDIN or multiple commands cannot be executed. You might want # to script multiple commands and add a pointer here.
[jira] [Reopened] (CASSANDRA-9463) ant test-all results incomplete when parsed
[ https://issues.apache.org/jira/browse/CASSANDRA-9463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg reopened CASSANDRA-9463: --- Reopening to continue work on formatting of junit results. ant test-all results incomplete when parsed --- Key: CASSANDRA-9463 URL: https://issues.apache.org/jira/browse/CASSANDRA-9463 Project: Cassandra Issue Type: Test Reporter: Michael Shuler Assignee: Ariel Weisberg Fix For: 3.x, 2.2.x trunk `ant test` - 1,196 total tests trunk `ant test-all` - 1,353 total tests `ant test-all` runs test,long-test,test-compression,pig-test,test-clientutil-jar, so we should be getting 1196*2 (test, test-compresssion) + N (long-test) + 24 (pig-test) + N (test-clientutil-jar) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-7486) Migrate to G1GC by default
[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-7486: -- Reviewer: Joshua McKenzie (was: Ariel Weisberg) Migrate to G1GC by default -- Key: CASSANDRA-7486 URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 Project: Cassandra Issue Type: New Feature Components: Config Reporter: Jonathan Ellis Assignee: Albert P Tobey Fix For: 3.0 beta 1 See http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning and https://twitter.com/rbranson/status/482113561431265281 May want to default 2.1 to G1. 2.1 is a different animal from 2.0 after moving most of memtables off heap. Suspect this will help G1 even more than CMS. (NB this is off by default but needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561231#comment-14561231 ] Jonathan Ellis commented on CASSANDRA-9493: --- Do we need this in rc1 then? Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.x We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robert Stupp updated CASSANDRA-9493: Fix Version/s: (was: 2.2.x) 2.2.0 rc1 Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.0 rc1 We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561302#comment-14561302 ] Jonathan Ellis commented on CASSANDRA-9493: --- [~omichallat] when are you looking at your next release? Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.0 rc1 We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Issue Comment Deleted] (CASSANDRA-7486) Migrate to G1GC by default
[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joshua McKenzie updated CASSANDRA-7486: --- Comment: was deleted (was: Sanity check on local laptop on a variety of workloads looks comparable between CMS and G1, slight edge to CMS but I'm on a sub 8G heap so that's to be expected. Couple of spelling nits in comments in conf: misspelled effecitve vice versa, not visa-versa Haven't tested yet on CI as I have a dtest going I don't want to mess with but I'm comfortable moving forward w/the results from testing locally.) Migrate to G1GC by default -- Key: CASSANDRA-7486 URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 Project: Cassandra Issue Type: New Feature Components: Config Reporter: Jonathan Ellis Assignee: Albert P Tobey Fix For: 3.0 beta 1 See http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning and https://twitter.com/rbranson/status/482113561431265281 May want to default 2.1 to G1. 2.1 is a different animal from 2.0 after moving most of memtables off heap. Suspect this will help G1 even more than CMS. (NB this is off by default but needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561287#comment-14561287 ] Robert Stupp commented on CASSANDRA-9493: - Yes, rc1 would be very nice. At least 783, 404, 786. I don't thing that need full V4 support for UDFs. So a custom 2.2 Java Driver build would be fine IMO. /cc |~slebresne| Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.0 rc1 We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561287#comment-14561287 ] Robert Stupp edited comment on CASSANDRA-9493 at 5/27/15 5:09 PM: -- Yes, rc1 would be very nice. At least 783, 404, 786. I don't thing that need full V4 support for UDFs. So a custom 2.2 Java Driver build would be fine IMO. /cc [~slebresne]] was (Author: snazy): Yes, rc1 would be very nice. At least 783, 404, 786. I don't thing that need full V4 support for UDFs. So a custom 2.2 Java Driver build would be fine IMO. /cc |~slebresne| Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.0 rc1 We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[1/2] cassandra git commit: Update commitlog archiving docs now that segments aren't recycled
Repository: cassandra Updated Branches: refs/heads/trunk 3c98472d5 - e9a263dae Update commitlog archiving docs now that segments aren't recycled Patch by Branimir Lambov; reviewed by Ariel Weisberg for CASSANDRA-9350 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f9c998cb Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f9c998cb Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f9c998cb Branch: refs/heads/trunk Commit: f9c998cbc33c1cdbd65c1b57a1e3fba6c38a17a5 Parents: 8601412 Author: Branimir Lambov branimir.lam...@datastax.com Authored: Wed May 27 12:03:22 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 12:03:22 2015 -0500 -- CHANGES.txt | 2 ++ conf/commitlog_archiving.properties | 7 --- 2 files changed, 2 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f9c998cb/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 454bd65..e183137 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 2.2 + * Update commitlog archiving examples now that commitlog segments are + not recycled (CASSANDRA-9350) * Extend Transactional API to sstable lifecycle management (CASSANDRA-8568) * (cqlsh) Add support for native protocol 4 (CASSANDRA-9399) * Ensure that UDF and UDAs are keyspace-isolated (CASSANDRA-9409) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f9c998cb/conf/commitlog_archiving.properties -- diff --git a/conf/commitlog_archiving.properties b/conf/commitlog_archiving.properties index 109a50b..393259c 100644 --- a/conf/commitlog_archiving.properties +++ b/conf/commitlog_archiving.properties @@ -22,13 +22,6 @@ # %name = Name of the commit log. # Example: archive_command=/bin/ln %path /backup/%name # -# commitlog archiving configuration. Leave blank to disable. - -# Command to execute to archive a commitlog segment -# Parameters: %path = Fully qualified path of the segment to archive -# %name = Name of the commit log. -# Example: archive_command=/bin/cp -f %path /backup/%name -# # Limitation: *_command= expects one command with arguments. STDOUT # and STDIN or multiple commands cannot be executed. You might want # to script multiple commands and add a pointer here.
[2/2] cassandra git commit: Merge branch 'cassandra-2.2' into trunk
Merge branch 'cassandra-2.2' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e9a263da Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e9a263da Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e9a263da Branch: refs/heads/trunk Commit: e9a263dae5aab0543a11aa2248f001de6a59900d Parents: 3c98472 f9c998c Author: Tyler Hobbs tylerlho...@gmail.com Authored: Wed May 27 12:04:42 2015 -0500 Committer: Tyler Hobbs tylerlho...@gmail.com Committed: Wed May 27 12:04:42 2015 -0500 -- CHANGES.txt | 2 ++ conf/commitlog_archiving.properties | 7 --- 2 files changed, 2 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e9a263da/CHANGES.txt -- diff --cc CHANGES.txt index e5c84ab,e183137..bba4d43 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,9 -1,6 +1,11 @@@ +3.0: + * Decommissioned nodes will not rejoin the cluster (CASSANDRA-8801) + * Change gossip stabilization to use endpoit size (CASSANDRA-9401) + + 2.2 + * Update commitlog archiving examples now that commitlog segments are +not recycled (CASSANDRA-9350) * Extend Transactional API to sstable lifecycle management (CASSANDRA-8568) * (cqlsh) Add support for native protocol 4 (CASSANDRA-9399) * Ensure that UDF and UDAs are keyspace-isolated (CASSANDRA-9409)
[jira] [Updated] (CASSANDRA-9350) Commit log archiving can use ln instead of cp now that segments are not recycled
[ https://issues.apache.org/jira/browse/CASSANDRA-9350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tyler Hobbs updated CASSANDRA-9350: --- Priority: Trivial (was: Major) Commit log archiving can use ln instead of cp now that segments are not recycled Key: CASSANDRA-9350 URL: https://issues.apache.org/jira/browse/CASSANDRA-9350 Project: Cassandra Issue Type: Improvement Reporter: Ariel Weisberg Assignee: Branimir Lambov Priority: Trivial Fix For: 2.2.0 rc1 Attachments: 9350.txt It was changed because the segments aren't really immutable with recycling. See CASSANDRA-8290 and [Aleksey's comment|https://issues.apache.org/jira/browse/CASSANDRA-8290?focusedCommentId=14345979page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14345979] -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7486) Migrate to G1GC by default
[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561319#comment-14561319 ] Joshua McKenzie commented on CASSANDRA-7486: Sanity check on local laptop on a variety of workloads looks comparable between CMS and G1, slight edge to CMS but I'm on a sub 8G heap so that's to be expected. Couple of spelling nits in comments in conf: misspelled effecitve vice versa, not visa-versa Haven't tested yet on CI as I have a dtest going I don't want to mess with but I'm comfortable moving forward w/the results from testing locally. Migrate to G1GC by default -- Key: CASSANDRA-7486 URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 Project: Cassandra Issue Type: New Feature Components: Config Reporter: Jonathan Ellis Assignee: Albert P Tobey Fix For: 3.0 beta 1 See http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning and https://twitter.com/rbranson/status/482113561431265281 May want to default 2.1 to G1. 2.1 is a different animal from 2.0 after moving most of memtables off heap. Suspect this will help G1 even more than CMS. (NB this is off by default but needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7486) Migrate to G1GC by default
[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561318#comment-14561318 ] Joshua McKenzie commented on CASSANDRA-7486: Sanity check on local laptop on a variety of workloads looks comparable between CMS and G1, slight edge to CMS but I'm on a sub 8G heap so that's to be expected. Couple of spelling nits in comments in conf: misspelled effecitve vice versa, not visa-versa Haven't tested yet on CI as I have a dtest going I don't want to mess with but I'm comfortable moving forward w/the results from testing locally. Migrate to G1GC by default -- Key: CASSANDRA-7486 URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 Project: Cassandra Issue Type: New Feature Components: Config Reporter: Jonathan Ellis Assignee: Albert P Tobey Fix For: 3.0 beta 1 See http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning and https://twitter.com/rbranson/status/482113561431265281 May want to default 2.1 to G1. 2.1 is a different animal from 2.0 after moving most of memtables off heap. Suspect this will help G1 even more than CMS. (NB this is off by default but needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8576) Primary Key Pushdown For Hadoop
[ https://issues.apache.org/jira/browse/CASSANDRA-8576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561632#comment-14561632 ] Philip Thompson edited comment on CASSANDRA-8576 at 5/27/15 8:13 PM: - I'm unsure after reading [~jjordan]'s comment, does this need a test of a hadoop job while in a mixed version cluster? was (Author: philipthompson): Reading [~jjordan]'s comment, does this need a test of a hadoop job while in a mixed version cluster? Primary Key Pushdown For Hadoop --- Key: CASSANDRA-8576 URL: https://issues.apache.org/jira/browse/CASSANDRA-8576 Project: Cassandra Issue Type: Improvement Components: Hadoop Reporter: Russell Alexander Spitzer Assignee: Alex Liu Fix For: 2.1.x Attachments: 8576-2.1-branch.txt, 8576-trunk.txt, CASSANDRA-8576-v2-2.1-branch.txt, CASSANDRA-8576-v3-2.1-branch.txt I've heard reports from several users that they would like to have predicate pushdown functionality for hadoop (Hive in particular) based services. Example usecase Table with wide partitions, one per customer Application team has HQL they would like to run on a single customer Currently time to complete scales with number of customers since Input Format can't pushdown primary key predicate Current implementation requires a full table scan (since it can't recognize that a single partition was specified) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/2] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 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/fb1eaab4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fb1eaab4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fb1eaab4 Branch: refs/heads/cassandra-2.1 Commit: fb1eaab4120e766162b2dc397274dc68a499a4dd Parents: a8dce22 04eba90 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:19:51 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:19:51 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java| 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/CHANGES.txt -- diff --cc CHANGES.txt index d00cc65,58f3c53..ecd380d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,36 -1,8 +1,37 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java -- diff --cc test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java index f218c9d,000..bed3cdd mode 100644,00..100644 --- a/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java +++ b/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java @@@ -1,157 -1,0 +1,159 @@@ +/* + * 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 + * + *
cassandra git commit: Fix potential StackOverflow when setting CrcCheckChance over JMX
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 d075540c4 - 04eba9094 Fix potential StackOverflow when setting CrcCheckChance over JMX Patch by tjake; reviewed by Ariel Weisberg for CASSANDRA-9488 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/04eba909 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/04eba909 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/04eba909 Branch: refs/heads/cassandra-2.0 Commit: 04eba90949a674cff21756ade74d9fef3f4878c5 Parents: d075540 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:15:06 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:15:06 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 054cf79..58f3c53 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- diff --git a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java index cf16711..2ca99f5 100644 --- a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java +++ b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java @@ -116,7 +116,7 @@ public class CompressionParameters validateCrcCheckChance(crcCheckChance); this.crcCheckChance = crcCheckChance; -if (liveMetadata != null) +if (liveMetadata != null this != liveMetadata.compressionParameters) liveMetadata.compressionParameters.setCrcCheckChance(crcCheckChance); }
[2/4] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 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/fb1eaab4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fb1eaab4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fb1eaab4 Branch: refs/heads/trunk Commit: fb1eaab4120e766162b2dc397274dc68a499a4dd Parents: a8dce22 04eba90 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:19:51 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:19:51 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java| 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/CHANGES.txt -- diff --cc CHANGES.txt index d00cc65,58f3c53..ecd380d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,36 -1,8 +1,37 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java -- diff --cc test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java index f218c9d,000..bed3cdd mode 100644,00..100644 --- a/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java +++ b/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java @@@ -1,157 -1,0 +1,159 @@@ +/* + * 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 + *
[1/3] cassandra git commit: Fix potential StackOverflow when setting CrcCheckChance over JMX
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 80ba11c62 - 6fe6c99ba Fix potential StackOverflow when setting CrcCheckChance over JMX Patch by tjake; reviewed by Ariel Weisberg for CASSANDRA-9488 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/04eba909 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/04eba909 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/04eba909 Branch: refs/heads/cassandra-2.2 Commit: 04eba90949a674cff21756ade74d9fef3f4878c5 Parents: d075540 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:15:06 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:15:06 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 054cf79..58f3c53 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- diff --git a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java index cf16711..2ca99f5 100644 --- a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java +++ b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java @@ -116,7 +116,7 @@ public class CompressionParameters validateCrcCheckChance(crcCheckChance); this.crcCheckChance = crcCheckChance; -if (liveMetadata != null) +if (liveMetadata != null this != liveMetadata.compressionParameters) liveMetadata.compressionParameters.setCrcCheckChance(crcCheckChance); }
[3/4] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
Merge branch 'cassandra-2.1' into cassandra-2.2 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/6fe6c99b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6fe6c99b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6fe6c99b Branch: refs/heads/trunk Commit: 6fe6c99baabc8bc9fc363ca8f1bbc3e68d03d318 Parents: 80ba11c fb1eaab Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:21:28 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:21:28 2015 -0400 -- CHANGES.txt | 3 +++ .../org/apache/cassandra/io/compress/CompressionParameters.java | 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java --
[4/4] cassandra git commit: Merge branch 'cassandra-2.2' into trunk
Merge branch 'cassandra-2.2' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5746f602 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5746f602 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5746f602 Branch: refs/heads/trunk Commit: 5746f602f2bfafcc471ed11d97ca3d516932a1a2 Parents: eb60f31 6fe6c99 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:22:01 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:22:01 2015 -0400 -- CHANGES.txt | 3 +++ .../org/apache/cassandra/io/compress/CompressionParameters.java | 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5746f602/CHANGES.txt --
[1/4] cassandra git commit: Fix potential StackOverflow when setting CrcCheckChance over JMX
Repository: cassandra Updated Branches: refs/heads/trunk eb60f3101 - 5746f602f Fix potential StackOverflow when setting CrcCheckChance over JMX Patch by tjake; reviewed by Ariel Weisberg for CASSANDRA-9488 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/04eba909 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/04eba909 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/04eba909 Branch: refs/heads/trunk Commit: 04eba90949a674cff21756ade74d9fef3f4878c5 Parents: d075540 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:15:06 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:15:06 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 054cf79..58f3c53 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- diff --git a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java index cf16711..2ca99f5 100644 --- a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java +++ b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java @@ -116,7 +116,7 @@ public class CompressionParameters validateCrcCheckChance(crcCheckChance); this.crcCheckChance = crcCheckChance; -if (liveMetadata != null) +if (liveMetadata != null this != liveMetadata.compressionParameters) liveMetadata.compressionParameters.setCrcCheckChance(crcCheckChance); }
[2/3] cassandra git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 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/fb1eaab4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fb1eaab4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fb1eaab4 Branch: refs/heads/cassandra-2.2 Commit: fb1eaab4120e766162b2dc397274dc68a499a4dd Parents: a8dce22 04eba90 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:19:51 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:19:51 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java| 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/CHANGES.txt -- diff --cc CHANGES.txt index d00cc65,58f3c53..ecd380d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,36 -1,8 +1,37 @@@ -2.0.16: +2.1.6 + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) - * Fix failing bound statement after adding a collection (CASSANDRA-9411) * Fix counting cache serialization in request metrics (CASSANDRA-9466) * (cqlsh) Add LOGIN command to switch users (CASSANDRA-7212) * Clone SliceQueryFilter in AbstractReadCommand implementations (CASSANDRA-8940) http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fb1eaab4/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java -- diff --cc test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java index f218c9d,000..bed3cdd mode 100644,00..100644 --- a/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java +++ b/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java @@@ -1,157 -1,0 +1,159 @@@ +/* + * 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 + * + *
[3/3] cassandra git commit: Merge branch 'cassandra-2.1' into cassandra-2.2
Merge branch 'cassandra-2.1' into cassandra-2.2 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/6fe6c99b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6fe6c99b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6fe6c99b Branch: refs/heads/cassandra-2.2 Commit: 6fe6c99baabc8bc9fc363ca8f1bbc3e68d03d318 Parents: 80ba11c fb1eaab Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:21:28 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:21:28 2015 -0400 -- CHANGES.txt | 3 +++ .../org/apache/cassandra/io/compress/CompressionParameters.java | 2 +- test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6fe6c99b/test/unit/org/apache/cassandra/cql3/CrcCheckChanceTest.java --
[1/2] cassandra git commit: Fix potential StackOverflow when setting CrcCheckChance over JMX
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 a8dce228d - fb1eaab41 Fix potential StackOverflow when setting CrcCheckChance over JMX Patch by tjake; reviewed by Ariel Weisberg for CASSANDRA-9488 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/04eba909 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/04eba909 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/04eba909 Branch: refs/heads/cassandra-2.1 Commit: 04eba90949a674cff21756ade74d9fef3f4878c5 Parents: d075540 Author: T Jake Luciani j...@apache.org Authored: Wed May 27 16:15:06 2015 -0400 Committer: T Jake Luciani j...@apache.org Committed: Wed May 27 16:15:06 2015 -0400 -- CHANGES.txt| 1 + .../org/apache/cassandra/io/compress/CompressionParameters.java| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 054cf79..58f3c53 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.16: + * Fix potential StackOverflow when setting CrcCheckChance over JMX (CASSANDRA-9488) * Fix null static columns in pages after the first, paged reversed queries (CASSANDRA-8502) * Fix failing bound statement after adding a collection (CASSANDRA-9411) http://git-wip-us.apache.org/repos/asf/cassandra/blob/04eba909/src/java/org/apache/cassandra/io/compress/CompressionParameters.java -- diff --git a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java index cf16711..2ca99f5 100644 --- a/src/java/org/apache/cassandra/io/compress/CompressionParameters.java +++ b/src/java/org/apache/cassandra/io/compress/CompressionParameters.java @@ -116,7 +116,7 @@ public class CompressionParameters validateCrcCheckChance(crcCheckChance); this.crcCheckChance = crcCheckChance; -if (liveMetadata != null) +if (liveMetadata != null this != liveMetadata.compressionParameters) liveMetadata.compressionParameters.setCrcCheckChance(crcCheckChance); }
[jira] [Commented] (CASSANDRA-8576) Primary Key Pushdown For Hadoop
[ https://issues.apache.org/jira/browse/CASSANDRA-8576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561632#comment-14561632 ] Philip Thompson commented on CASSANDRA-8576: Reading [~jjordan]'s comment, does this need a test of a hadoop job while in a mixed version cluster? Primary Key Pushdown For Hadoop --- Key: CASSANDRA-8576 URL: https://issues.apache.org/jira/browse/CASSANDRA-8576 Project: Cassandra Issue Type: Improvement Components: Hadoop Reporter: Russell Alexander Spitzer Assignee: Alex Liu Fix For: 2.1.x Attachments: 8576-2.1-branch.txt, 8576-trunk.txt, CASSANDRA-8576-v2-2.1-branch.txt, CASSANDRA-8576-v3-2.1-branch.txt I've heard reports from several users that they would like to have predicate pushdown functionality for hadoop (Hive in particular) based services. Example usecase Table with wide partitions, one per customer Application team has HQL they would like to run on a single customer Currently time to complete scales with number of customers since Input Format can't pushdown primary key predicate Current implementation requires a full table scan (since it can't recognize that a single partition was specified) -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-8584) Add rate limited logging of failed trySkipCache calls and commit log lag
[ https://issues.apache.org/jira/browse/CASSANDRA-8584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-8584: -- Description: Since trySkipCache returns an errno rather than -1 and setting errno like our other CLibrary calls, it's thread-safe and we could print out more helpful information if we failed to prompt the kernel to skip the page cache. That system call should always succeed unless we have an invalid fd as it's free to ignore us. Commit log lag is already rate limited by its own implementation. Convert to use NoSpamLogger. was:Since trySkipCache returns an errno rather than -1 and setting errno like our other CLibrary calls, it's thread-safe and we could print out more helpful information if we failed to prompt the kernel to skip the page cache. That system call should always succeed unless we have an invalid fd as it's free to ignore us. Add rate limited logging of failed trySkipCache calls and commit log lag Key: CASSANDRA-8584 URL: https://issues.apache.org/jira/browse/CASSANDRA-8584 Project: Cassandra Issue Type: Improvement Reporter: Joshua McKenzie Assignee: Ariel Weisberg Priority: Trivial Fix For: 2.1.x Attachments: 8584_v1.txt, NoSpamLogger.java, nospamlogger.txt Since trySkipCache returns an errno rather than -1 and setting errno like our other CLibrary calls, it's thread-safe and we could print out more helpful information if we failed to prompt the kernel to skip the page cache. That system call should always succeed unless we have an invalid fd as it's free to ignore us. Commit log lag is already rate limited by its own implementation. Convert to use NoSpamLogger. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-8584) Add rate limited logging of failed trySkipCache calls and commit log lag
[ https://issues.apache.org/jira/browse/CASSANDRA-8584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-8584: -- Summary: Add rate limited logging of failed trySkipCache calls and commit log lag (was: Add strerror output on failed trySkipCache calls) Add rate limited logging of failed trySkipCache calls and commit log lag Key: CASSANDRA-8584 URL: https://issues.apache.org/jira/browse/CASSANDRA-8584 Project: Cassandra Issue Type: Improvement Reporter: Joshua McKenzie Assignee: Ariel Weisberg Priority: Trivial Fix For: 2.1.x Attachments: 8584_v1.txt, NoSpamLogger.java, nospamlogger.txt Since trySkipCache returns an errno rather than -1 and setting errno like our other CLibrary calls, it's thread-safe and we could print out more helpful information if we failed to prompt the kernel to skip the page cache. That system call should always succeed unless we have an invalid fd as it's free to ignore us. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9494) Need to set TTL with COPY command
[ https://issues.apache.org/jira/browse/CASSANDRA-9494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-9494: -- Assignee: (was: Stefania) (Unassigning from Stefania since we have an intern starting full time on cqlsh in a couple weeks.) Need to set TTL with COPY command - Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Ed Chen Fix For: 2.0.x, 2.2.x I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (CASSANDRA-9494) Need to set TTL with COPY command
[ https://issues.apache.org/jira/browse/CASSANDRA-9494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-9494: --- Labels: cqlsh (was: ) Need to set TTL with COPY command - Key: CASSANDRA-9494 URL: https://issues.apache.org/jira/browse/CASSANDRA-9494 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Ed Chen Labels: cqlsh Fix For: 2.0.x, 2.2.x I can import a chunk of data into Cassandra table with COPY command like: COPY my_table (name, address) FROM my_file.csv WITH option='value' ... ; But I am not able to specify a finite TTL in COPY command with USING TTL 3600, for example. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9402) Implement proper sandboxing for UDFs
[ https://issues.apache.org/jira/browse/CASSANDRA-9402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561804#comment-14561804 ] Aleksey Yeschenko commented on CASSANDRA-9402: -- bq. Can we label UDF experimental in 2.2 and ship based on the 9404 approach and push this to 3.0? I will be okay with it, so longer as we communicate this very clearly. Experimentalness is also very limited here - we are pretty certain that the syntax will stay the same, it's just that some functions might become broken for security reasons once the sandbox is in place. Implement proper sandboxing for UDFs Key: CASSANDRA-9402 URL: https://issues.apache.org/jira/browse/CASSANDRA-9402 Project: Cassandra Issue Type: Task Reporter: T Jake Luciani Assignee: Robert Stupp Priority: Critical Labels: doc-impacting, security Fix For: 2.2.0 rc1 We want to avoid a security exploit for our users. We need to make sure we ship 2.2 UDFs with good defaults so someone exposing it to the internet accidentally doesn't open themselves up to having arbitrary code run. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6977) attempting to create 10K column families fails with 100 node cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-6977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561752#comment-14561752 ] Jack Krupansky commented on CASSANDRA-6977: --- [~jasonstack], this issue was resolved as a duplicate of CASSANDRA-7444 which notes: {quote} The patch should change it from linear wrt the total number of tables in the schema, to linear wrt the number of tables in a keyspace. So if you are creating 1000s of tables in a single keyspace we expect no change at all. {quote} attempting to create 10K column families fails with 100 node cluster Key: CASSANDRA-6977 URL: https://issues.apache.org/jira/browse/CASSANDRA-6977 Project: Cassandra Issue Type: Bug Environment: 100 nodes, Ubuntu 12.04.3 LTS, AWS m1.large instances Reporter: Daniel Meyer Assignee: Rocco Varela Priority: Minor Fix For: 2.1.1 Attachments: 100_nodes_all_data.png, all_data_5_nodes.png, keyspace_create.py, logs.tar, tpstats.txt, visualvm_tracer_data.csv During this test we are attempting to create a total of 1K keyspaces with 10 column families each to bring the total column families to 10K. With a 5 node cluster this operation can be completed; however, it fails with 100 nodes. Please see the two charts. For the 5 node case the time required to create each keyspace and subsequent 10 column families increases linearly until the number of keyspaces is 1K. For a 100 node cluster there is a sudden increase in latency between 450 keyspaces and 550 keyspaces. The test ends when the test script times out. After the test script times out it is impossible to reconnect to the cluster with the datastax python driver because it cannot connect to the host: cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'10.199.5.98': OperationTimedOut()} It was found that running the following stress command does work from the same machine the test script runs on. cassandra-stress -d 10.199.5.98 -l 2 -e QUORUM -L3 -b -o INSERT It should be noted that this test was initially done with DSE 4.0 and c* version 2.0.5.24 and in that case it was not possible to run stress against the cluster even locally on a node due to not finding the host. Attached are system logs from one of the nodes, charts showing schema creation latency for 5 and 100 node clusters and virtualvm tracer data for cpu, memory, num_threads and gc runs, tpstat output and the test script. The test script was on an m1.large aws instance outside of the cluster under test. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7281) SELECT on tuple relations are broken for mixed ASC/DESC clustering order
[ https://issues.apache.org/jira/browse/CASSANDRA-7281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561778#comment-14561778 ] Marcin Szymaniuk commented on CASSANDRA-7281: - Ok I will have a look. I guess we should change Fix Version/s then? SELECT on tuple relations are broken for mixed ASC/DESC clustering order Key: CASSANDRA-7281 URL: https://issues.apache.org/jira/browse/CASSANDRA-7281 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Marcin Szymaniuk Fix For: 2.1.x Attachments: 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v2.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v3.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v4.patch As noted on [CASSANDRA-6875|https://issues.apache.org/jira/browse/CASSANDRA-6875?focusedCommentId=13992153page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13992153], the tuple notation is broken when the clustering order mixes ASC and DESC directives because the range of data they describe don't correspond to a single continuous slice internally. To copy the example from CASSANDRA-6875: {noformat} cqlsh:ks create table foo (a int, b int, c int, PRIMARY KEY (a, b, c)) WITH CLUSTERING ORDER BY (b DESC, c ASC); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 2, 0); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 1, 0); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 1, 1); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 0, 0); cqlsh:ks SELECT * FROM foo WHERE a=0; a | b | c ---+---+--- 0 | 2 | 0 0 | 1 | 0 0 | 1 | 1 0 | 0 | 0 (4 rows) cqlsh:ks SELECT * FROM foo WHERE a=0 AND (b, c) (1, 0); a | b | c ---+---+--- 0 | 2 | 0 (1 rows) {noformat} The last query should really return {{(0, 2, 0)}} and {{(0, 1, 1)}}. For that specific example we should generate 2 internal slices, but I believe that with more clustering columns we may have more slices. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-7281) SELECT on tuple relations are broken for mixed ASC/DESC clustering order
[ https://issues.apache.org/jira/browse/CASSANDRA-7281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561779#comment-14561779 ] Marcin Szymaniuk commented on CASSANDRA-7281: - Ok I will have a look. I guess we should change Fix Version/s then? SELECT on tuple relations are broken for mixed ASC/DESC clustering order Key: CASSANDRA-7281 URL: https://issues.apache.org/jira/browse/CASSANDRA-7281 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Marcin Szymaniuk Fix For: 2.1.x Attachments: 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v2.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v3.patch, 0001-CASSANDRA-7281-SELECT-on-tuple-relations-are-broken-v4.patch As noted on [CASSANDRA-6875|https://issues.apache.org/jira/browse/CASSANDRA-6875?focusedCommentId=13992153page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13992153], the tuple notation is broken when the clustering order mixes ASC and DESC directives because the range of data they describe don't correspond to a single continuous slice internally. To copy the example from CASSANDRA-6875: {noformat} cqlsh:ks create table foo (a int, b int, c int, PRIMARY KEY (a, b, c)) WITH CLUSTERING ORDER BY (b DESC, c ASC); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 2, 0); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 1, 0); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 1, 1); cqlsh:ks INSERT INTO foo (a, b, c) VALUES (0, 0, 0); cqlsh:ks SELECT * FROM foo WHERE a=0; a | b | c ---+---+--- 0 | 2 | 0 0 | 1 | 0 0 | 1 | 1 0 | 0 | 0 (4 rows) cqlsh:ks SELECT * FROM foo WHERE a=0 AND (b, c) (1, 0); a | b | c ---+---+--- 0 | 2 | 0 (1 rows) {noformat} The last query should really return {{(0, 2, 0)}} and {{(0, 1, 1)}}. For that specific example we should generate 2 internal slices, but I believe that with more clustering columns we may have more slices. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9418) Fix dtests on WIndows
[ https://issues.apache.org/jira/browse/CASSANDRA-9418?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561704#comment-14561704 ] Joshua McKenzie commented on CASSANDRA-9418: A simple ccm PR ([link|https://github.com/pcmanus/ccm/pull/289]) and a dtest PR ([link|https://github.com/riptano/cassandra-dtest/pull/299]) have knocked off 226 more failures and gotten us down to 338 failures from 564 ([test run here|http://cassci.datastax.com/view/trunk/job/trunk_dtest_win32/271/]). In the logs there's a very high count of Found running cassandra process with pid: 15776. Killing. from the dtest change to kill running cassandra processes during Tester.setUp(). The matching ccm PR was intended to give us something to correlate w/those failures to find out if there were specific tests that were hanging and address them, however this first test run gave us over 100 instances of hung tests that had to be killed. Hopefully there's a systemic infrastructural issue that we can address that will help with those errors. There's still a high number of errors indicating missing system.log, conf\*, or bin\* files; there's some environmental silliness occurring I haven't gotten any clarity on yet as it's CI specific. The PR for ccm didn't actually print to stderr so once I figure out why CI / nosetests is absorbing that output, I'll probably also put in some more debug information from ccm regarding starting and stopping clusters and point CI to that debug branch to get more information out of it. Fix dtests on WIndows - Key: CASSANDRA-9418 URL: https://issues.apache.org/jira/browse/CASSANDRA-9418 Project: Cassandra Issue Type: Bug Reporter: Joshua McKenzie Assignee: Joshua McKenzie Labels: Windows Fix For: 2.2.x There's a variety of infrastructural failures within dtest w/regards to windows that are causing tests to fail and those failures to cascade. Error: failure to delete commit log after a test / ccm cluster is stopped: {noformat} Traceback (most recent call last): File C:\src\cassandra-dtest\dtest.py, line 452, in tearDown self._cleanup_cluster() File C:\src\cassandra-dtest\dtest.py, line 172, in _cleanup_cluster self.cluster.remove() File build\bdist.win-amd64\egg\ccmlib\cluster.py, line 212, in remove shutil.rmtree(self.get_path()) File C:\Python27\lib\shutil.py, line 247, in rmtree rmtree(fullname, ignore_errors, onerror) File C:\Python27\lib\shutil.py, line 247, in rmtree rmtree(fullname, ignore_errors, onerror) File C:\Python27\lib\shutil.py, line 252, in rmtree onerror(os.remove, fullname, sys.exc_info()) File C:\Python27\lib\shutil.py, line 250, in rmtree os.remove(fullname) WindowsError: [Error 5] Access is denied: 'c:\\temp\\dtest-4rxq2i\\test\\node1\\commitlogs\\CommitLog-5-1431969131917.log' {noformat} Cascading error: implication is that tests aren't shutting down correctly and subsequent tests cannot start: {noformat} 06:00:20 ERROR: test_incr_decr_super_remove (thrift_tests.TestMutations) 06:00:20 -- 06:00:20 Traceback (most recent call last): 06:00:20 File D:\jenkins\workspace\trunk_dtest_win32\cassandra-dtest\thrift_tests.py, line 55, in setUp 06:00:20 cluster.start() 06:00:20 File build\bdist.win-amd64\egg\ccmlib\cluster.py, line 249, in start 06:00:20 p = node.start(update_pid=False, jvm_args=jvm_args, profile_options=profile_options) 06:00:20 File build\bdist.win-amd64\egg\ccmlib\node.py, line 457, in start 06:00:20 common.check_socket_available(itf) 06:00:20 File build\bdist.win-amd64\egg\ccmlib\common.py, line 341, in check_socket_available 06:00:20 raise UnavailableSocketError(Inet address %s:%s is not available: %s % (addr, port, msg)) 06:00:20 UnavailableSocketError: Inet address 127.0.0.1:9042 is not available: [Errno 10013] An attempt was made to access a socket in a way forbidden by its access permissions 06:00:20 begin captured logging 06:00:20 dtest: DEBUG: removing ccm cluster test at: d:\temp\dtest-a5iny5 06:00:20 dtest: DEBUG: cluster ccm directory: d:\temp\dtest-dalzcy 06:00:20 - end captured logging - {noformat} I've also seen (and am debugging) an error where a node just fails to start via ccm. I'll update this ticket with PR's to dtest or other observations of interest. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-9493) Integrate latest 2.2 Java Driver
[ https://issues.apache.org/jira/browse/CASSANDRA-9493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14561731#comment-14561731 ] Jonathan Ellis commented on CASSANDRA-9493: --- ... sounds like we might hit our rc first, so let's not plan on waiting for an official release from Olivier et al. Integrate latest 2.2 Java Driver Key: CASSANDRA-9493 URL: https://issues.apache.org/jira/browse/CASSANDRA-9493 Project: Cassandra Issue Type: Task Reporter: Robert Stupp Fix For: 2.2.0 rc1 We need some functionality from the Java Driver 2.2 for C* 2.2 - especially for UDFs. Related Java Driver tickets: [JAVA-572 - protocol V4|https://datastax-oss.atlassian.net/browse/JAVA-572] [JAVA-783 - V4 enum constant|https://datastax-oss.atlassian.net/browse/JAVA-783] [JAVA-404 - date + time|https://datastax-oss.atlassian.net/browse/JAVA-404] [JAVA-786 - smallint + tinyint|https://datastax-oss.atlassian.net/browse/JAVA-786] -- This message was sent by Atlassian JIRA (v6.3.4#6332)