[jira] [Comment Edited] (CASSANDRA-13409) Materialized Views: View cells are resurrected

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread Cameron Zemek (JIRA)

[ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

 [ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

 [ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

 [ 
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

2017-05-03 Thread Ben Slater (JIRA)

[ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

[ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

[ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

[ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread Duarte Nunes (JIRA)

[ 
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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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.

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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.

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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.

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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.

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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!]

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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()

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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()

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread martin a langhoff (JIRA)
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

2017-05-03 Thread martin a langhoff (JIRA)
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

2017-05-03 Thread Simon Zhou (JIRA)
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

2017-05-03 Thread Jeremy Hanna (JIRA)

[ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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()

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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()

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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()

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread vasu (JIRA)

[ 
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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread martin a langhoff (JIRA)

 [ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

[ 
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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Esken 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread aweisberg
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 Esken 
Authored: 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

2017-05-03 Thread aweisberg
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 Esken 
Authored: 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

2017-05-03 Thread aweisberg
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 Weisberg 
Authored: 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

2017-05-03 Thread martin a langhoff (JIRA)
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

2017-05-03 Thread Rei Odaira (JIRA)

[ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread Jeremy Hanna (JIRA)

[ 
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

2017-05-03 Thread Jeremy Hanna (JIRA)

 [ 
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

2017-05-03 Thread Benjamin Lerer (JIRA)

[ 
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

2017-05-03 Thread Ariel Weisberg (JIRA)

 [ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

 [ 
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

2017-05-03 Thread Jeff Jirsa (JIRA)

 [ 
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

2017-05-03 Thread Shoban (JIRA)

 [ 
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

2017-05-03 Thread Shoban (JIRA)

 [ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread Shoban (JIRA)
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

2017-05-03 Thread Jason Brown (JIRA)

[ 
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

2017-05-03 Thread Christian Esken (JIRA)

[ 
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

2017-05-03 Thread Christian Esken (JIRA)

[ 
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

2017-05-03 Thread Jason Brown (JIRA)

[ 
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

2017-05-03 Thread Christian Esken (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread Stefan Podkowinski (JIRA)

 [ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread Stefan Podkowinski (JIRA)

 [ 
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

2017-05-03 Thread Christian Esken (JIRA)

[ 
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

2017-05-03 Thread jean carlo rivera ura (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

 [ 
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

2017-05-03 Thread Duarte Nunes (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread ZhaoYang (JIRA)

[ 
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

2017-05-03 Thread Stefan Podkowinski (JIRA)

[ 
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

2017-05-03 Thread Amitkumar Ghatwal (JIRA)

[ 
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

2017-05-03 Thread Amitkumar Ghatwal (JIRA)

[ 
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

2017-05-03 Thread Amitkumar Ghatwal (JIRA)

[ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

 [ 
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

2017-05-03 Thread mck (JIRA)

[ 
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

2017-05-03 Thread Stefan Podkowinski (JIRA)

[ 
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



  1   2   >