[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990944#comment-15990944 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/4/17 4:53 AM: -- ok..[10261|https://issues.apache.org/jira/browse/CASSANDRA-10261] actually fixed this issue, but since no test case for this scenario is provied, somewhere regression happened.. View tombstones generated by base row deletion should be regular row tombstone instead of shadowable row tombstone, but unfortunately in this case, they are created as shadowable... The regression maybe happened here [11475|https://issues.apache.org/jira/browse/CASSANDRA-11475] will try to fix it this week.. was (Author: jasonstack): ok..[10261|https://issues.apache.org/jira/browse/CASSANDRA-10261] actually fixed this issue, but since no test case for this scenario is provied, somewhere regression happened.. View tombstones generated by base row deletion should be regular tombstone instead of shadowable tombstone, but unfortunately in this case, they are created as shadowable... The regression maybe happened here [11475|https://issues.apache.org/jira/browse/CASSANDRA-11475] will try to fix it this week.. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994766#comment-15994766 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/4/17 4:52 AM: -- Thanks. I didn't think about compaction with sub-group deleted cell + shadowable row tombstone: deleted cells should be kept even if there is more recent shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone plus shadowable should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. was (Author: jasonstack): Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is more recent shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone plus shadowable should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-10540) RangeAwareCompaction
[ https://issues.apache.org/jira/browse/CASSANDRA-10540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15996150#comment-15996150 ] Cameron Zemek commented on CASSANDRA-10540: --- I have found one issue with the code. It states "To avoid getting very many tiny sstables in the per-range strategies, we keep them outside the strategy until the estimated size of a range-sstable is larger than 'min_range_sstable_size_in_mb'. (estimation usually gets within a few % of the actual value)." However RangeAwareCompactionStrategy::addSSTable does not check that the sstable meets the minimum size. This is potentially an issue with repairs that stream sections of sstables or if memtable only includes a single token range on flush. On a different note, I notice the performance testing so far as looked at write amplification. I suspect RangeAwareCompaction could also improve read performance due to partitions more likely to exist in less sstables (ie.. reduces the sstables per read). It would be interesting to see SSTable leaders for partitions with STCS vs RangeAwareCompaction + STCS. Can get list of sstable leaders with ic-pstats tool have open sourced here, https://github.com/instaclustr/cassandra-sstable-tools > RangeAwareCompaction > > > Key: CASSANDRA-10540 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10540 > Project: Cassandra > Issue Type: New Feature >Reporter: Marcus Eriksson >Assignee: Marcus Eriksson > Labels: compaction, lcs, vnodes > Fix For: 4.x > > > Broken out from CASSANDRA-6696, we should split sstables based on ranges > during compaction. > Requirements; > * dont create tiny sstables - keep them bunched together until a single vnode > is big enough (configurable how big that is) > * make it possible to run existing compaction strategies on the per-range > sstables > We should probably add a global compaction strategy parameter that states > whether this should be enabled or not. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13236) corrupt flag error after upgrade from 2.2 to 3.0.10
[ https://issues.apache.org/jira/browse/CASSANDRA-13236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeff Jirsa updated CASSANDRA-13236: --- Priority: Critical (was: Major) > corrupt flag error after upgrade from 2.2 to 3.0.10 > --- > > Key: CASSANDRA-13236 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13236 > Project: Cassandra > Issue Type: Bug > Environment: cassandra 3.0.10 >Reporter: ingard mevåg >Assignee: Sam Tunnicliffe >Priority: Critical > Fix For: 3.0.x, 3.11.x > > > After upgrade from 2.2.5 to 3.0.9/10 we're getting a bunch of errors like > this: > {code} > ERROR [SharedPool-Worker-1] 2017-02-17 12:58:43,859 Message.java:617 - > Unexpected exception during request; channel = [id: 0xa8b98684, > /10.0.70.104:56814 => /10.0.80.24:9042] > java.io.IOError: java.io.IOException: Corrupt flags value for unfiltered > partition (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:222) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:210) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:129) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processPartition(SelectStatement.java:749) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:711) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:400) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:265) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:224) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:76) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:206) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:487) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:464) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.messages.ExecuteMessage.execute(ExecuteMessage.java:130) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:513) > [apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:407) > [apache-cassandra-3.0.10.jar:3.0.10] > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.access$700(AbstractChannelHandlerContext.java:32) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext$8.run(AbstractChannelHandlerContext.java:324) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_72] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > [apache-cassandra-3.0.10.jar:3.0.10] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [apache-cassandra-3.0.10.jar:3.0.10] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_72] > Caused by: java.io.IOException: Corrupt flags value for unfiltered partition > (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredSerializer.deserialize(UnfilteredSerializer.java:374) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:217) > ~[apache-cassandra-3.0.10.jar:3.0.10] > ... 23 common frames
[jira] [Updated] (CASSANDRA-12088) Upgrade corrupts SSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-12088?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeff Jirsa updated CASSANDRA-12088: --- Fix Version/s: 3.11.x 3.0.x > Upgrade corrupts SSTables > - > > Key: CASSANDRA-12088 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12088 > Project: Cassandra > Issue Type: Bug > Environment: OS: CentOS release 6.7 (Final) > Cassandra version: 2.1, 3.7 >Reporter: Chandra Sekar S >Assignee: Sam Tunnicliffe >Priority: Critical > Fix For: 3.0.x, 3.11.x > > > When upgrading from 2.0 to 3.7, table was corrupted and an exception occurs > when performing LWT from Java Driver. The server was upgraded from 2.0 to 2.1 > and then to 3.7. "nodetool upgradesstables" was run after each step of > upgrade. > Schema of affected table: > {code} > CREATE TABLE payment.tbl ( > c1 text, > c2 timestamp, > c3 text, > s1 timestamp static, > s2 int static, > c4 text, > PRIMARY KEY (c1, c2) > ) WITH CLUSTERING ORDER BY (c2 ASC) > AND bloom_filter_fp_chance = 0.01 > AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} > AND comment = '' > AND compaction = {'class': > 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', > 'max_threshold': '32', 'min_threshold': '4'} > AND compression = {'chunk_length_in_kb': '64', 'class': > 'org.apache.cassandra.io.compress.LZ4Compressor'} > AND crc_check_chance = 1.0 > AND dclocal_read_repair_chance = 0.1 > AND default_time_to_live = 0 > AND gc_grace_seconds = 864000 > AND max_index_interval = 2048 > AND memtable_flush_period_in_ms = 0 > AND min_index_interval = 128 > AND read_repair_chance = 0.0 > AND speculative_retry = '99PERCENTILE'; > {code} > Insertion that fails: > {code:java} > insert into tbl (c1, s2) values ('value', 0) if not exists; > {code} > The stack trace in system.log of cassandra server, > {code} > INFO [HANDSHAKE-maven-repo.corp.zeta.in/10.1.5.13] 2016-06-24 22:23:14,887 > OutboundTcpConnection.java:514 - Handshaking version with > maven-repo.corp.zeta.in/10.1.5.13 > ERROR [MessagingService-Incoming-/10.1.5.13] 2016-06-24 22:23:14,889 > CassandraDaemon.java:217 - Exception in thread > Thread[MessagingService-Incoming-/10.1.5.13,5,main] > java.io.IOError: java.io.IOException: Corrupt flags value for unfiltered > partition (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:224) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:212) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.partitions.PartitionUpdate$PartitionUpdateSerializer.deserialize30(PartitionUpdate.java:681) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.partitions.PartitionUpdate$PartitionUpdateSerializer.deserialize(PartitionUpdate.java:642) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.Commit$CommitSerializer.deserialize(Commit.java:131) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.PrepareResponse$PrepareResponseSerializer.deserialize(PrepareResponse.java:97) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.PrepareResponse$PrepareResponseSerializer.deserialize(PrepareResponse.java:66) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at org.apache.cassandra.net.MessageIn.read(MessageIn.java:114) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:190) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.receiveMessages(IncomingTcpConnection.java:178) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:92) > ~[apache-cassandra-3.7.0.jar:3.7.0] > Caused by: java.io.IOException: Corrupt flags value for unfiltered partition > (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredSerializer.deserialize(UnfilteredSerializer.java:380) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:219) > ~[apache-cassandra-3.7.0.jar:3.7.0] > ... 11 common frames omitted > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13236) corrupt flag error after upgrade from 2.2 to 3.0.10
[ https://issues.apache.org/jira/browse/CASSANDRA-13236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeff Jirsa updated CASSANDRA-13236: --- Fix Version/s: 3.11.x 3.0.x > corrupt flag error after upgrade from 2.2 to 3.0.10 > --- > > Key: CASSANDRA-13236 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13236 > Project: Cassandra > Issue Type: Bug > Environment: cassandra 3.0.10 >Reporter: ingard mevåg >Assignee: Sam Tunnicliffe > Fix For: 3.0.x, 3.11.x > > > After upgrade from 2.2.5 to 3.0.9/10 we're getting a bunch of errors like > this: > {code} > ERROR [SharedPool-Worker-1] 2017-02-17 12:58:43,859 Message.java:617 - > Unexpected exception during request; channel = [id: 0xa8b98684, > /10.0.70.104:56814 => /10.0.80.24:9042] > java.io.IOError: java.io.IOException: Corrupt flags value for unfiltered > partition (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:222) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:210) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:129) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processPartition(SelectStatement.java:749) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:711) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:400) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:265) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:224) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:76) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:206) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:487) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:464) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.messages.ExecuteMessage.execute(ExecuteMessage.java:130) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:513) > [apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:407) > [apache-cassandra-3.0.10.jar:3.0.10] > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.access$700(AbstractChannelHandlerContext.java:32) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext$8.run(AbstractChannelHandlerContext.java:324) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_72] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > [apache-cassandra-3.0.10.jar:3.0.10] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [apache-cassandra-3.0.10.jar:3.0.10] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_72] > Caused by: java.io.IOException: Corrupt flags value for unfiltered partition > (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredSerializer.deserialize(UnfilteredSerializer.java:374) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:217) > ~[apache-cassandra-3.0.10.jar:3.0.10] > ... 23 common frames omitted > {code}
[jira] [Comment Edited] (CASSANDRA-8780) cassandra-stress should support multiple table operations
[ https://issues.apache.org/jira/browse/CASSANDRA-8780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990062#comment-15990062 ] Ben Slater edited comment on CASSANDRA-8780 at 5/4/17 2:10 AM: --- Turned out to be a one-liner from when I rebased. One the plus side, I know how to run dtests now. Updated patch attached. was (Author: slater_ben): Turned out to be a one-liners from when I rebased. One the plus side, I know how to run dtests now. Updated patch attached. > cassandra-stress should support multiple table operations > - > > Key: CASSANDRA-8780 > URL: https://issues.apache.org/jira/browse/CASSANDRA-8780 > Project: Cassandra > Issue Type: Improvement > Components: Tools >Reporter: Benedict >Assignee: Ben Slater > Labels: stress > Fix For: 3.11.x > > Attachments: 8780-trunk-v3.patch > > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995871#comment-15995871 ] Jeff Jirsa edited comment on CASSANDRA-13486 at 5/3/17 11:55 PM: - {quote} As this is a feature based on a proprietary technology and the implementation seems to play nicely with the plugable row cache API, I wonder if it wouldn't make more sense to bundle this as separate jar for interested users. {quote} Perhaps, though where would we identify it? How would users find it? Edit: we have GCE and AWS snitches in tree, why would this be any different? It's a public extension of a public interface usable by a portion of the userbase. As long as it's using the public API, it seems reasonable to be in tree? {quote} The license of capiblock.jar is Apache License, Version 2.0. {quote} We typically include the license in [lib/licenses|https://github.com/apache/cassandra/tree/trunk/lib/licenses] to record this fact. {quote} About the plugin approach, my impression is that Cassandra has not been so pluggable, and a few exceptions are row cache, metrics, etc. (aside from a couple of unsuccessful proposals like pluggable storage; correct me if I am wrong.) Is it a direction of Cassandra to make it more pluggable if it makes sense and to keep and support the plugin APIs? {quote} Cassandra has many pluggable components including (but not limited to): - Replication strategy - Seed provider - Compaction strategy - Endpoint Snitch - Secondary indexes - Authentication / Authorization providers What Cassandra doesn't have is a good way to promote or market or support third party pluggable implementations of these components if they're not in tree, and we don't have a way to test / verify them if they are in tree (if someone wanted to change the interface for some future version of Cassandra, none of the current committers have that hardware to verify that it works as intended). was (Author: jjirsa): {quote} As this is a feature based on a proprietary technology and the implementation seems to play nicely with the plugable row cache API, I wonder if it wouldn't make more sense to bundle this as separate jar for interested users. {quote} Perhaps, though where would we identify it? How would users find it? {quote} The license of capiblock.jar is Apache License, Version 2.0. {quote} We typically include the license in [lib/licenses|https://github.com/apache/cassandra/tree/trunk/lib/licenses] to record this fact. {quote} About the plugin approach, my impression is that Cassandra has not been so pluggable, and a few exceptions are row cache, metrics, etc. (aside from a couple of unsuccessful proposals like pluggable storage; correct me if I am wrong.) Is it a direction of Cassandra to make it more pluggable if it makes sense and to keep and support the plugin APIs? {quote} Cassandra has many pluggable components including (but not limited to): - Replication strategy - Seed provider - Compaction strategy - Endpoint Snitch - Secondary indexes - Authentication / Authorization providers What Cassandra doesn't have is a good way to promote or market or support third party pluggable implementations of these components if they're not in tree, and we don't have a way to test / verify them if they are in tree (if someone wanted to change the interface for some future version of Cassandra, none of the current committers have that hardware to verify that it works as intended). > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995871#comment-15995871 ] Jeff Jirsa commented on CASSANDRA-13486: {quote} As this is a feature based on a proprietary technology and the implementation seems to play nicely with the plugable row cache API, I wonder if it wouldn't make more sense to bundle this as separate jar for interested users. {quote} Perhaps, though where would we identify it? How would users find it? {quote} The license of capiblock.jar is Apache License, Version 2.0. {quote} We typically include the license in [lib/licenses|https://github.com/apache/cassandra/tree/trunk/lib/licenses] to record this fact. {quote} About the plugin approach, my impression is that Cassandra has not been so pluggable, and a few exceptions are row cache, metrics, etc. (aside from a couple of unsuccessful proposals like pluggable storage; correct me if I am wrong.) Is it a direction of Cassandra to make it more pluggable if it makes sense and to keep and support the plugin APIs? {quote} Cassandra has many pluggable components including (but not limited to): - Replication strategy - Seed provider - Compaction strategy - Endpoint Snitch - Secondary indexes - Authentication / Authorization providers What Cassandra doesn't have is a good way to promote or market or support third party pluggable implementations of these components if they're not in tree, and we don't have a way to test / verify them if they are in tree (if someone wanted to change the interface for some future version of Cassandra, none of the current committers have that hardware to verify that it works as intended). > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13163) NPE in StorageService.excise
[ https://issues.apache.org/jira/browse/CASSANDRA-13163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13163: --- Fix Version/s: (was: 3.11.x) (was: 4.x) (was: 3.0.x) 4.0 3.11.0 3.0.14 > NPE in StorageService.excise > > > Key: CASSANDRA-13163 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13163 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg > Fix For: 3.0.14, 3.11.0, 4.0 > > > {code} > private void excise(Collection tokens, InetAddress endpoint) > { > logger.info("Removing tokens {} for {}", tokens, endpoint); > if (tokenMetadata.isMember(endpoint)) > HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); > {code} > The check for TMD.isMember() is not enough to guarantee that TMD.getHostId() > will not return null. If HintsService.excise() is called with null you get an > NPE in a map lookup. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13119) dtest failure upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test
[ https://issues.apache.org/jira/browse/CASSANDRA-13119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13119: --- Resolution: Fixed Fix Version/s: (was: 3.11.x) (was: 4.x) (was: 3.0.x) (was: 2.2.x) 2.2.10 Status: Resolved (was: Ready to Commit) Committed as [6c5ea192c75072ba3f7369dfc23592d6ed0c319f|https://github.com/apache/cassandra/commit/6c5ea192c75072ba3f7369dfc23592d6ed0c319f] > dtest failure > upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test > --- > > Key: CASSANDRA-13119 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13119 > Project: Cassandra > Issue Type: Bug > Components: Core, Testing >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg >Priority: Critical > Fix For: 2.2.10 > > > The test complains about unreadable sstables version ka and lb during upgrade > which is 2.1 and 2.2. These tables look like system tables not user tables. > I looked and I can't find any place where system tables are upgraded on > upgrade. You can specify them explicitly by name with nodetool, but nodetool > defaults to only upgrading user tables and doesn't have a flag to upgrade all > tables. > These tables probably need to be removed if unused or upgraded if in use. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13163) NPE in StorageService.excise
[ https://issues.apache.org/jira/browse/CASSANDRA-13163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995711#comment-15995711 ] Ariel Weisberg edited comment on CASSANDRA-13163 at 5/3/17 10:18 PM: - Committed as [6ed9134336bb48d04284cefd303d8374ed901c0a|https://github.com/apache/cassandra/commit/6ed9134336bb48d04284cefd303d8374ed901c0a] was (Author: aweisberg): Committed as [18b77c3e0b8988956e42b1362eb350dfada27eb0|https://github.com/apache/cassandra/commit/18b77c3e0b8988956e42b1362eb350dfada27eb0] > NPE in StorageService.excise > > > Key: CASSANDRA-13163 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13163 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg > Fix For: 3.0.x, 3.11.x, 4.x > > > {code} > private void excise(Collection tokens, InetAddress endpoint) > { > logger.info("Removing tokens {} for {}", tokens, endpoint); > if (tokenMetadata.isMember(endpoint)) > HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); > {code} > The check for TMD.isMember() is not enough to guarantee that TMD.getHostId() > will not return null. If HintsService.excise() is called with null you get an > NPE in a map lookup. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13119) dtest failure upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test
[ https://issues.apache.org/jira/browse/CASSANDRA-13119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13119: --- Status: Ready to Commit (was: Patch Available) > dtest failure > upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test > --- > > Key: CASSANDRA-13119 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13119 > Project: Cassandra > Issue Type: Bug > Components: Core, Testing >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg >Priority: Critical > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > > The test complains about unreadable sstables version ka and lb during upgrade > which is 2.1 and 2.2. These tables look like system tables not user tables. > I looked and I can't find any place where system tables are upgraded on > upgrade. You can specify them explicitly by name with nodetool, but nodetool > defaults to only upgrading user tables and doesn't have a flag to upgrade all > tables. > These tables probably need to be removed if unused or upgraded if in use. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995796#comment-15995796 ] Duarte Nunes commented on CASSANDRA-13409: -- I think that's about right! Unfortunately, I'm not very familiar with the 3.X storage format, so I can't say whether it really needs to change or not. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[09/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d56c64a8 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d56c64a8 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d56c64a8 Branch: refs/heads/trunk Commit: d56c64a883f70749effc8da11f53e00385a3128a Parents: 8b97a91 0f118a9 Author: Ariel WeisbergAuthored: Wed May 3 18:14:45 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:14:45 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[10/10] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/931e3a4d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/931e3a4d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/931e3a4d Branch: refs/heads/trunk Commit: 931e3a4d3b4fb0cf7d57baa7a52f9009c39ad50b Parents: 2f9de24 d56c64a Author: Ariel WeisbergAuthored: Wed May 3 18:15:07 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:15:07 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d56c64a8 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d56c64a8 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d56c64a8 Branch: refs/heads/cassandra-3.11 Commit: d56c64a883f70749effc8da11f53e00385a3128a Parents: 8b97a91 0f118a9 Author: Ariel WeisbergAuthored: Wed May 3 18:14:45 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:14:45 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[07/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0f118a93 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0f118a93 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0f118a93 Branch: refs/heads/trunk Commit: 0f118a93f95161aae4bbc75c31c4b9cf9c6225ec Parents: 6ed9134 6c5ea19 Author: Ariel WeisbergAuthored: Wed May 3 18:14:30 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:14:30 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[02/10] cassandra git commit: nodetool upgradesstables should upgrade system tables.
nodetool upgradesstables should upgrade system tables. Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13119 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6c5ea192 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6c5ea192 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6c5ea192 Branch: refs/heads/cassandra-3.0 Commit: 6c5ea192c75072ba3f7369dfc23592d6ed0c319f Parents: 868be9c Author: Ariel WeisbergAuthored: Fri Jan 27 17:47:33 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 18:13:23 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 6ffddc0..bb2e3ba 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.10 + * nodetool upgradesstables should upgrade system tables (CASSANDRA-13119) * Avoid starting gossiper in RemoveTest (CASSANDRA-13407) * Fix weightedSize() for row-cache reported by JMX and NodeTool (CASSANDRA-13393) * Fix JVM metric paths (CASSANDRA-13103) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java -- diff --git a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java index 596f353..fcb1ab2 100644 --- a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java +++ b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java @@ -44,7 +44,7 @@ public class UpgradeSSTable extends NodeToolCmd @Override public void execute(NodeProbe probe) { -List keyspaces = parseOptionalKeyspace(args, probe); +List keyspaces = parseOptionalKeyspace(args, probe, true); String[] cfnames = parseOptionalColumnFamilies(args); for (String keyspace : keyspaces) @@ -58,4 +58,4 @@ public class UpgradeSSTable extends NodeToolCmd } } } -} \ No newline at end of file +} - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[04/10] cassandra git commit: nodetool upgradesstables should upgrade system tables.
nodetool upgradesstables should upgrade system tables. Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13119 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6c5ea192 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6c5ea192 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6c5ea192 Branch: refs/heads/trunk Commit: 6c5ea192c75072ba3f7369dfc23592d6ed0c319f Parents: 868be9c Author: Ariel WeisbergAuthored: Fri Jan 27 17:47:33 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 18:13:23 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 6ffddc0..bb2e3ba 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.10 + * nodetool upgradesstables should upgrade system tables (CASSANDRA-13119) * Avoid starting gossiper in RemoveTest (CASSANDRA-13407) * Fix weightedSize() for row-cache reported by JMX and NodeTool (CASSANDRA-13393) * Fix JVM metric paths (CASSANDRA-13103) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java -- diff --git a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java index 596f353..fcb1ab2 100644 --- a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java +++ b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java @@ -44,7 +44,7 @@ public class UpgradeSSTable extends NodeToolCmd @Override public void execute(NodeProbe probe) { -List keyspaces = parseOptionalKeyspace(args, probe); +List keyspaces = parseOptionalKeyspace(args, probe, true); String[] cfnames = parseOptionalColumnFamilies(args); for (String keyspace : keyspaces) @@ -58,4 +58,4 @@ public class UpgradeSSTable extends NodeToolCmd } } } -} \ No newline at end of file +} - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[06/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0f118a93 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0f118a93 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0f118a93 Branch: refs/heads/cassandra-3.0 Commit: 0f118a93f95161aae4bbc75c31c4b9cf9c6225ec Parents: 6ed9134 6c5ea19 Author: Ariel WeisbergAuthored: Wed May 3 18:14:30 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:14:30 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[03/10] cassandra git commit: nodetool upgradesstables should upgrade system tables.
nodetool upgradesstables should upgrade system tables. Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13119 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6c5ea192 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6c5ea192 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6c5ea192 Branch: refs/heads/cassandra-3.11 Commit: 6c5ea192c75072ba3f7369dfc23592d6ed0c319f Parents: 868be9c Author: Ariel WeisbergAuthored: Fri Jan 27 17:47:33 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 18:13:23 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 6ffddc0..bb2e3ba 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.10 + * nodetool upgradesstables should upgrade system tables (CASSANDRA-13119) * Avoid starting gossiper in RemoveTest (CASSANDRA-13407) * Fix weightedSize() for row-cache reported by JMX and NodeTool (CASSANDRA-13393) * Fix JVM metric paths (CASSANDRA-13103) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java -- diff --git a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java index 596f353..fcb1ab2 100644 --- a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java +++ b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java @@ -44,7 +44,7 @@ public class UpgradeSSTable extends NodeToolCmd @Override public void execute(NodeProbe probe) { -List keyspaces = parseOptionalKeyspace(args, probe); +List keyspaces = parseOptionalKeyspace(args, probe, true); String[] cfnames = parseOptionalColumnFamilies(args); for (String keyspace : keyspaces) @@ -58,4 +58,4 @@ public class UpgradeSSTable extends NodeToolCmd } } } -} \ No newline at end of file +} - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[01/10] cassandra git commit: nodetool upgradesstables should upgrade system tables.
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 868be9c28 -> 6c5ea192c refs/heads/cassandra-3.0 6ed913433 -> 0f118a93f refs/heads/cassandra-3.11 8b97a91bf -> d56c64a88 refs/heads/trunk 2f9de24f0 -> 931e3a4d3 nodetool upgradesstables should upgrade system tables. Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13119 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6c5ea192 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6c5ea192 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6c5ea192 Branch: refs/heads/cassandra-2.2 Commit: 6c5ea192c75072ba3f7369dfc23592d6ed0c319f Parents: 868be9c Author: Ariel WeisbergAuthored: Fri Jan 27 17:47:33 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 18:13:23 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 6ffddc0..bb2e3ba 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.10 + * nodetool upgradesstables should upgrade system tables (CASSANDRA-13119) * Avoid starting gossiper in RemoveTest (CASSANDRA-13407) * Fix weightedSize() for row-cache reported by JMX and NodeTool (CASSANDRA-13393) * Fix JVM metric paths (CASSANDRA-13103) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6c5ea192/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java -- diff --git a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java index 596f353..fcb1ab2 100644 --- a/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java +++ b/src/java/org/apache/cassandra/tools/nodetool/UpgradeSSTable.java @@ -44,7 +44,7 @@ public class UpgradeSSTable extends NodeToolCmd @Override public void execute(NodeProbe probe) { -List keyspaces = parseOptionalKeyspace(args, probe); +List keyspaces = parseOptionalKeyspace(args, probe, true); String[] cfnames = parseOptionalColumnFamilies(args); for (String keyspace : keyspaces) @@ -58,4 +58,4 @@ public class UpgradeSSTable extends NodeToolCmd } } } -} \ No newline at end of file +} - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[05/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0f118a93 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0f118a93 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0f118a93 Branch: refs/heads/cassandra-3.11 Commit: 0f118a93f95161aae4bbc75c31c4b9cf9c6225ec Parents: 6ed9134 6c5ea19 Author: Ariel WeisbergAuthored: Wed May 3 18:14:30 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:14:30 2017 -0400 -- -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13493) RPM Init: Service startup ordering
[ https://issues.apache.org/jira/browse/CASSANDRA-13493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13493: -- Attachment: 0001-RPM-Init-ordering-start-after-network-and-name-servi.patch > RPM Init: Service startup ordering > -- > > Key: CASSANDRA-13493 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13493 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Fix For: 3.11.0 > > Attachments: > 0001-RPM-Init-ordering-start-after-network-and-name-servi.patch > > > Currently, Cassandra is setup to start _before_ network and name services > come up, and setup to be town down _after_ them, dangerously close to the > final shutdown call. > A service daemon which may use network-based storage, and serves requests > over a network needs to start clearly after network and network mounts, and > come down clearly after. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13493) RPM Init: Service startup ordering
[ https://issues.apache.org/jira/browse/CASSANDRA-13493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13493: -- Reviewer: Michael Shuler Fix Version/s: 3.11.0 Status: Patch Available (was: Open) > RPM Init: Service startup ordering > -- > > Key: CASSANDRA-13493 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13493 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Fix For: 3.11.0 > > Attachments: > 0001-RPM-Init-ordering-start-after-network-and-name-servi.patch > > > Currently, Cassandra is setup to start _before_ network and name services > come up, and setup to be town down _after_ them, dangerously close to the > final shutdown call. > A service daemon which may use network-based storage, and serves requests > over a network needs to start clearly after network and network mounts, and > come down clearly after. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13492) RPM Init: don't attempt to start if it's running
[ https://issues.apache.org/jira/browse/CASSANDRA-13492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13492: -- Reviewer: Michael Shuler Fix Version/s: 3.11.0 Status: Patch Available (was: Open) > RPM Init: don't attempt to start if it's running > > > Key: CASSANDRA-13492 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13492 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Fix For: 3.11.0 > > Attachments: 0002-RPM-Init-avoid-starting-cassandra-if-it-is-up.patch > > > We don't check whether Cassandra is running. Attempts to start Cassandra when > it's already running overwrite the pidfile, make a confusing mess of > logfiles, _fail to start, as the port is taken_; and then the init script > cannot bring the first Cassandra process down because the init file has been > clobbered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into HEAD
Merge branch 'cassandra-3.11' into HEAD Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2f9de24f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2f9de24f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2f9de24f Branch: refs/heads/trunk Commit: 2f9de24f0237ec217c461c376f844783c96420af Parents: ed4a7c5 8b97a91 Author: Ariel WeisbergAuthored: Wed May 3 18:01:21 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:02:05 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2f9de24f/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2f9de24f/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[1/6] cassandra git commit: CASSANDRA-13163, fix NPE in StorageService.excise() [Forced Update!]
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 18b77c3e0 -> 6ed913433 (forced update) refs/heads/cassandra-3.11 efd3ab121 -> 8b97a91bf (forced update) refs/heads/trunk 42655387d -> 2f9de24f0 (forced update) CASSANDRA-13163, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13163 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6ed91343 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6ed91343 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6ed91343 Branch: refs/heads/cassandra-3.0 Commit: 6ed9134336bb48d04284cefd303d8374ed901c0a Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:57:24 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[2/6] cassandra git commit: CASSANDRA-13163, fix NPE in StorageService.excise()
CASSANDRA-13163, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13163 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6ed91343 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6ed91343 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6ed91343 Branch: refs/heads/cassandra-3.11 Commit: 6ed9134336bb48d04284cefd303d8374ed901c0a Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:57:24 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8b97a91b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8b97a91b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8b97a91b Branch: refs/heads/cassandra-3.11 Commit: 8b97a91bfe2674430241df16ef4a073feac114c1 Parents: 1876588 6ed9134 Author: Ariel WeisbergAuthored: Wed May 3 17:59:06 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:00:03 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b97a91b/CHANGES.txt -- diff --cc CHANGES.txt index 64e9e50,17a11ab..6603911 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b97a91b/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8b97a91b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8b97a91b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8b97a91b Branch: refs/heads/trunk Commit: 8b97a91bfe2674430241df16ef4a073feac114c1 Parents: 1876588 6ed9134 Author: Ariel WeisbergAuthored: Wed May 3 17:59:06 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 18:00:03 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b97a91b/CHANGES.txt -- diff --cc CHANGES.txt index 64e9e50,17a11ab..6603911 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/8b97a91b/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[3/6] cassandra git commit: CASSANDRA-13163, fix NPE in StorageService.excise()
CASSANDRA-13163, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13163 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6ed91343 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6ed91343 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6ed91343 Branch: refs/heads/trunk Commit: 6ed9134336bb48d04284cefd303d8374ed901c0a Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:57:24 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/6ed91343/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13492) RPM Init: don't attempt to start if it's running
[ https://issues.apache.org/jira/browse/CASSANDRA-13492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13492: -- Attachment: 0002-RPM-Init-avoid-starting-cassandra-if-it-is-up.patch > RPM Init: don't attempt to start if it's running > > > Key: CASSANDRA-13492 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13492 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Attachments: 0002-RPM-Init-avoid-starting-cassandra-if-it-is-up.patch > > > We don't check whether Cassandra is running. Attempts to start Cassandra when > it's already running overwrite the pidfile, make a confusing mess of > logfiles, _fail to start, as the port is taken_; and then the init script > cannot bring the first Cassandra process down because the init file has been > clobbered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Created] (CASSANDRA-13493) RPM Init: Service startup ordering
martin a langhoff created CASSANDRA-13493: - Summary: RPM Init: Service startup ordering Key: CASSANDRA-13493 URL: https://issues.apache.org/jira/browse/CASSANDRA-13493 Project: Cassandra Issue Type: Sub-task Reporter: martin a langhoff Currently, Cassandra is setup to start _before_ network and name services come up, and setup to be town down _after_ them, dangerously close to the final shutdown call. A service daemon which may use network-based storage, and serves requests over a network needs to start clearly after network and network mounts, and come down clearly after. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Created] (CASSANDRA-13492) RPM Init: don't attempt to start if it's running
martin a langhoff created CASSANDRA-13492: - Summary: RPM Init: don't attempt to start if it's running Key: CASSANDRA-13492 URL: https://issues.apache.org/jira/browse/CASSANDRA-13492 Project: Cassandra Issue Type: Sub-task Reporter: martin a langhoff We don't check whether Cassandra is running. Attempts to start Cassandra when it's already running overwrite the pidfile, make a confusing mess of logfiles, _fail to start, as the port is taken_; and then the init script cannot bring the first Cassandra process down because the init file has been clobbered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Created] (CASSANDRA-13491) Emit metrics for JVM safepoint pause
Simon Zhou created CASSANDRA-13491: -- Summary: Emit metrics for JVM safepoint pause Key: CASSANDRA-13491 URL: https://issues.apache.org/jira/browse/CASSANDRA-13491 Project: Cassandra Issue Type: New Feature Reporter: Simon Zhou GC pause is not the only source of latency from JVM. In one of our recent production issues, the metrics for GC looks good (some >200ms and longest 500ms) but GC logs show periodic pauses like this: {code} 2017-04-26T01:51:29.420+: 352535.998: Total time for which application threads were stopped: 19.8835870 seconds, Stopping threads took: 19.7842073 seconds {code} This huge delay should be JVM malfunction but it caused some requests timeout. So I'm suggesting to add support for safepoint pause for better observability. Two problems though: 1. This depends on JVM. Some JVMs may not expose these internal MBeans. This is actually the same case for existing GCInspector. 2. For Hotspot, it has HotspotRuntime as an internal MBean so that we can get safepoint pause. However, there is no notification support for that. I got error "MBean sun.management:type=HotspotRuntime does not implement javax.management.NotificationBroadcaster" when trying to register a listener. This means we will need to pull the safepoint pauses from HotspotRuntime periodically. Reference: http://blog.ragozin.info/2012/10/safepoints-in-hotspot-jvm.html Anyone think we should support this? -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13488) token distribution in multi-dc
[ https://issues.apache.org/jira/browse/CASSANDRA-13488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995744#comment-15995744 ] Jeremy Hanna commented on CASSANDRA-13488: -- Replication is datacenter based, so each datacenter has to have the whole token range. What do you mean by duplication of token ranges? Like the actual end token ids for each range? > token distribution in multi-dc > -- > > Key: CASSANDRA-13488 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13488 > Project: Cassandra > Issue Type: Wish > Environment: QA >Reporter: vasu >Priority: Minor > > Hi , > I have a question regarding token distribution in muti-dc setup. > We are having multi-dc (DC1+DC2) setup with V-nodes enabled. > How token ranges will be distributed in cluster ? > Is complete cluster has completed one token range ? > Or each DC has complete token range? -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13163) NPE in StorageService.excise
[ https://issues.apache.org/jira/browse/CASSANDRA-13163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13163: --- Resolution: Fixed Status: Resolved (was: Ready to Commit) Committed as [18b77c3e0b8988956e42b1362eb350dfada27eb0|https://github.com/apache/cassandra/commit/18b77c3e0b8988956e42b1362eb350dfada27eb0] > NPE in StorageService.excise > > > Key: CASSANDRA-13163 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13163 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg > Fix For: 3.0.x, 3.11.x, 4.x > > > {code} > private void excise(Collection tokens, InetAddress endpoint) > { > logger.info("Removing tokens {} for {}", tokens, endpoint); > if (tokenMetadata.isMember(endpoint)) > HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); > {code} > The check for TMD.isMember() is not enough to guarantee that TMD.getHostId() > will not return null. If HintsService.excise() is called with null you get an > NPE in a map lookup. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/efd3ab12 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/efd3ab12 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/efd3ab12 Branch: refs/heads/cassandra-3.11 Commit: efd3ab121074a0fda71848800e76212cc8171351 Parents: 1876588 18b77c3e Author: Ariel WeisbergAuthored: Wed May 3 17:08:17 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 17:08:17 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/efd3ab12/CHANGES.txt -- diff --cc CHANGES.txt index 64e9e50,17a11ab..6603911 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/efd3ab12/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/42655387 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/42655387 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/42655387 Branch: refs/heads/trunk Commit: 42655387d761d31208a50d5061896d8f2055f8ca Parents: ed4a7c5 efd3ab1 Author: Ariel WeisbergAuthored: Wed May 3 17:08:33 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 17:08:33 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/42655387/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/42655387/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[3/6] cassandra git commit: CASSANDRA-13613, fix NPE in StorageService.excise()
CASSANDRA-13613, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13613 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/18b77c3e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/18b77c3e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/18b77c3e Branch: refs/heads/trunk Commit: 18b77c3e0b8988956e42b1362eb350dfada27eb0 Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:05:07 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/efd3ab12 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/efd3ab12 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/efd3ab12 Branch: refs/heads/trunk Commit: efd3ab121074a0fda71848800e76212cc8171351 Parents: 1876588 18b77c3e Author: Ariel WeisbergAuthored: Wed May 3 17:08:17 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 17:08:17 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/efd3ab12/CHANGES.txt -- diff --cc CHANGES.txt index 64e9e50,17a11ab..6603911 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/efd3ab12/src/java/org/apache/cassandra/service/StorageService.java -- - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[1/6] cassandra git commit: CASSANDRA-13613, fix NPE in StorageService.excise()
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 617c8ebad -> 18b77c3e0 refs/heads/cassandra-3.11 187658861 -> efd3ab121 refs/heads/trunk ed4a7c5eb -> 42655387d CASSANDRA-13613, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13613 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/18b77c3e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/18b77c3e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/18b77c3e Branch: refs/heads/cassandra-3.0 Commit: 18b77c3e0b8988956e42b1362eb350dfada27eb0 Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:05:07 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[2/6] cassandra git commit: CASSANDRA-13613, fix NPE in StorageService.excise()
CASSANDRA-13613, fix NPE in StorageService.excise() Patch by Ariel Weisberg; Reviewed by Jason Brown for CASSANDRA-13613 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/18b77c3e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/18b77c3e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/18b77c3e Branch: refs/heads/cassandra-3.11 Commit: 18b77c3e0b8988956e42b1362eb350dfada27eb0 Parents: 617c8eb Author: Ariel WeisbergAuthored: Fri Jan 27 17:08:23 2017 -0500 Committer: Ariel Weisberg Committed: Wed May 3 17:05:07 2017 -0400 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 9ec6c95..17a11ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Fix NPE in StorageService.excise() (CASSANDRA-13163) * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) http://git-wip-us.apache.org/repos/asf/cassandra/blob/18b77c3e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 143b402..9bc046f 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2247,8 +2247,9 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { logger.info("Removing tokens {} for {}", tokens, endpoint); -if (tokenMetadata.isMember(endpoint)) -HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); +UUID hostId = tokenMetadata.getHostId(endpoint); +if (hostId != null && tokenMetadata.isMember(endpoint)) +HintsService.instance.excise(hostId); removeEndpoint(endpoint); tokenMetadata.removeEndpoint(endpoint); - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13488) token distribution in multi-dc
[ https://issues.apache.org/jira/browse/CASSANDRA-13488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995705#comment-15995705 ] vasu commented on CASSANDRA-13488: -- Each DC has complete token range means, then there will be a possibility for duplication of token ranges in complete cluster right? > token distribution in multi-dc > -- > > Key: CASSANDRA-13488 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13488 > Project: Cassandra > Issue Type: Wish > Environment: QA >Reporter: vasu >Priority: Minor > > Hi , > I have a question regarding token distribution in muti-dc setup. > We are having multi-dc (DC1+DC2) setup with V-nodes enabled. > How token ranges will be distributed in cluster ? > Is complete cluster has completed one token range ? > Or each DC has complete token range? -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13490) RPM Spec - disable binary check, improve readme instructions
[ https://issues.apache.org/jira/browse/CASSANDRA-13490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13490: -- Attachment: 0001-RPM-rpmbuild-tolerate-binaries-in-noarch-README-upda.patch > RPM Spec - disable binary check, improve readme instructions > > > Key: CASSANDRA-13490 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13490 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Fix For: 3.11.0 > > Attachments: > 0001-RPM-rpmbuild-tolerate-binaries-in-noarch-README-upda.patch > > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13265: --- Resolution: Fixed Fix Version/s: (was: 3.0.x) 4.0 3.11.0 3.0.14 Status: Resolved (was: Ready to Commit) Committed as [617c8ebadb6c4df99c35a913184760e82172b1f5|https://github.com/apache/cassandra/commit/617c8ebadb6c4df99c35a913184760e82172b1f5]. > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.14, 3.11.0, 4.0 > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13490) RPM Spec - disable binary check, improve readme instructions
[ https://issues.apache.org/jira/browse/CASSANDRA-13490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] martin a langhoff updated CASSANDRA-13490: -- Reviewer: Michael Shuler Fix Version/s: 3.11.0 Status: Patch Available (was: Open) > RPM Spec - disable binary check, improve readme instructions > > > Key: CASSANDRA-13490 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13490 > Project: Cassandra > Issue Type: Sub-task > Components: Packaging >Reporter: martin a langhoff > Fix For: 3.11.0 > > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995667#comment-15995667 ] Ariel Weisberg edited comment on CASSANDRA-13265 at 5/3/17 8:55 PM: Committed as [617c8ebadb6c4df99c35a913184760e82172b1f5|https://github.com/apache/cassandra/commit/617c8ebadb6c4df99c35a913184760e82172b1f5]. Thanks! was (Author: aweisberg): Committed as [617c8ebadb6c4df99c35a913184760e82172b1f5|https://github.com/apache/cassandra/commit/617c8ebadb6c4df99c35a913184760e82172b1f5]. > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.14, 3.11.0, 4.0 > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/18765886 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/18765886 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/18765886 Branch: refs/heads/cassandra-3.11 Commit: 187658861d15cbf9c3a9c3cdae42ecd191328eaf Parents: 388c961 617c8eb Author: Ariel WeisbergAuthored: Wed May 3 16:31:21 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 16:34:56 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 112 +--- .../apache/cassandra/service/StorageProxy.java | 8 + .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 175 +++ 8 files changed, 299 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/CHANGES.txt -- diff --cc CHANGES.txt index 3844bfa,9ec6c95..64e9e50 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) * Avoid name clashes in CassandraIndexTest (CASSANDRA-13427) http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/conf/cassandra.yaml -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/src/java/org/apache/cassandra/config/Config.java -- diff --cc src/java/org/apache/cassandra/config/Config.java index f43f816,6a99cd3..8fde816 --- a/src/java/org/apache/cassandra/config/Config.java +++ b/src/java/org/apache/cassandra/config/Config.java @@@ -307,19 -298,14 +307,25 @@@ public class Confi public int otc_coalescing_window_us = otc_coalescing_window_us_default; public int otc_coalescing_enough_coalesced_messages = 8; + /** + * Backlog expiration interval in milliseconds for the OutboundTcpConnection. + */ + public static final int otc_backlog_expiration_interval_ms_default = 200; + public volatile int
[2/6] cassandra git commit: Expire OTC messages by a single Thread
Expire OTC messages by a single Thread patch by Christian Esken; reviewed by Ariel Weisberg for CASSANDRA-13265 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/617c8eba Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/617c8eba Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/617c8eba Branch: refs/heads/cassandra-3.11 Commit: 617c8ebadb6c4df99c35a913184760e82172b1f5 Parents: b77e754 Author: Christian EskenAuthored: Wed Mar 1 15:56:36 2017 +0100 Committer: Ariel Weisberg Committed: Wed May 3 16:30:43 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 113 +--- .../apache/cassandra/service/StorageProxy.java | 10 +- .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 170 +++ 8 files changed, 295 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 19cd39c..9ec6c95 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) * Avoid name clashes in CassandraIndexTest (CASSANDRA-13427) http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/conf/cassandra.yaml -- diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml index 61d3844..22491c6 100644 --- a/conf/cassandra.yaml +++ b/conf/cassandra.yaml @@ -989,3 +989,12 @@ windows_timer_interval: 1 # Do not try to coalesce messages if we already got that many messages. This should be more than 2 and less than 128. # otc_coalescing_enough_coalesced_messages: 8 + +# How many milliseconds to wait between two expiration runs on the backlog (queue) of the OutboundTcpConnection. +# Expiration is done if messages are piling up in the backlog. Droppable messages are expired to free the memory +# taken by expired messages. The interval should be between 0 and 1000, and in most installations the default value +# will be appropriate. A smaller value could potentially expire messages slightly sooner at the expense of more CPU +# time and queue contention while iterating the backlog of messages. +# An interval of 0 disables any wait time, which is the behavior of former Cassandra versions. +# +# otc_backlog_expiration_interval_ms: 200 http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/Config.java -- diff --git a/src/java/org/apache/cassandra/config/Config.java b/src/java/org/apache/cassandra/config/Config.java index 9aaf7ae..6a99cd3 100644 --- a/src/java/org/apache/cassandra/config/Config.java +++ b/src/java/org/apache/cassandra/config/Config.java @@ -298,6 +298,12 @@ public class Config public int otc_coalescing_window_us = otc_coalescing_window_us_default; public int otc_coalescing_enough_coalesced_messages = 8; +/** + * Backlog expiration interval in milliseconds for the OutboundTcpConnection. + */ +public static final int otc_backlog_expiration_interval_ms_default = 200; +public volatile int otc_backlog_expiration_interval_ms = otc_backlog_expiration_interval_ms_default; + public int windows_timer_interval = 0; public boolean enable_user_defined_functions = false; http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 602214f..e9e54c3 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1967,6 +1967,16 @@ public class DatabaseDescriptor conf.otc_coalescing_enough_coalesced_messages = otc_coalescing_enough_coalesced_messages; } +public static int getOtcBacklogExpirationInterval() +{ +return conf.otc_backlog_expiration_interval_ms; +} + +public static void setOtcBacklogExpirationInterval(int
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/18765886 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/18765886 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/18765886 Branch: refs/heads/trunk Commit: 187658861d15cbf9c3a9c3cdae42ecd191328eaf Parents: 388c961 617c8eb Author: Ariel WeisbergAuthored: Wed May 3 16:31:21 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 16:34:56 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 112 +--- .../apache/cassandra/service/StorageProxy.java | 8 + .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 175 +++ 8 files changed, 299 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/CHANGES.txt -- diff --cc CHANGES.txt index 3844bfa,9ec6c95..64e9e50 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,5 +1,35 @@@ -3.0.14 +3.11.0 + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: + * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) * Avoid name clashes in CassandraIndexTest (CASSANDRA-13427) http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/conf/cassandra.yaml -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/18765886/src/java/org/apache/cassandra/config/Config.java -- diff --cc src/java/org/apache/cassandra/config/Config.java index f43f816,6a99cd3..8fde816 --- a/src/java/org/apache/cassandra/config/Config.java +++ b/src/java/org/apache/cassandra/config/Config.java @@@ -307,19 -298,14 +307,25 @@@ public class Confi public int otc_coalescing_window_us = otc_coalescing_window_us_default; public int otc_coalescing_enough_coalesced_messages = 8; + /** + * Backlog expiration interval in milliseconds for the OutboundTcpConnection. + */ + public static final int otc_backlog_expiration_interval_ms_default = 200; + public volatile int
[1/6] cassandra git commit: Expire OTC messages by a single Thread
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 b77e754a0 -> 617c8ebad refs/heads/cassandra-3.11 388c961e4 -> 187658861 refs/heads/trunk 675829564 -> ed4a7c5eb Expire OTC messages by a single Thread patch by Christian Esken; reviewed by Ariel Weisberg for CASSANDRA-13265 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/617c8eba Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/617c8eba Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/617c8eba Branch: refs/heads/cassandra-3.0 Commit: 617c8ebadb6c4df99c35a913184760e82172b1f5 Parents: b77e754 Author: Christian EskenAuthored: Wed Mar 1 15:56:36 2017 +0100 Committer: Ariel Weisberg Committed: Wed May 3 16:30:43 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 113 +--- .../apache/cassandra/service/StorageProxy.java | 10 +- .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 170 +++ 8 files changed, 295 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 19cd39c..9ec6c95 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) * Avoid name clashes in CassandraIndexTest (CASSANDRA-13427) http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/conf/cassandra.yaml -- diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml index 61d3844..22491c6 100644 --- a/conf/cassandra.yaml +++ b/conf/cassandra.yaml @@ -989,3 +989,12 @@ windows_timer_interval: 1 # Do not try to coalesce messages if we already got that many messages. This should be more than 2 and less than 128. # otc_coalescing_enough_coalesced_messages: 8 + +# How many milliseconds to wait between two expiration runs on the backlog (queue) of the OutboundTcpConnection. +# Expiration is done if messages are piling up in the backlog. Droppable messages are expired to free the memory +# taken by expired messages. The interval should be between 0 and 1000, and in most installations the default value +# will be appropriate. A smaller value could potentially expire messages slightly sooner at the expense of more CPU +# time and queue contention while iterating the backlog of messages. +# An interval of 0 disables any wait time, which is the behavior of former Cassandra versions. +# +# otc_backlog_expiration_interval_ms: 200 http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/Config.java -- diff --git a/src/java/org/apache/cassandra/config/Config.java b/src/java/org/apache/cassandra/config/Config.java index 9aaf7ae..6a99cd3 100644 --- a/src/java/org/apache/cassandra/config/Config.java +++ b/src/java/org/apache/cassandra/config/Config.java @@ -298,6 +298,12 @@ public class Config public int otc_coalescing_window_us = otc_coalescing_window_us_default; public int otc_coalescing_enough_coalesced_messages = 8; +/** + * Backlog expiration interval in milliseconds for the OutboundTcpConnection. + */ +public static final int otc_backlog_expiration_interval_ms_default = 200; +public volatile int otc_backlog_expiration_interval_ms = otc_backlog_expiration_interval_ms_default; + public int windows_timer_interval = 0; public boolean enable_user_defined_functions = false; http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 602214f..e9e54c3 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1967,6 +1967,16 @@ public class DatabaseDescriptor conf.otc_coalescing_enough_coalesced_messages = otc_coalescing_enough_coalesced_messages; } +
[3/6] cassandra git commit: Expire OTC messages by a single Thread
Expire OTC messages by a single Thread patch by Christian Esken; reviewed by Ariel Weisberg for CASSANDRA-13265 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/617c8eba Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/617c8eba Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/617c8eba Branch: refs/heads/trunk Commit: 617c8ebadb6c4df99c35a913184760e82172b1f5 Parents: b77e754 Author: Christian EskenAuthored: Wed Mar 1 15:56:36 2017 +0100 Committer: Ariel Weisberg Committed: Wed May 3 16:30:43 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 113 +--- .../apache/cassandra/service/StorageProxy.java | 10 +- .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 170 +++ 8 files changed, 295 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 19cd39c..9ec6c95 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 3.0.14 + * Expire OutboundTcpConnection messages by a single Thread (CASSANDRA-13265) * Fail repair if insufficient responses received (CASSANDRA-13397) * Fix SSTableLoader fail when the loaded table contains dropped columns (CASSANDRA-13276) * Avoid name clashes in CassandraIndexTest (CASSANDRA-13427) http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/conf/cassandra.yaml -- diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml index 61d3844..22491c6 100644 --- a/conf/cassandra.yaml +++ b/conf/cassandra.yaml @@ -989,3 +989,12 @@ windows_timer_interval: 1 # Do not try to coalesce messages if we already got that many messages. This should be more than 2 and less than 128. # otc_coalescing_enough_coalesced_messages: 8 + +# How many milliseconds to wait between two expiration runs on the backlog (queue) of the OutboundTcpConnection. +# Expiration is done if messages are piling up in the backlog. Droppable messages are expired to free the memory +# taken by expired messages. The interval should be between 0 and 1000, and in most installations the default value +# will be appropriate. A smaller value could potentially expire messages slightly sooner at the expense of more CPU +# time and queue contention while iterating the backlog of messages. +# An interval of 0 disables any wait time, which is the behavior of former Cassandra versions. +# +# otc_backlog_expiration_interval_ms: 200 http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/Config.java -- diff --git a/src/java/org/apache/cassandra/config/Config.java b/src/java/org/apache/cassandra/config/Config.java index 9aaf7ae..6a99cd3 100644 --- a/src/java/org/apache/cassandra/config/Config.java +++ b/src/java/org/apache/cassandra/config/Config.java @@ -298,6 +298,12 @@ public class Config public int otc_coalescing_window_us = otc_coalescing_window_us_default; public int otc_coalescing_enough_coalesced_messages = 8; +/** + * Backlog expiration interval in milliseconds for the OutboundTcpConnection. + */ +public static final int otc_backlog_expiration_interval_ms_default = 200; +public volatile int otc_backlog_expiration_interval_ms = otc_backlog_expiration_interval_ms_default; + public int windows_timer_interval = 0; public boolean enable_user_defined_functions = false; http://git-wip-us.apache.org/repos/asf/cassandra/blob/617c8eba/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 602214f..e9e54c3 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1967,6 +1967,16 @@ public class DatabaseDescriptor conf.otc_coalescing_enough_coalesced_messages = otc_coalescing_enough_coalesced_messages; } +public static int getOtcBacklogExpirationInterval() +{ +return conf.otc_backlog_expiration_interval_ms; +} + +public static void setOtcBacklogExpirationInterval(int
[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ed4a7c5e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ed4a7c5e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ed4a7c5e Branch: refs/heads/trunk Commit: ed4a7c5ebfc5f5f3e32e73267c0449702175b1f3 Parents: 6758295 1876588 Author: Ariel WeisbergAuthored: Wed May 3 16:35:25 2017 -0400 Committer: Ariel Weisberg Committed: Wed May 3 16:38:27 2017 -0400 -- CHANGES.txt | 1 + conf/cassandra.yaml | 9 + .../org/apache/cassandra/config/Config.java | 6 + .../cassandra/config/DatabaseDescriptor.java| 10 ++ .../cassandra/net/OutboundTcpConnection.java| 112 +--- .../apache/cassandra/service/StorageProxy.java | 8 + .../cassandra/service/StorageProxyMBean.java| 3 + .../net/OutboundTcpConnectionTest.java | 175 +++ 8 files changed, 299 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/conf/cassandra.yaml -- diff --cc conf/cassandra.yaml index 1c54830,4bb5840..e968b0c --- a/conf/cassandra.yaml +++ b/conf/cassandra.yaml @@@ -1121,7 -1222,11 +1121,16 @@@ back_pressure_strategy # Do not try to coalesce messages if we already got that many messages. This should be more than 2 and less than 128. # otc_coalescing_enough_coalesced_messages: 8 + # How many milliseconds to wait between two expiration runs on the backlog (queue) of the OutboundTcpConnection. + # Expiration is done if messages are piling up in the backlog. Droppable messages are expired to free the memory + # taken by expired messages. The interval should be between 0 and 1000, and in most installations the default value + # will be appropriate. A smaller value could potentially expire messages slightly sooner at the expense of more CPU + # time and queue contention while iterating the backlog of messages. + # An interval of 0 disables any wait time, which is the behavior of former Cassandra versions. + # + # otc_backlog_expiration_interval_ms: 200 ++ +# Track a metric per keyspace indicating whether replication achieved the ideal consistency +# level for writes without timing out. This is different from the consistency level requested by +# each write which may be lower in order to facilitate availability. +# ideal_consistency_level: EACH_QUORUM http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/src/java/org/apache/cassandra/config/Config.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/src/java/org/apache/cassandra/net/OutboundTcpConnection.java -- diff --cc src/java/org/apache/cassandra/net/OutboundTcpConnection.java index 9b19eab,6cd1064..0677958 --- a/src/java/org/apache/cassandra/net/OutboundTcpConnection.java +++ b/src/java/org/apache/cassandra/net/OutboundTcpConnection.java @@@ -354,11 -370,14 +380,11 @@@ public class OutboundTcpConnection exte } } - private void writeInternal(MessageOut message, int id, long timestamp) throws IOException + private void writeInternal(MessageOut message, int id, long timestamp) throws IOException { +//If you add/remove fields before the message don't forget to update PROTOCOL_MAGIC_ID_TIMESTAMP_SIZE out.writeInt(MessagingService.PROTOCOL_MAGIC); - -if (targetVersion < MessagingService.VERSION_20) -out.writeUTF(String.valueOf(id)); -else -out.writeInt(id); +out.writeInt(id); // int cast cuts off the high-order half of the timestamp, which we can assume remains // the same between now and when the recipient reconstructs it. http://git-wip-us.apache.org/repos/asf/cassandra/blob/ed4a7c5e/src/java/org/apache/cassandra/service/StorageProxy.java -- diff --cc src/java/org/apache/cassandra/service/StorageProxy.java index 6be5286,0da25a9..65aed6f --- a/src/java/org/apache/cassandra/service/StorageProxy.java +++ b/src/java/org/apache/cassandra/service/StorageProxy.java @@@ -2784,16 -2816,11 +2784,24
[jira] [Created] (CASSANDRA-13490) RPM Spec - disable binary check, improve readme instructions
martin a langhoff created CASSANDRA-13490: - Summary: RPM Spec - disable binary check, improve readme instructions Key: CASSANDRA-13490 URL: https://issues.apache.org/jira/browse/CASSANDRA-13490 Project: Cassandra Issue Type: Sub-task Reporter: martin a langhoff -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995599#comment-15995599 ] Rei Odaira commented on CASSANDRA-13486: The license of capiblock.jar is Apache License, Version 2.0. Every source file in https://github.com/open-power/capiflash has a header to show the license. About the plugin approach, my impression is that Cassandra has not been so pluggable, and a few exceptions are row cache, metrics, etc. (aside from a couple of unsuccessful proposals like pluggable storage; correct me if I am wrong.) Is it a direction of Cassandra to make it more pluggable if it makes sense and to keep and support the plugin APIs? For example, other pluggable software architectures like Eclipse https://marketplace.eclipse.org and fluentd http://www.fluentd.org/plugins have a list of all plugins in their Web pages and treat them as first-class citizens. Is it what developers can expect in Cassandra in the future? > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13163) NPE in StorageService.excise
[ https://issues.apache.org/jira/browse/CASSANDRA-13163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13163: --- Status: Ready to Commit (was: Patch Available) > NPE in StorageService.excise > > > Key: CASSANDRA-13163 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13163 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg > Fix For: 3.0.x, 3.11.x, 4.x > > > {code} > private void excise(Collection tokens, InetAddress endpoint) > { > logger.info("Removing tokens {} for {}", tokens, endpoint); > if (tokenMetadata.isMember(endpoint)) > HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); > {code} > The check for TMD.isMember() is not enough to guarantee that TMD.getHostId() > will not return null. If HintsService.excise() is called with null you get an > NPE in a map lookup. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13488) token distribution in multi-dc
[ https://issues.apache.org/jira/browse/CASSANDRA-13488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995553#comment-15995553 ] Jeremy Hanna commented on CASSANDRA-13488: -- How tokens are distributed depends on the algorithm. A description of what is done is described in this blog post: https://www.datastax.com/dev/blog/token-allocation-algorithm and on CASSANDRA-7032 > token distribution in multi-dc > -- > > Key: CASSANDRA-13488 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13488 > Project: Cassandra > Issue Type: Wish > Environment: QA >Reporter: vasu >Priority: Minor > > Hi , > I have a question regarding token distribution in muti-dc setup. > We are having multi-dc (DC1+DC2) setup with V-nodes enabled. > How token ranges will be distributed in cluster ? > Is complete cluster has completed one token range ? > Or each DC has complete token range? -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Resolved] (CASSANDRA-13488) token distribution in multi-dc
[ https://issues.apache.org/jira/browse/CASSANDRA-13488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeremy Hanna resolved CASSANDRA-13488. -- Resolution: Not A Problem This is more a question for the user list, but each datacenter has an independent and complete token range. > token distribution in multi-dc > -- > > Key: CASSANDRA-13488 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13488 > Project: Cassandra > Issue Type: Wish > Environment: QA >Reporter: vasu >Priority: Minor > > Hi , > I have a question regarding token distribution in muti-dc setup. > We are having multi-dc (DC1+DC2) setup with V-nodes enabled. > How token ranges will be distributed in cluster ? > Is complete cluster has completed one token range ? > Or each DC has complete token range? -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-7396) Allow selecting Map key, List index
[ https://issues.apache.org/jira/browse/CASSANDRA-7396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15995494#comment-15995494 ] Benjamin Lerer commented on CASSANDRA-7396: --- All my apologizes for the delay. My main concern with the patch is the split of {{SelectStatement}} into {{SelectStatement}} and {{SelectOptions}} as well as the introduction of the {{Finalized}} in {{Selection}} and {{SelectOptions}}. I fully agree that we should simply {{SelectStatement}} and that we need to have a nice way to deal with the creation of {{ColumnFilter}} instances. Nevertheless, the patch approach makes, in my opinion, the logic harder to follow. I pushed a new version of the patch [here|https://github.com/apache/cassandra/compare/trunk...blerer:7396-trunk]. The approach is to have {{Selection}} returning a {{Selectors}} interface. The {{ColumnFilter}} is then retrieved from the {{Selectors}} interface. If the {{ColumnFilter}} can be created at preparation time it will be created only one. Otherwise it will be created upon request. The {{ResultSetBuilder}} can then be created by passing the {{Selectors}} interface as a constructor argument. The patch also fix the ANTLR issues and add extra tests. > Allow selecting Map key, List index > --- > > Key: CASSANDRA-7396 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7396 > Project: Cassandra > Issue Type: New Feature > Components: CQL >Reporter: Jonathan Ellis >Assignee: Robert Stupp > Labels: cql, docs-impacting > Fix For: 4.x > > Attachments: 7396_unit_tests.txt > > > Allow "SELECT map['key]" and "SELECT list[index]." (Selecting a UDT subfield > is already supported.) -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ariel Weisberg updated CASSANDRA-13265: --- Status: Ready to Commit (was: Patch Available) > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.x > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Assigned] (CASSANDRA-12088) Upgrade corrupts SSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-12088?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeff Jirsa reassigned CASSANDRA-12088: -- Assignee: Sam Tunnicliffe Reviewer: Jeff Jirsa > Upgrade corrupts SSTables > - > > Key: CASSANDRA-12088 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12088 > Project: Cassandra > Issue Type: Bug > Environment: OS: CentOS release 6.7 (Final) > Cassandra version: 2.1, 3.7 >Reporter: Chandra Sekar S >Assignee: Sam Tunnicliffe >Priority: Critical > > When upgrading from 2.0 to 3.7, table was corrupted and an exception occurs > when performing LWT from Java Driver. The server was upgraded from 2.0 to 2.1 > and then to 3.7. "nodetool upgradesstables" was run after each step of > upgrade. > Schema of affected table: > {code} > CREATE TABLE payment.tbl ( > c1 text, > c2 timestamp, > c3 text, > s1 timestamp static, > s2 int static, > c4 text, > PRIMARY KEY (c1, c2) > ) WITH CLUSTERING ORDER BY (c2 ASC) > AND bloom_filter_fp_chance = 0.01 > AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} > AND comment = '' > AND compaction = {'class': > 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', > 'max_threshold': '32', 'min_threshold': '4'} > AND compression = {'chunk_length_in_kb': '64', 'class': > 'org.apache.cassandra.io.compress.LZ4Compressor'} > AND crc_check_chance = 1.0 > AND dclocal_read_repair_chance = 0.1 > AND default_time_to_live = 0 > AND gc_grace_seconds = 864000 > AND max_index_interval = 2048 > AND memtable_flush_period_in_ms = 0 > AND min_index_interval = 128 > AND read_repair_chance = 0.0 > AND speculative_retry = '99PERCENTILE'; > {code} > Insertion that fails: > {code:java} > insert into tbl (c1, s2) values ('value', 0) if not exists; > {code} > The stack trace in system.log of cassandra server, > {code} > INFO [HANDSHAKE-maven-repo.corp.zeta.in/10.1.5.13] 2016-06-24 22:23:14,887 > OutboundTcpConnection.java:514 - Handshaking version with > maven-repo.corp.zeta.in/10.1.5.13 > ERROR [MessagingService-Incoming-/10.1.5.13] 2016-06-24 22:23:14,889 > CassandraDaemon.java:217 - Exception in thread > Thread[MessagingService-Incoming-/10.1.5.13,5,main] > java.io.IOError: java.io.IOException: Corrupt flags value for unfiltered > partition (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:224) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:212) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.partitions.PartitionUpdate$PartitionUpdateSerializer.deserialize30(PartitionUpdate.java:681) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.partitions.PartitionUpdate$PartitionUpdateSerializer.deserialize(PartitionUpdate.java:642) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.Commit$CommitSerializer.deserialize(Commit.java:131) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.PrepareResponse$PrepareResponseSerializer.deserialize(PrepareResponse.java:97) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.service.paxos.PrepareResponse$PrepareResponseSerializer.deserialize(PrepareResponse.java:66) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at org.apache.cassandra.net.MessageIn.read(MessageIn.java:114) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:190) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.receiveMessages(IncomingTcpConnection.java:178) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:92) > ~[apache-cassandra-3.7.0.jar:3.7.0] > Caused by: java.io.IOException: Corrupt flags value for unfiltered partition > (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredSerializer.deserialize(UnfilteredSerializer.java:380) > ~[apache-cassandra-3.7.0.jar:3.7.0] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:219) > ~[apache-cassandra-3.7.0.jar:3.7.0] > ... 11 common frames omitted > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To
[jira] [Assigned] (CASSANDRA-13236) corrupt flag error after upgrade from 2.2 to 3.0.10
[ https://issues.apache.org/jira/browse/CASSANDRA-13236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jeff Jirsa reassigned CASSANDRA-13236: -- Assignee: Sam Tunnicliffe Reviewer: Jeff Jirsa > corrupt flag error after upgrade from 2.2 to 3.0.10 > --- > > Key: CASSANDRA-13236 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13236 > Project: Cassandra > Issue Type: Bug > Environment: cassandra 3.0.10 >Reporter: ingard mevåg >Assignee: Sam Tunnicliffe > > After upgrade from 2.2.5 to 3.0.9/10 we're getting a bunch of errors like > this: > {code} > ERROR [SharedPool-Worker-1] 2017-02-17 12:58:43,859 Message.java:617 - > Unexpected exception during request; channel = [id: 0xa8b98684, > /10.0.70.104:56814 => /10.0.80.24:9042] > java.io.IOError: java.io.IOException: Corrupt flags value for unfiltered > partition (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:222) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:210) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:129) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processPartition(SelectStatement.java:749) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:711) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:400) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:265) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:224) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:76) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:206) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:487) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.cql3.QueryProcessor.processPrepared(QueryProcessor.java:464) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.messages.ExecuteMessage.execute(ExecuteMessage.java:130) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:513) > [apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:407) > [apache-cassandra-3.0.10.jar:3.0.10] > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext.access$700(AbstractChannelHandlerContext.java:32) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > io.netty.channel.AbstractChannelHandlerContext$8.run(AbstractChannelHandlerContext.java:324) > [netty-all-4.0.23.Final.jar:4.0.23.Final] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_72] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > [apache-cassandra-3.0.10.jar:3.0.10] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [apache-cassandra-3.0.10.jar:3.0.10] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_72] > Caused by: java.io.IOException: Corrupt flags value for unfiltered partition > (isStatic flag set): 160 > at > org.apache.cassandra.db.rows.UnfilteredSerializer.deserialize(UnfilteredSerializer.java:374) > ~[apache-cassandra-3.0.10.jar:3.0.10] > at > org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer$1.computeNext(UnfilteredRowIteratorSerializer.java:217) > ~[apache-cassandra-3.0.10.jar:3.0.10] > ... 23 common frames omitted > {code} -- This message was sent
[jira] [Updated] (CASSANDRA-13489) Cassandra Repair in 2.2.8
[ https://issues.apache.org/jira/browse/CASSANDRA-13489?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shoban updated CASSANDRA-13489: --- Since Version: 2.2.8 > Cassandra Repair in 2.2.8 > - > > Key: CASSANDRA-13489 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13489 > Project: Cassandra > Issue Type: Task > Environment: Linux Redhat Enterprise, 32 GB RAM, >Reporter: Shoban >Priority: Critical > > I am using 4 node, 2 data center Cassandra cluster. While running nodetool > repair -dcpar it takes arund 2 hours 30 minutes for database size of 20 MB. I > checked how to tune streaming of data between data centers from below url: > https://support.datastax.com/hc/en-us/articles/205409646-How-to-performance-tune-data-streaming-activities-like-repair-and-bootstrap > But still the repair takes 2 hours and 30 mins. I drilled down the repair > logs and identified while repair Cassandra repairs 256 ranges per node which > is 4*256=1024. In a single token range merkle tree for each column families > is compared which takes around 110 ms. We have 80 column families thus it > takes 110*80*1024 which results in 2 hours 30 mins. > Can we reduce number of traffic by generating merkle tree for more than one > column family at a time? > Or is there any other way to reduce the repair procedure in Cassandra 2.2. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13489) Cassandra Repair in 2.2.8
[ https://issues.apache.org/jira/browse/CASSANDRA-13489?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shoban updated CASSANDRA-13489: --- Priority: Critical (was: Blocker) > Cassandra Repair in 2.2.8 > - > > Key: CASSANDRA-13489 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13489 > Project: Cassandra > Issue Type: Task > Environment: Linux Redhat Enterprise, 32 GB RAM, >Reporter: Shoban >Priority: Critical > > I am using 4 node, 2 data center Cassandra cluster. While running nodetool > repair -dcpar it takes arund 2 hours 30 minutes for database size of 20 MB. I > checked how to tune streaming of data between data centers from below url: > https://support.datastax.com/hc/en-us/articles/205409646-How-to-performance-tune-data-streaming-activities-like-repair-and-bootstrap > But still the repair takes 2 hours and 30 mins. I drilled down the repair > logs and identified while repair Cassandra repairs 256 ranges per node which > is 4*256=1024. In a single token range merkle tree for each column families > is compared which takes around 110 ms. We have 80 column families thus it > takes 110*80*1024 which results in 2 hours 30 mins. > Can we reduce number of traffic by generating merkle tree for more than one > column family at a time? > Or is there any other way to reduce the repair procedure in Cassandra 2.2. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994639#comment-15994639 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/3/17 3:35 PM: -- || Source || Test || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | [circle-ci | https://circleci.com/gh/jasonstack/cassandra/20] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | | was (Author: jasonstack): || Source || Test || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | [circle-ci | https://circleci.com/gh/jasonstack/cassandra/18] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | | > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Created] (CASSANDRA-13489) Cassandra Repair in 2.2.8
Shoban created CASSANDRA-13489: -- Summary: Cassandra Repair in 2.2.8 Key: CASSANDRA-13489 URL: https://issues.apache.org/jira/browse/CASSANDRA-13489 Project: Cassandra Issue Type: Task Environment: Linux Redhat Enterprise, 32 GB RAM, Reporter: Shoban Priority: Blocker I am using 4 node, 2 data center Cassandra cluster. While running nodetool repair -dcpar it takes arund 2 hours 30 minutes for database size of 20 MB. I checked how to tune streaming of data between data centers from below url: https://support.datastax.com/hc/en-us/articles/205409646-How-to-performance-tune-data-streaming-activities-like-repair-and-bootstrap But still the repair takes 2 hours and 30 mins. I drilled down the repair logs and identified while repair Cassandra repairs 256 ranges per node which is 4*256=1024. In a single token range merkle tree for each column families is compared which takes around 110 ms. We have 80 column families thus it takes 110*80*1024 which results in 2 hours 30 mins. Can we reduce number of traffic by generating merkle tree for more than one column family at a time? Or is there any other way to reduce the repair procedure in Cassandra 2.2. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13119) dtest failure upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test
[ https://issues.apache.org/jira/browse/CASSANDRA-13119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994856#comment-15994856 ] Jason Brown commented on CASSANDRA-13119: - due to my delay in reviewing, [~jjirsa] has already applied the same fix in CASSANDRA-13410, to 3.0, 3.11, and trunk. I'm +1 if you want to commit to 2.2 (I think it makes sense to do so). > dtest failure > upgrade_tests.upgrade_supercolumns_test.TestSCUpgrade.upgrade_super_columns_through_all_versions_test > --- > > Key: CASSANDRA-13119 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13119 > Project: Cassandra > Issue Type: Bug > Components: Core, Testing >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg >Priority: Critical > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > > The test complains about unreadable sstables version ka and lb during upgrade > which is 2.1 and 2.2. These tables look like system tables not user tables. > I looked and I can't find any place where system tables are upgraded on > upgrade. You can specify them explicitly by name with nodetool, but nodetool > defaults to only upgrading user tables and doesn't have a flag to upgrade all > tables. > These tables probably need to be removed if unused or upgraded if in use. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15986426#comment-15986426 ] Christian Esken edited comment on CASSANDRA-13265 at 5/3/17 1:05 PM: - I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | yes | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | yes | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | yes | CircleCI (/) / (?) | My unit test works. But there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | was (Author: cesken): I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | yes | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | yes | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | yes | CircleCI (/) / (?) | My unit test works. Bu there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.x > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994820#comment-15994820 ] Christian Esken commented on CASSANDRA-13265: - Done. Squashed and pushed. I also removed my "stress-test" patch in the 3.0 branch, as it is not related and also does not look like a proper fix. As a reference, here is the patch: {code} -- case $CIRCLE_NODE_INDEX in 0) ant eclipse-warnings; ant test ;; 1) ant long-test ;; 2) ant test-compression ;; 3) ant stress-test ;;esac: +- case $CIRCLE_NODE_INDEX in 0) ant eclipse-warnings; ant test ;; 1) ant long-test ;; 2) ant test-compression ;;esac: {code} > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.x > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13163) NPE in StorageService.excise
[ https://issues.apache.org/jira/browse/CASSANDRA-13163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994816#comment-15994816 ] Jason Brown commented on CASSANDRA-13163: - all apologies for the delay, but +1 > NPE in StorageService.excise > > > Key: CASSANDRA-13163 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13163 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Ariel Weisberg >Assignee: Ariel Weisberg > Fix For: 3.0.x, 3.11.x, 4.x > > > {code} > private void excise(Collection tokens, InetAddress endpoint) > { > logger.info("Removing tokens {} for {}", tokens, endpoint); > if (tokenMetadata.isMember(endpoint)) > HintsService.instance.excise(tokenMetadata.getHostId(endpoint)); > {code} > The check for TMD.isMember() is not enough to guarantee that TMD.getHostId() > will not return null. If HintsService.excise() is called with null you get an > NPE in a map lookup. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15986426#comment-15986426 ] Christian Esken edited comment on CASSANDRA-13265 at 5/3/17 1:01 PM: - I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | yes | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | yes | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | yes | CircleCI (/) / (?) | My unit test works. Bu there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | was (Author: cesken): I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | no | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | yes | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | yes | CircleCI (?) | My unit test works. Bu there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.x > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994766#comment-15994766 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/3/17 12:43 PM: --- Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is more recent shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone plus shadowable should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. was (Author: jasonstack): Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is more recent shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994766#comment-15994766 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/3/17 12:35 PM: --- Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is more recent shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. was (Author: jasonstack): Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is newer shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994766#comment-15994766 ] ZhaoYang commented on CASSANDRA-13409: -- Thanks. deleted cell + shadowable row tombstone: deleted cells should be kept even if there is newer shadowable row-tombstones, this could be done without changing storage format regular row tombstone + shadowable row tombstone: if shadowable is newer, only most recent regular row tombstone should be kept. maybe have to change storage format. eg. extra flag to indicate extra deletion. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13487) Generate snapshot packages through Jenkins
[ https://issues.apache.org/jira/browse/CASSANDRA-13487?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Stefan Podkowinski updated CASSANDRA-13487: --- Fix Version/s: 4.x 3.11.x 3.0.x 2.2.x Status: Patch Available (was: Open) I've now added some script-foo to detect the target version for the build, based on the branch or tag that is used to trigger the build. Building tags will now create packages with regular release versions. Building branches will create snapshot releases, which should work fine when triggered periodically by Jenkins. > Generate snapshot packages through Jenkins > -- > > Key: CASSANDRA-13487 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13487 > Project: Cassandra > Issue Type: New Feature > Components: Build >Reporter: Stefan Podkowinski >Assignee: Stefan Podkowinski > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 13487.patch > > > Creating packages through the new docker based build scripts now work pretty > much independent from any local environment, as long as docker is available, > e.g. also on Jenkins. Having daily snapshots available for deb/rpm artifacts > would enable us to provide users dev-releases for testing and validating > fixes. > I've created a branch for the Jenkins integration, which can be found here: > https://github.com/spodkowinski/cassandra-builds/tree/jenkins_debrpm > The major issue I'm currently struggling with is the handling of the actual > version value. We need to find a way to have Jenkins recognize the correct > version for the branch being build. Also we must create $version-SNAPSHOT > packages, as builds are not official releases and we should not have any > packages for versions that aren't published yet. > The Debian build process will use the version defined in > {{debian/changelog}}. Adding a -SNAPSHOT suffix for the version should work, > but this has to be handled manually and care must be taken to change the > value back again for a regular release. > With RPMs, the version must be set for {{cassandra.spec}}, which is currently > done by running {noformat}rpmbuild --define="version ${CASSANDRA_VERSION}" > -ba ./redhat/cassandra.spec{noformat}, where the version is passed as a > parameter by {{build-scripts/cassandra-rpm-packaging.sh}}. Maybe we could > grep the version from build.xml here? > So I wonder if there any way we can keep track of the version in a single > place, such as build.xml or CHANGES. Afterwards we also need to enable a > SNAPSHOT mode, maybe by setting a Jenkins environment value. > /cc [~mshuler] -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994639#comment-15994639 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/3/17 12:06 PM: --- || Source || Test || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | [circle-ci | https://circleci.com/gh/jasonstack/cassandra/18] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | | was (Author: jasonstack): || Source || Test || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | [circle-ci | https://circleci.com/gh/jasonstack/cassandra/18] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | cassi... sorry no access| > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13487) Generate snapshot packages through Jenkins
[ https://issues.apache.org/jira/browse/CASSANDRA-13487?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Stefan Podkowinski updated CASSANDRA-13487: --- Attachment: 13487.patch > Generate snapshot packages through Jenkins > -- > > Key: CASSANDRA-13487 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13487 > Project: Cassandra > Issue Type: New Feature > Components: Build >Reporter: Stefan Podkowinski >Assignee: Stefan Podkowinski > Attachments: 13487.patch > > > Creating packages through the new docker based build scripts now work pretty > much independent from any local environment, as long as docker is available, > e.g. also on Jenkins. Having daily snapshots available for deb/rpm artifacts > would enable us to provide users dev-releases for testing and validating > fixes. > I've created a branch for the Jenkins integration, which can be found here: > https://github.com/spodkowinski/cassandra-builds/tree/jenkins_debrpm > The major issue I'm currently struggling with is the handling of the actual > version value. We need to find a way to have Jenkins recognize the correct > version for the branch being build. Also we must create $version-SNAPSHOT > packages, as builds are not official releases and we should not have any > packages for versions that aren't published yet. > The Debian build process will use the version defined in > {{debian/changelog}}. Adding a -SNAPSHOT suffix for the version should work, > but this has to be handled manually and care must be taken to change the > value back again for a regular release. > With RPMs, the version must be set for {{cassandra.spec}}, which is currently > done by running {noformat}rpmbuild --define="version ${CASSANDRA_VERSION}" > -ba ./redhat/cassandra.spec{noformat}, where the version is passed as a > parameter by {{build-scripts/cassandra-rpm-packaging.sh}}. Maybe we could > grep the version from build.xml here? > So I wonder if there any way we can keep track of the version in a single > place, such as build.xml or CHANGES. Afterwards we also need to enable a > SNAPSHOT mode, maybe by setting a Jenkins environment value. > /cc [~mshuler] -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13265) Expiration in OutboundTcpConnection can block the reader Thread
[ https://issues.apache.org/jira/browse/CASSANDRA-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15986426#comment-15986426 ] Christian Esken edited comment on CASSANDRA-13265 at 5/3/17 12:02 PM: -- I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | no | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | yes | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | yes | CircleCI (?) | My unit test works. Bu there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | was (Author: cesken): I am fixing the branches, while you work on the dtests. I will continue updating this comment as long as I work on it. || branch || sqaushed? || Unit Tests OK? || comment || | cassandra-13265-3.0 | no | (/) / (?) | No stress-test in build.xml. I patched circle.yml to match that: https://github.com/christian-esken/cassandra/commit/1a776e299c76093eb3edf20e0d9054e14549a667 . CircleCI still kicks off a 4th test, which fails but can likely be ignored for now. | | cassandra-13265-3.11 | no | CircleCI (/) | | | cassandra-13265-2.2 | yes | ant test (/) | CicrleCI hasn't kicked off tests for the branch | | cassandra-13265-trunk | no | CircleCI (?) | My unit test works. Bu there is a strange unrelated unit test failure: ClassNotFoundException: org.apache.cassandra.stress.CompactionStress | > Expiration in OutboundTcpConnection can block the reader Thread > --- > > Key: CASSANDRA-13265 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13265 > Project: Cassandra > Issue Type: Bug > Environment: Cassandra 3.0.9 > Java HotSpot(TM) 64-Bit Server VM version 25.112-b15 (Java version > 1.8.0_112-b15) > Linux 3.16 >Reporter: Christian Esken >Assignee: Christian Esken > Fix For: 3.0.x > > Attachments: cassandra-13265-2.2-dtest_stdout.txt, > cassandra-13265-trun-dtest_stdout.txt, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.chist.xz, > cassandra.pb-cache4-dus.2017-02-17-19-36-26.td.xz > > > I observed that sometimes a single node in a Cassandra cluster fails to > communicate to the other nodes. This can happen at any time, during peak load > or low load. Restarting that single node from the cluster fixes the issue. > Before going in to details, I want to state that I have analyzed the > situation and am already developing a possible fix. Here is the analysis so > far: > - A Threaddump in this situation showed 324 Threads in the > OutboundTcpConnection class that want to lock the backlog queue for doing > expiration. > - A class histogram shows 262508 instances of > OutboundTcpConnection$QueuedMessage. > What is the effect of it? As soon as the Cassandra node has reached a certain > amount of queued messages, it starts thrashing itself to death. Each of the > Thread fully locks the Queue for reading and writing by calling > iterator.next(), making the situation worse and worse. > - Writing: Only after 262508 locking operation it can progress with actually > writing to the Queue. > - Reading: Is also blocked, as 324 Threads try to do iterator.next(), and > fully lock the Queue > This means: Writing blocks the Queue for reading, and readers might even be > starved which makes the situation even worse. > - > The setup is: > - 3-node cluster > - replication factor 2 > - Consistency LOCAL_ONE > - No remote DC's > - high write throughput (10 INSERT statements per second and more during > peak times). > -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-12849) The parameter -XX:HeapDumpPath is not ovewritten by cassandra-env.sh
[ https://issues.apache.org/jira/browse/CASSANDRA-12849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994711#comment-15994711 ] jean carlo rivera ura commented on CASSANDRA-12849: --- Hi [~yogeshnachnani] I start the cassandra process using the command service cassandra start. I am not using the script init directly. > The parameter -XX:HeapDumpPath is not ovewritten by cassandra-env.sh > - > > Key: CASSANDRA-12849 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12849 > Project: Cassandra > Issue Type: Bug >Reporter: jean carlo rivera ura > Labels: lhf > Attachments: 12849-trunk.txt > > > The parameter -XX:HeapDumpPath appears twice in the java process > {panel} > user@node:~$ sudo ps aux | grep --color HeapDumpPath > java -ea -javaagent:/usr/share/cassandra/lib/jamm-0.3.0.jar > -XX:+CMSClassUnloadingEnabled -XX:+UseThreadPriorities > -XX:ThreadPriorityPolicy=42 -Xms1024M -Xmx1024M -Xmn200M > -XX:+HeapDumpOnOutOfMemoryError > -XX:*HeapDumpPath*=/var/lib/cassandra-1477577769-pid1516.hprof -Xss256k > ... > -XX:*HeapDumpPath*=/home/cassandra/java_1477577769.hprof > -XX:ErrorFile=/var/lib/cassandra/hs_err_1477577769.log > org.apache.cassandra.service.CassandraDaemon > {panel} > The problem is when we have an OOM error, the JVM dump goes to > */home/cassandra/java_1477577769.hprof * when the correct behavior is to go > to the path defined by cassandra-env.sh > */var/lib/cassandra-1477577769-pid1516.hprof* > This is quite annoying because cassandra takes into account only the path > defined by the script init (usually that disk is not that big to keep 8Gb of > a heap dump) and not the path defined in cassandra-env.sh > {noformat} > user@node:~$ jmx4perl http://localhost:8523/jolokia read > com.sun.management:type=HotSpotDiagnostic DiagnosticOptions > { > name => 'HeapDumpPath', > origin => 'VM_CREATION', > value => '/home/cassandra/java_1477043835.hprof', > writeable => '[true]' > }, > {noformat} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-13483) test failure in snapshot_test.TestSnapshot.test_snapshot_and_restore_dropping_a_column
[ https://issues.apache.org/jira/browse/CASSANDRA-13483?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ZhaoYang updated CASSANDRA-13483: - Resolution: Fixed Reviewer: Philip Thompson (was: Alex Petrov) Status: Resolved (was: Patch Available) > test failure in > snapshot_test.TestSnapshot.test_snapshot_and_restore_dropping_a_column > -- > > Key: CASSANDRA-13483 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13483 > Project: Cassandra > Issue Type: Bug > Components: Testing >Reporter: Michael Shuler >Assignee: ZhaoYang > Labels: dtest, test-failure > Attachments: node1_debug.log, node1_gc.log, node1.log > > > example failure: > http://cassci.datastax.com/job/cassandra-2.2_offheap_dtest/488/testReport/snapshot_test/TestSnapshot/test_snapshot_and_restore_dropping_a_column > {code} > Error Message > Subprocess ['nodetool', '-h', 'localhost', '-p', '7100', ['refresh', 'ks', > 'cf']] exited with non-zero status; exit status: 1; > stdout: nodetool: Unknown keyspace/cf pair (ks.cf) > See 'nodetool help' or 'nodetool help '. > {code} > {code} > Stacktrace > File "/usr/lib/python2.7/unittest/case.py", line 329, in run > testMethod() > File "/home/automaton/cassandra-dtest/snapshot_test.py", line 145, in > test_snapshot_and_restore_dropping_a_column > node1.nodetool('refresh ks cf') > File > "/home/automaton/venv/local/lib/python2.7/site-packages/ccmlib/node.py", line > 789, in nodetool > return handle_external_tool_process(p, ['nodetool', '-h', 'localhost', > '-p', str(self.jmx_port), cmd.split()]) > File > "/home/automaton/venv/local/lib/python2.7/site-packages/ccmlib/node.py", line > 2002, in handle_external_tool_process > raise ToolError(cmd_args, rc, out, err) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994643#comment-15994643 ] Duarte Nunes commented on CASSANDRA-13409: -- Why not? You can have (base pk on p and view's pk is on v1 and p, assume flushes between operations): 1. insert into base (p, v1, v2) values (3, 1, 3) using timestamp 1 2. update base set v2 = null where p = 3 using timestamp 2 // deletes a cell 3. update base set v1 = 2 where p = 3 using timestamp 3 // will create a shadowable row tombstone for (v1, p) = (1, 3) 4. update base set v1 = 1 where p = 3 using timestamp 4 Here you have a deleted cell co-existing with a shadowable tombstone. The problem is then that the view updates for 2) and 3) can be compacted together, and the tombstone for v2 will be dropped, leaving only the shadowable row tombstone. After the view update in 4), assuming it's done after gc grace seconds, the row tombstone will be shadowed and the update for v2 made in 1) will be resurrected. You can have a similar sequence of events involving row tombstones: 1. insert into base (p, v1, v2) values (3, 1, 3) using timestamp 1 2. delete from base where p = 3 using timestamp 2 // will create a regular row tombstone for (v1, p) = (1, 3) 3. insert into base (p, v1) values (3, 1) using timestamp 3 4. update base set v1 = 2 where p = 3 using timestamp 4 // will create a shadowable row tombstone for (v1, p) = (1, 3) 5. update base set v1 = 1 where p = 3 using timestamp 5 Here, if the sstables with 2) and 4) are compacted together, the shadowable tombstone will cover and remove the regular one. The same partition can easily contain regular and shadowable tombstones, so that should be taken into account when merging rows in memory. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994639#comment-15994639 ] ZhaoYang edited comment on CASSANDRA-13409 at 5/3/17 10:29 AM: --- || Source || Test || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | [circle-ci | https://circleci.com/gh/jasonstack/cassandra/18] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | cassi... sorry no access| was (Author: jasonstack): || Source || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994639#comment-15994639 ] ZhaoYang commented on CASSANDRA-13409: -- || Source || | [3.11|https://github.com/jasonstack/cassandra-dtest/commits/CASSANDRA-13409] | | [dtest|https://github.com/jasonstack/cassandra/commits/CASSANDRA-13409-3.11] | > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13409) Materialized Views: View cells are resurrected
[ https://issues.apache.org/jira/browse/CASSANDRA-13409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994626#comment-15994626 ] ZhaoYang commented on CASSANDRA-13409: -- {quote} Merging rows must be commutative. If a shadowable tombstone is applied after a row tombstone, it will replace that tombstone; if a row marker shadows the shadowable tombstone before the row containing the original data is applied, then any dead cells in said data will be resurrected; {quote} if a regular row tombstone is applied to view, then there will be no shadowable tombstone applicable for view because no existing data in base. {quote} Shadowable tombstones shouldn't compact away previous row tombstones or even deleted cells; if the relevant tombstones have been GCed from the base table, then a base table update won't carry them anymore (alongside a newer row marker). {quote} same as above, I think regular-tombstone and shadowable-tombtone won't be co-exist in the same row.. > Materialized Views: View cells are resurrected > -- > > Key: CASSANDRA-13409 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13409 > Project: Cassandra > Issue Type: Bug > Components: Local Write-Read Paths, Materialized Views >Reporter: Duarte Nunes >Assignee: ZhaoYang > > Consider the following commands, ran against trunk@0f054fee5c: > {code:xml} > echo "create keyspace ks WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1};" | bin/cqlsh > echo "create table ks.base (p int primary key, v1 int, v2 int) with > gc_grace_seconds = 1;" | bin/cqlsh > echo "create materialized view ks.my_view as select * from ks.base where p is > not null and v1 is not null primary key (v1, p);" | bin/cqlsh > echo "insert into ks.base (p, v1, v2) values (3, 1, 3) using timestamp 1;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "delete from ks.base using timestamp 2 where p = 3;" | bin/cqlsh > bin/nodetool flush ks my_view base > echo "insert into ks.base (p, v1) values (3, 1) using timestamp 3;" | > bin/cqlsh > bin/nodetool flush ks my_view base > echo "select * from ks.my_view;" | bin/cqlsh > v1 | p | v2 > +---+ > 1 | 3 | 3 > (1 rows) > echo "select * from ks.base;" | bin/cqlsh > p | v1 | v2 > ---++-- > 3 | 1 | null > (1 rows) > {code} > As you can see, this incorrectly brings back cell v2=3. > There is one definitive problem and a potential one: > * Merging rows must be commutative. If a shadowable tombstone is applied > after a row tombstone, it will replace that tombstone; if a row marker > shadows the shadowable tombstone before the row containing the original data > is applied, then any dead cells in said data will be resurrected; > * Shadowable tombstones shouldn't compact away previous row tombstones or > even deleted cells; if the relevant tombstones have been GCed from the base > table, then a base table update won't carry them anymore (alongside a newer > row marker). -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994517#comment-15994517 ] Stefan Podkowinski commented on CASSANDRA-13486: License files need to go to {{lib/licenses}} in Cassandra. My comment regarding the "bundling as separate jar" was not about the mentioned capiblock.jar or license, but the implementation in the pull request. What stops you from creating a jar file from your custom row cache implementation that you put on github as separate project, along with the configuration instructions? Users would just have to download the jar, put it into Cassandra's lib folder and configure cassandra.yaml to make use of the row cache implementation. > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994503#comment-15994503 ] Amitkumar Ghatwal edited comment on CASSANDRA-13486 at 5/3/17 9:01 AM: --- [~spod] - The reference to the capiblock library source code : https://github.com/rellermeyer/capiflash/tree/master/src/java/capiblock . This implementation is currently in a forked repo , however the capiblock library code will be up-streamed in the mainline : https://github.com/open-power/capiflash pretty soon by [~rjan]. As regards to the license/(bundling as a separate jar) for capiblock.jar , requesting [~ReiOdaira] to respond to this query. It's already been bundled as a separate jar - https://github.com/ghatwala/cassandra/blob/ppc64le-CAPI/trunk/lib/capiblock.jar ( if that was the question ) was (Author: amitkumar_ghatwal): [~spod] - The reference to the capiblock library source code : https://github.com/rellermeyer/capiflash/tree/master/src/java/capiblock . This implementation is currently in a forked repo , however the capiblock library code will up-streamed in the mainline : https://github.com/open-power/capiflash pretty soon by [~rjan]. As regards to the license/(bundling as a separate jar) for capiblock.jar , requesting [~ReiOdaira] to respond to this query. It's already been bundled as a separate jar - https://github.com/ghatwala/cassandra/blob/ppc64le-CAPI/trunk/lib/capiblock.jar ( if that was the question ) > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994503#comment-15994503 ] Amitkumar Ghatwal commented on CASSANDRA-13486: --- [~spod] - The reference to the capiblock library source code : https://github.com/rellermeyer/capiflash/tree/master/src/java/capiblock . This implementation is currently in a cloned repo , however the capiblock library code will up-streamed in the mainline : https://github.com/open-power/capiflash pretty soon by [~rjan]. As regards to the license/(bundling as a separate jar) for capiblock.jar , requesting [~ReiOdaira] to respond to this query. It's already been bundled as a separate jar - https://github.com/ghatwala/cassandra/blob/ppc64le-CAPI/trunk/lib/capiblock.jar ( if that was the question ) > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Comment Edited] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994503#comment-15994503 ] Amitkumar Ghatwal edited comment on CASSANDRA-13486 at 5/3/17 9:00 AM: --- [~spod] - The reference to the capiblock library source code : https://github.com/rellermeyer/capiflash/tree/master/src/java/capiblock . This implementation is currently in a forked repo , however the capiblock library code will up-streamed in the mainline : https://github.com/open-power/capiflash pretty soon by [~rjan]. As regards to the license/(bundling as a separate jar) for capiblock.jar , requesting [~ReiOdaira] to respond to this query. It's already been bundled as a separate jar - https://github.com/ghatwala/cassandra/blob/ppc64le-CAPI/trunk/lib/capiblock.jar ( if that was the question ) was (Author: amitkumar_ghatwal): [~spod] - The reference to the capiblock library source code : https://github.com/rellermeyer/capiflash/tree/master/src/java/capiblock . This implementation is currently in a cloned repo , however the capiblock library code will up-streamed in the mainline : https://github.com/open-power/capiflash pretty soon by [~rjan]. As regards to the license/(bundling as a separate jar) for capiblock.jar , requesting [~ReiOdaira] to respond to this query. It's already been bundled as a separate jar - https://github.com/ghatwala/cassandra/blob/ppc64le-CAPI/trunk/lib/capiblock.jar ( if that was the question ) > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: dtest-11381-trunk.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: 11381-3.X.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: 11381-trunk.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Status: Patch Available (was: In Progress) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 11381-3.X.txt, 11381-trunk.txt, dtest-11381-trunk.txt > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: 11381-2.1.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 11381-3.X.txt, 11381-trunk.txt, dtest-11381-trunk.txt > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: 11381-2.2.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 11381-3.X.txt, 11381-trunk.txt, dtest-11381-trunk.txt > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-11381: Attachment: (was: 11381-3.0.txt) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 11381-3.X.txt, 11381-trunk.txt, dtest-11381-trunk.txt > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-11381) Node running with join_ring=false and authentication can not serve requests
[ https://issues.apache.org/jira/browse/CASSANDRA-11381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994472#comment-15994472 ] mck commented on CASSANDRA-11381: - [~jkni], i have finally come back to this… {quote}CI revealed one small problem - when a fresh node is started with join_ring=False that has no tokens for other nodes discovered through gossip and no saved tokens, it hits an AssertionError in CassandraRoleManager setup that is not handled{quote} {{CassandraRoleManager.setupDefaultRole()}} now throws an {{IllegalStateException}} if there are no known tokens in the ring. This permits {{CassandraRoleManager.scheduleSetupTask(..)}} to retry. The {{topology_test.py:TestTopology.do_not_join_ring_test}} dtest looks ok now, locally. \\ || branch || testall || dtest || | [cassandra-2.2_11381|https://github.com/michaelsembwever/cassandra/tree/mck/cassandra-2.2_11381] | [testall|https://circleci.com/gh/michaelsembwever/cassandra/tree/mck%2Fcassandra-2.2_11381] | [dtest|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/40/] | | [cassandra-3.0_11381|https://github.com/michaelsembwever/cassandra/tree/mck/cassandra-3.0_11381] | [testall|https://circleci.com/gh/michaelsembwever/cassandra/tree/mck%2Fcassandra-3.0_11381] | [dtest|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/41/] | | [cassandra-3.11_11381|https://github.com/michaelsembwever/cassandra/tree/mck/cassandra-3.11_11381] | [testall|https://circleci.com/gh/michaelsembwever/cassandra/tree/mck%2Fcassandra-3.11_11381] | [dtest|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/42/] | | [trunk_11381|https://github.com/michaelsembwever/cassandra/tree/mck/trunk_11381] | [testall|https://circleci.com/gh/michaelsembwever/cassandra/tree/mck%2Ftrunk_11381] | [dtest|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/43/] | (the asf jenkins dtests take a while, and won't include the new [dtest|https://github.com/michaelsembwever/cassandra-dtest/tree/mck/master_11381]) > Node running with join_ring=false and authentication can not serve requests > --- > > Key: CASSANDRA-11381 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11381 > Project: Cassandra > Issue Type: Bug >Reporter: mck >Assignee: mck > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 11381-2.1.txt, 11381-2.2.txt, 11381-3.0.txt, > 11381-3.X.txt, 11381-trunk.txt, dtest-11381-trunk.txt > > > Starting up a node with {{-Dcassandra.join_ring=false}} in a cluster that has > authentication configured, eg PasswordAuthenticator, won't be able to serve > requests. This is because {{Auth.setup()}} never gets called during the > startup. > Without {{Auth.setup()}} having been called in {{StorageService}} clients > connecting to the node fail with the node throwing > {noformat} > java.lang.NullPointerException > at > org.apache.cassandra.auth.PasswordAuthenticator.authenticate(PasswordAuthenticator.java:119) > at > org.apache.cassandra.thrift.CassandraServer.login(CassandraServer.java:1471) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3505) > at > org.apache.cassandra.thrift.Cassandra$Processor$login.getResult(Cassandra.java:3489) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at com.thinkaurelius.thrift.Message.invoke(Message.java:314) > at > com.thinkaurelius.thrift.Message$Invocation.execute(Message.java:90) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:695) > at > com.thinkaurelius.thrift.TDisruptorServer$InvocationHandler.onEvent(TDisruptorServer.java:689) > at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:112) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {noformat} > The exception thrown from the > [code|https://github.com/apache/cassandra/blob/cassandra-2.0.16/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java#L119] > {code} > ResultMessage.Rows rows = > authenticateStatement.execute(QueryState.forInternalCalls(), new > QueryOptions(consistencyForUser(username), > >Lists.newArrayList(ByteBufferUtil.bytes(username; > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13486) Upstream Power arch specific code
[ https://issues.apache.org/jira/browse/CASSANDRA-13486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15994465#comment-15994465 ] Stefan Podkowinski commented on CASSANDRA-13486: Can you make sure to provide the corresponding license for capiblock.jar along with a reference to the libraries source code? As this is a feature based on a proprietary technology and the implementation seems to play nicely with the plugable row cache API, I wonder if it wouldn't make more sense to bundle this as separate jar for interested users. > Upstream Power arch specific code > - > > Key: CASSANDRA-13486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13486 > Project: Cassandra > Issue Type: Task > Components: Core >Reporter: Amitkumar Ghatwal > Attachments: CAPI_RowCache_JIRA_Description.doc > > > Hi All/ [~snazy], [~jasobrown] , [~ReiOdaira] , > As was suggested to my previous JIRA ticket : > https://issues.apache.org/jira/browse/CASSANDRA-13345 to create a separate > development branch ( for power -ppc64le ) by forking github/apache/cassandra > . > I have created my own development branch : > https://github.com/ghatwala/cassandra/tree/ppc64le-CAPI/trunk and pushed in > power arch specific features of CAPI ( Row Cache ). > Please refer PR :https://github.com/apache/cassandra/pull/108 to see all the > code changes for CAPI-Row Cache . Please kindly review the same. > Also please refer to the description document on CAPI-Row Cache. > Regards, > Amit -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org