[jira] [Comment Edited] (CASSANDRA-13241) Lower default chunk_length_in_kb from 64kb to 4kb

2018-10-18 Thread Ariel Weisberg (JIRA)


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

Ariel Weisberg edited comment on CASSANDRA-13241 at 10/18/18 11:34 PM:
---

Running
{noformat}
#!/bin/sh
echo "drop keyspace keyspace1;" | ../../bin/cqlsh
./cassandra-stress write no-warmup n=1 -pop seq=1...1 -schema 
compression=LZ4Compressor
./cassandra-stress read no-warmup n=1000 -pop dist=UNIFORM\(1...1\) 
-rate threads=32
{noformat}
64k load 
{noformat}
Results:
Op rate   :   42,237 op/s  [WRITE: 42,254 op/s]
Partition rate:   42,237 pk/s  [WRITE: 42,254 pk/s]
Row rate  :   42,237 row/s [WRITE: 42,254 row/s]
Latency mean  :4.7 ms [WRITE: 4.7 ms]
Latency median:1.6 ms [WRITE: 1.6 ms]
Latency 95th percentile   :   13.2 ms [WRITE: 13.2 ms]
Latency 99th percentile   :   85.3 ms [WRITE: 85.3 ms]
Latency 99.9th percentile :  230.0 ms [WRITE: 230.0 ms]
Latency max   :  629.1 ms [WRITE: 629.1 ms]
Total partitions  : 100,000,000 [WRITE: 100,000,000]
Total errors  :  0 [WRITE: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:39:27
{noformat}
64k read
{noformat}
Results:
Op rate   :6,576 op/s  [READ: 6,576 op/s]
Partition rate:6,576 pk/s  [READ: 6,576 pk/s]
Row rate  :6,576 row/s [READ: 6,576 row/s]
Latency mean  :4.8 ms [READ: 4.8 ms]
Latency median:3.0 ms [READ: 3.0 ms]
Latency 95th percentile   :   12.9 ms [READ: 12.9 ms]
Latency 99th percentile   :   32.6 ms [READ: 32.6 ms]
Latency 99.9th percentile :  100.8 ms [READ: 100.8 ms]
Latency max   : 14982.1 ms [READ: 14,982.1 ms]
Total partitions  : 10,000,000 [READ: 10,000,000]
Total errors  :  0 [READ: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:25:20
{noformat}

16k write
{noformat}
Results:
Op rate   :   42,266 op/s  [WRITE: 42,266 op/s]
Partition rate:   42,266 pk/s  [WRITE: 42,266 pk/s]
Row rate  :   42,266 row/s [WRITE: 42,266 row/s]
Latency mean  :4.7 ms [WRITE: 4.7 ms]
Latency median:1.6 ms [WRITE: 1.6 ms]
Latency 95th percentile   :   13.1 ms [WRITE: 13.1 ms]
Latency 99th percentile   :   83.2 ms [WRITE: 83.2 ms]
Latency 99.9th percentile :  218.1 ms [WRITE: 218.1 ms]
Latency max   :  886.0 ms [WRITE: 886.0 ms]
Total partitions  : 100,000,000 [WRITE: 100,000,000]
Total errors  :  0 [WRITE: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:39:25
{noformat}
16k read
{noformat}
Op rate   :8,622 op/s  [READ: 8,622 op/s]
Partition rate:8,622 pk/s  [READ: 8,622 pk/s]
Row rate  :8,622 row/s [READ: 8,622 row/s]
Latency mean  :3.7 ms [READ: 3.7 ms]
Latency median:2.6 ms [READ: 2.6 ms]
Latency 95th percentile   :9.0 ms [READ: 9.0 ms]
Latency 99th percentile   :   22.2 ms [READ: 22.2 ms]
Latency 99.9th percentile :   63.5 ms [READ: 63.5 ms]
Latency max   :  256.8 ms [READ: 256.8 ms]
Total partitions  : 10,000,000 [READ: 10,000,000]
Total errors  :  0 [READ: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:19:19
{noformat}

This read workload is 2x faster with 16k chunks vs 64k chunks.


was (Author: aweisberg):
Running
{noformat}
#!/bin/sh
echo "drop keyspace keyspace1;" | ../../bin/cqlsh
./cassandra-stress write no-warmup n=1 -pop seq=1...1 -schema 
compression=LZ4Compressor
./cassandra-stress read no-warmup n=1000 -pop dist=UNIFORM\(1...1\) 
-rate threads=32
{noformat}
64k load 
{noformat}
Results:
Op rate   :   42,237 op/s  [WRITE: 42,254 op/s]
Partition rate:   42,237 pk/s  [WRITE: 42,254 pk/s]
Row rate  :   42,237 row/s [WRITE: 42,254 row/s]
Latency mean  :4.7 ms [WRITE: 4.7 ms]
Latency median:1.6 ms [WRITE: 1.6 ms]
Latency 95th percentile   :   13.2 ms [WRITE: 13.2 ms]
Latency 99th percentile   :   85.3 ms [WRITE: 85.3 ms]
Latency 99.9th 

[jira] [Commented] (CASSANDRA-13241) Lower default chunk_length_in_kb from 64kb to 4kb

2018-10-18 Thread Ariel Weisberg (JIRA)


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

Ariel Weisberg commented on CASSANDRA-13241:


Running
{noformat}
#!/bin/sh
echo "drop keyspace keyspace1;" | ../../bin/cqlsh
./cassandra-stress write no-warmup n=1 -pop seq=1...1 -schema 
compression=LZ4Compressor
./cassandra-stress read no-warmup n=1000 -pop dist=UNIFORM\(1...1\) 
-rate threads=32
{noformat}
64k load 
{noformat}
Results:
Op rate   :   42,237 op/s  [WRITE: 42,254 op/s]
Partition rate:   42,237 pk/s  [WRITE: 42,254 pk/s]
Row rate  :   42,237 row/s [WRITE: 42,254 row/s]
Latency mean  :4.7 ms [WRITE: 4.7 ms]
Latency median:1.6 ms [WRITE: 1.6 ms]
Latency 95th percentile   :   13.2 ms [WRITE: 13.2 ms]
Latency 99th percentile   :   85.3 ms [WRITE: 85.3 ms]
Latency 99.9th percentile :  230.0 ms [WRITE: 230.0 ms]
Latency max   :  629.1 ms [WRITE: 629.1 ms]
Total partitions  : 100,000,000 [WRITE: 100,000,000]
Total errors  :  0 [WRITE: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:39:27
{noformat}
64k read
{noformat}
Results:
Op rate   :6,576 op/s  [READ: 6,576 op/s]
Partition rate:6,576 pk/s  [READ: 6,576 pk/s]
Row rate  :6,576 row/s [READ: 6,576 row/s]
Latency mean  :4.8 ms [READ: 4.8 ms]
Latency median:3.0 ms [READ: 3.0 ms]
Latency 95th percentile   :   12.9 ms [READ: 12.9 ms]
Latency 99th percentile   :   32.6 ms [READ: 32.6 ms]
Latency 99.9th percentile :  100.8 ms [READ: 100.8 ms]
Latency max   : 14982.1 ms [READ: 14,982.1 ms]
Total partitions  : 10,000,000 [READ: 10,000,000]
Total errors  :  0 [READ: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:25:20

16k write
Results:
Op rate   :   42,266 op/s  [WRITE: 42,266 op/s]
Partition rate:   42,266 pk/s  [WRITE: 42,266 pk/s]
Row rate  :   42,266 row/s [WRITE: 42,266 row/s]
Latency mean  :4.7 ms [WRITE: 4.7 ms]
Latency median:1.6 ms [WRITE: 1.6 ms]
Latency 95th percentile   :   13.1 ms [WRITE: 13.1 ms]
Latency 99th percentile   :   83.2 ms [WRITE: 83.2 ms]
Latency 99.9th percentile :  218.1 ms [WRITE: 218.1 ms]
Latency max   :  886.0 ms [WRITE: 886.0 ms]
Total partitions  : 100,000,000 [WRITE: 100,000,000]
Total errors  :  0 [WRITE: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:39:25
{noformat}
16k read
{noformat}
Op rate   :8,622 op/s  [READ: 8,622 op/s]
Partition rate:8,622 pk/s  [READ: 8,622 pk/s]
Row rate  :8,622 row/s [READ: 8,622 row/s]
Latency mean  :3.7 ms [READ: 3.7 ms]
Latency median:2.6 ms [READ: 2.6 ms]
Latency 95th percentile   :9.0 ms [READ: 9.0 ms]
Latency 99th percentile   :   22.2 ms [READ: 22.2 ms]
Latency 99.9th percentile :   63.5 ms [READ: 63.5 ms]
Latency max   :  256.8 ms [READ: 256.8 ms]
Total partitions  : 10,000,000 [READ: 10,000,000]
Total errors  :  0 [READ: 0]
Total GC count: 0
Total GC memory   : 0.000 KiB
Total GC time :0.0 seconds
Avg GC time   :NaN ms
StdDev GC time:0.0 ms
Total operation time  : 00:19:19
{noformat}

This read workload is 2x faster with 16k chunks vs 64k chunks.

> Lower default chunk_length_in_kb from 64kb to 4kb
> -
>
> Key: CASSANDRA-13241
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13241
> Project: Cassandra
>  Issue Type: Wish
>  Components: Core
>Reporter: Benjamin Roth
>Assignee: Ariel Weisberg
>Priority: Major
> Attachments: CompactIntegerSequence.java, 
> CompactIntegerSequenceBench.java, CompactSummingIntegerSequence.java
>
>
> Having a too low chunk size may result in some wasted disk space. A too high 
> chunk size may lead to massive overreads and may have a critical impact on 
> overall system performance.
> In my case, the default chunk size lead to peak read IOs of up to 1GB/s and 
> avg reads of 200MB/s. After lowering 

[jira] [Commented] (CASSANDRA-13241) Lower default chunk_length_in_kb from 64kb to 4kb

2018-10-18 Thread Ariel Weisberg (JIRA)


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

Ariel Weisberg commented on CASSANDRA-13241:


For those who were asking about the performance impact of block size on 
compression I wrote a microbenchmark.

https://pastebin.com/RHDNLGdC

 [java] Benchmark   Mode  Cnt   
   Score  Error  Units
 [java] CompactIntegerSequenceBench.benchCompressLZ4Fast16kthrpt   15  
331190055.685 ±  8079758.044  ops/s
 [java] CompactIntegerSequenceBench.benchCompressLZ4Fast32kthrpt   15  
353024925.655 ±  7980400.003  ops/s
 [java] CompactIntegerSequenceBench.benchCompressLZ4Fast64kthrpt   15  
365664477.654 ± 10083336.038  ops/s
 [java] CompactIntegerSequenceBench.benchCompressLZ4Fast8k thrpt   15  
305518114.172 ± 11043705.883  ops/s
 [java] CompactIntegerSequenceBench.benchDecompressLZ4Fast16k  thrpt   15  
688369529.911 ± 25620873.933  ops/s
 [java] CompactIntegerSequenceBench.benchDecompressLZ4Fast32k  thrpt   15  
703635848.895 ±  5296941.704  ops/s
 [java] CompactIntegerSequenceBench.benchDecompressLZ4Fast64k  thrpt   15  
695537044.676 ± 17400763.731  ops/s
 [java] CompactIntegerSequenceBench.benchDecompressLZ4Fast8k   thrpt   15  
727725713.128 ±  4252436.331  ops/s

To summarize, compression is 8.5% slower and decompression is 1% faster. This 
is measuring the impact on compression/decompression not the huge impact that 
would occur if we decompressed data we don't need less often.

I didn't test decompression of Snappy and LZ4 high, but I did test compression.

Snappy:
 [java] CompactIntegerSequenceBench.benchCompressSnappy16k   thrpt2  
196574766.116  ops/s
 [java] CompactIntegerSequenceBench.benchCompressSnappy32k   thrpt2  
198538643.844  ops/s
 [java] CompactIntegerSequenceBench.benchCompressSnappy64k   thrpt2  
194600497.613  ops/s
 [java] CompactIntegerSequenceBench.benchCompressSnappy8kthrpt2  
186040175.059  ops/s

LZ4 high compressor:
 [java] CompactIntegerSequenceBench.bench16k  thrpt2  20822947.578  
ops/s
 [java] CompactIntegerSequenceBench.bench32k  thrpt2  12037342.253  
ops/s
 [java] CompactIntegerSequenceBench.bench64k  thrpt2   6782534.469  
ops/s
 [java] CompactIntegerSequenceBench.bench8k   thrpt2  32254619.594  
ops/s

LZ4 high is the one instance where block size mattered a lot. It's a bit 
suspicious really when you look at the ratio of performance to block size being 
close to 1:1. I couldn't spot a bug in the benchmark though.

Compression ratios with LZ4 fast for the text of Alice in Wonderland was:

Chunk size 8192, ratio 0.709473
Chunk size 16384, ratio 0.667236
Chunk size 32768, ratio 0.634735
Chunk size 65536, ratio 0.607208

By way of comparison I also ran deflate with maximum compression:

Chunk size 8192, ratio 0.426434
Chunk size 16384, ratio 0.402423
Chunk size 32768, ratio 0.381627
Chunk size 65536, ratio 0.364865

> Lower default chunk_length_in_kb from 64kb to 4kb
> -
>
> Key: CASSANDRA-13241
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13241
> Project: Cassandra
>  Issue Type: Wish
>  Components: Core
>Reporter: Benjamin Roth
>Assignee: Ariel Weisberg
>Priority: Major
> Attachments: CompactIntegerSequence.java, 
> CompactIntegerSequenceBench.java, CompactSummingIntegerSequence.java
>
>
> Having a too low chunk size may result in some wasted disk space. A too high 
> chunk size may lead to massive overreads and may have a critical impact on 
> overall system performance.
> In my case, the default chunk size lead to peak read IOs of up to 1GB/s and 
> avg reads of 200MB/s. After lowering chunksize (of course aligned with read 
> ahead), the avg read IO went below 20 MB/s, rather 10-15MB/s.
> The risk of (physical) overreads is increasing with lower (page cache size) / 
> (total data size) ratio.
> High chunk sizes are mostly appropriate for bigger payloads pre request but 
> if the model consists rather of small rows or small resultsets, the read 
> overhead with 64kb chunk size is insanely high. This applies for example for 
> (small) skinny rows.
> Please also see here:
> https://groups.google.com/forum/#!topic/scylladb-dev/j_qXSP-6-gY
> To give you some insights what a difference it can make (460GB data, 128GB 
> RAM):
> - Latency of a quite large CF: https://cl.ly/1r3e0W0S393L
> - Disk throughput: https://cl.ly/2a0Z250S1M3c
> - This shows, that the request distribution remained the same, so no "dynamic 
> snitch magic": https://cl.ly/3E0t1T1z2c0J



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (CASSANDRA-14832) Other threads can take all newly allocated BufferPool chunks before original and cause reallocation

2018-10-18 Thread Abhish Agarwal (JIRA)


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

Abhish Agarwal commented on CASSANDRA-14832:


I agree with the approach here. There is a possibility of starvation given that 
there is no memory available and multiple processes vie for it. Correct way is 
to deduct the required memory before leaving it to free pool. 

> Other threads can take all newly allocated BufferPool chunks before original 
> and cause reallocation
> ---
>
> Key: CASSANDRA-14832
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14832
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: Jon Meredith
>Priority: Minor
>
> When BufferPool does not have any free Chunks to satisfy a request, the 
> calling thread allocates a new large block of memory which it breaks up into 
> chunks and adds to the free chunks queue, then pulls from the queue to 
> satisfy it's own allocation.
> If enough other threads request chunks it is possible for the queue to be 
> exhausted before the original allocating thread is able to pull of it's own 
> allocation, causing the original allocator to loop and attempt to allocate 
> more memory.  This is unfair to the original caller and may cause it to block 
> on a system call to allocate more memory.
> Instead of the current behavior, allocateMoreChunks could hold back one of 
> the chunks and return it to the caller instead so that it will at most call 
> allocate once.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-11710) Cassandra dies with OOM when running stress

2018-10-18 Thread ASF GitHub Bot (JIRA)


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

ASF GitHub Bot updated CASSANDRA-11710:
---
Labels: pull-request-available  (was: )

> Cassandra dies with OOM when running stress
> ---
>
> Key: CASSANDRA-11710
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11710
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Marcus Eriksson
>Assignee: Branimir Lambov
>Priority: Major
>  Labels: pull-request-available
> Fix For: 3.6
>
>
> Running stress on trunk dies with OOM after about 3.5M ops:
> {code}
> ERROR [CompactionExecutor:1] 2016-05-04 15:01:31,231 
> JVMStabilityInspector.java:137 - JVM state determined to be unstable.  
> Exiting forcefully due to:
> java.lang.OutOfMemoryError: Direct buffer memory
> at java.nio.Bits.reserveMemory(Bits.java:693) ~[na:1.8.0_91]
> at java.nio.DirectByteBuffer.(DirectByteBuffer.java:123) 
> ~[na:1.8.0_91]
> at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:311) 
> ~[na:1.8.0_91]
> at 
> org.apache.cassandra.utils.memory.BufferPool.allocateDirectAligned(BufferPool.java:519)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool.access$600(BufferPool.java:46) 
> ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool$GlobalPool.allocateMoreChunks(BufferPool.java:276)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool$GlobalPool.get(BufferPool.java:249)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool$LocalPool.addChunkFromGlobalPool(BufferPool.java:338)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool$LocalPool.get(BufferPool.java:381)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool.maybeTakeFromPool(BufferPool.java:142)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool.takeFromPool(BufferPool.java:114)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.memory.BufferPool.get(BufferPool.java:84) 
> ~[main/:na]
> at org.apache.cassandra.cache.ChunkCache.load(ChunkCache.java:135) 
> ~[main/:na]
> at org.apache.cassandra.cache.ChunkCache.load(ChunkCache.java:19) 
> ~[main/:na]
> at 
> com.github.benmanes.caffeine.cache.BoundedLocalCache$BoundedLocalLoadingCache.lambda$new$0(BoundedLocalCache.java:2949)
>  ~[caffeine-2.2.6.jar:na]
> at 
> com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$15(BoundedLocalCache.java:1807)
>  ~[caffeine-2.2.6.jar:na]
> at 
> java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853) 
> ~[na:1.8.0_91]
> at 
> com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:1805)
>  ~[caffeine-2.2.6.jar:na]
> at 
> com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:1788)
>  ~[caffeine-2.2.6.jar:na]
> at 
> com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:97)
>  ~[caffeine-2.2.6.jar:na]
> at 
> com.github.benmanes.caffeine.cache.LocalLoadingCache.get(LocalLoadingCache.java:66)
>  ~[caffeine-2.2.6.jar:na]
> at 
> org.apache.cassandra.cache.ChunkCache$CachingRebufferer.rebuffer(ChunkCache.java:215)
>  ~[main/:na]
> at 
> org.apache.cassandra.cache.ChunkCache$CachingRebufferer.rebuffer(ChunkCache.java:193)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.LimitingRebufferer.rebuffer(LimitingRebufferer.java:34)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.RandomAccessReader.reBufferAt(RandomAccessReader.java:78)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.RandomAccessReader.reBuffer(RandomAccessReader.java:72)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.RebufferingInputStream.read(RebufferingInputStream.java:88)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.RebufferingInputStream.readFully(RebufferingInputStream.java:66)
>  ~[main/:na]
> at 
> org.apache.cassandra.io.util.RebufferingInputStream.readFully(RebufferingInputStream.java:60)
>  ~[main/:na]
> at 
> org.apache.cassandra.utils.ByteBufferUtil.read(ByteBufferUtil.java:400) 
> ~[main/:na]
> at 
> org.apache.cassandra.utils.ByteBufferUtil.readWithVIntLength(ByteBufferUtil.java:338)
>  ~[main/:na]
> at 
> org.apache.cassandra.db.marshal.AbstractType.readValue(AbstractType.java:414) 
> ~[main/:na]
> at 
> org.apache.cassandra.db.rows.Cell$Serializer.deserialize(Cell.java:243) 
> ~[main/:na]
> at 
> org.apache.cassandra.db.rows.UnfilteredSerializer.readSimpleColumn(UnfilteredSerializer.java:473)
>  ~[main/:na]
> at 
> 

[jira] [Created] (CASSANDRA-14832) Other threads can take all newly allocated BufferPool chunks before original and cause reallocation

2018-10-18 Thread Jon Meredith (JIRA)
Jon Meredith created CASSANDRA-14832:


 Summary: Other threads can take all newly allocated BufferPool 
chunks before original and cause reallocation
 Key: CASSANDRA-14832
 URL: https://issues.apache.org/jira/browse/CASSANDRA-14832
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jon Meredith


When BufferPool does not have any free Chunks to satisfy a request, the calling 
thread allocates a new large block of memory which it breaks up into chunks and 
adds to the free chunks queue, then pulls from the queue to satisfy it's own 
allocation.

If enough other threads request chunks it is possible for the queue to be 
exhausted before the original allocating thread is able to pull of it's own 
allocation, causing the original allocator to loop and attempt to allocate more 
memory.  This is unfair to the original caller and may cause it to block on a 
system call to allocate more memory.

Instead of the current behavior, allocateMoreChunks could hold back one of the 
chunks and return it to the caller instead so that it will at most call 
allocate once.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14721) sstabledump displays incorrect value for "position" key

2018-10-18 Thread Chris Lohfink (JIRA)


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

Chris Lohfink updated CASSANDRA-14721:
--
Reviewers: Chris Lohfink

> sstabledump displays incorrect value for "position" key
> ---
>
> Key: CASSANDRA-14721
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14721
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Reporter: Damien Stevenson
>Assignee: Cameron Zemek
>Priority: Minor
> Attachments: cassandra-dump.patch
>
>
> When partitions with multiple rows are displayed using sstabledump, the 
> "position" value the first row of each partition is incorrect.
> For example:
> {code:java}
> sstabledump mc-1-big-Data.db
> [
>   {
> "partition" : {
>   "key" : [ "1", "24" ],
>   "position" : 0
> },
> "rows" : [
>   {
> "type" : "row",
> "position" : 66, 
> "clustering" : [ "2013-12-10 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.290086Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 8 },
>   { "name" : "chanceofrain", "value" : 0.1 },
>   { "name" : "feelslike", "value" : 8 },
>   { "name" : "humidity", "value" : 0.76 },
>   { "name" : "wind", "value" : 10.0 }
> ]
>   },
>   {
> "type" : "row",
> "position" : 66, 
> "clustering" : [ "2013-12-11 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.295369Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 4 },
>   { "name" : "chanceofrain", "value" : 0.3 },
>   { "name" : "feelslike", "value" : 4 },
>   { "name" : "humidity", "value" : 0.9 },
>   { "name" : "wind", "value" : 12.0 }
> ]
>   },
>   {
> "type" : "row",
> "position" : 105,
> "clustering" : [ "2013-12-12 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.300841Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 3 },
>   { "name" : "chanceofrain", "value" : 0.2 },
>   { "name" : "feelslike", "value" : 3 },
>   { "name" : "humidity", "value" : 0.68 },
>   { "name" : "wind", "value" : 6.0 }
> ]
>   }
> ]
>   }
> ]
> {code}
>  The expected output is:
> {code:java}
> [
>   {
> "partition" : {
>   "key" : [ "1", "24" ],
>   "position" : 0
> },
> "rows" : [
>   {
> "type" : "row",
> "position" : 28,
> "clustering" : [ "2013-12-10 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.290086Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 8 },
>   { "name" : "chanceofrain", "value" : 0.1 },
>   { "name" : "feelslike", "value" : 8 },
>   { "name" : "humidity", "value" : 0.76 },
>   { "name" : "wind", "value" : 10.0 }
> ]
>   },
>   {
> "type" : "row",
> "position" : 66,
> "clustering" : [ "2013-12-11 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.295369Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 4 },
>   { "name" : "chanceofrain", "value" : 0.3 },
>   { "name" : "feelslike", "value" : 4 },
>   { "name" : "humidity", "value" : 0.9 },
>   { "name" : "wind", "value" : 12.0 }
> ]
>   },
>   {
> "type" : "row",
> "position" : 105,
> "clustering" : [ "2013-12-12 00:00:00.000Z" ],
> "liveness_info" : { "tstamp" : "2018-09-12T05:01:09.300841Z" },
> "cells" : [
>   { "name" : "centigrade", "value" : 3 },
>   { "name" : "chanceofrain", "value" : 0.2 },
>   { "name" : "feelslike", "value" : 3 },
>   { "name" : "humidity", "value" : 0.68 },
>   { "name" : "wind", "value" : 6.0 }
> ]
>   }
> ]
>   }
> ]
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14820) Upgrade to 4.0 fails with NullPointerException

2018-10-18 Thread C. Scott Andreas (JIRA)


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

C. Scott Andreas commented on CASSANDRA-14820:
--

Thanks [~aweisberg] and [~djoshi3].

[~tommy_s], thank you very much for this report!

> Upgrade to 4.0 fails with NullPointerException
> --
>
> Key: CASSANDRA-14820
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14820
> Project: Cassandra
>  Issue Type: Bug
>  Components: 4.0
>Reporter: Tommy Stendahl
>Assignee: Ariel Weisberg
>Priority: Major
>
> I tested to upgrade an existing cluster to latest 4.0 but it fails with a 
> NullPointerException, I upgraded from 3.0.15 but upgrading from any 3.0.x or 
> 3.11.x to 4.0 will give the same fault.
> {noformat}
>  
> 2018-10-12T11:27:02.261+0200 ERROR [main] CassandraDaemon.java:251 Error 
> while loading schema: 
> java.lang.NullPointerException: null
>  at org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:156)
>  at 
> org.apache.cassandra.serializers.AbstractTextSerializer.deserialize(AbstractTextSerializer.java:41)
>  at 
> org.apache.cassandra.serializers.AbstractTextSerializer.deserialize(AbstractTextSerializer.java:28)
>  at 
> org.apache.cassandra.db.marshal.AbstractType.compose(AbstractType.java:116)
>  at 
> org.apache.cassandra.cql3.UntypedResultSet$Row.getString(UntypedResultSet.java:267)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.createTableParamsFromRow(SchemaKeyspace.java:997)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.fetchTable(SchemaKeyspace.java:973)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.fetchTables(SchemaKeyspace.java:927)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.fetchKeyspace(SchemaKeyspace.java:886)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.fetchKeyspacesWithout(SchemaKeyspace.java:877)
>  at 
> org.apache.cassandra.schema.SchemaKeyspace.fetchNonSystemKeyspaces(SchemaKeyspace.java:865)
>  at org.apache.cassandra.schema.Schema.loadFromDisk(Schema.java:102)
>  at org.apache.cassandra.schema.Schema.loadFromDisk(Schema.java:91)
>  at 
> org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:247)
>  at 
> org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:590)
>  at 
> org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:679)
> {noformat}
>  The problem seams to be line 997 in SchemaKeyspace.java
>  
> {noformat}
> .speculativeWriteThreshold(SpeculativeRetryPolicy.fromString(row.getString("speculative_write_threshold"{noformat}
> speculative_write_threshold is a new table option introduced in 
> CASSANDRA-14404, when upgrading the table option is missing and we get a 
> NullPointerException on this line.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14787) nodetool status "Load" columns has wrong width

2018-10-18 Thread Chris Lohfink (JIRA)


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

Chris Lohfink updated CASSANDRA-14787:
--
Reviewers: Chris Lohfink

> nodetool status "Load" columns has wrong width
> --
>
> Key: CASSANDRA-14787
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14787
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Reporter: Lapo Luchini
>Assignee: Kirk True
>Priority: Trivial
>  Labels: lhf, nodetool, pull-request-available
> Fix For: 4.x
>
> Attachments: CASSANDRA-14787.txt
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Using Cassandra 3.11.2 on FreeBSD, I get:
> {code:java}
> Status=Up/Down
> |/ State=Normal/Leaving/Joining/Moving
> --  AddressLoad   Tokens   Owns (effective)  Host ID ...
> UN  server1.andxor.it  11.11 MiB  256  39.6% ...
> UN  server2.andxor.it  32.04 MiB  256  41.8% ...
> UN  server3.andxor.it  519.33 KiB  256  40.0% ...
> UN  server4.andxor.it  10.95 MiB  256  40.3% ...
> UN  server5.andxor.it  11.03 MiB  256  38.4% ...
> {code}
> AFAICT this is caused by {{"%-9s"}} in 
> [Status.java:292|https://github.com/apache/cassandra/blob/06209037ea56b5a2a49615a99f1542d6ea1b2947/src/java/org/apache/cassandra/tools/nodetool/Status.java#L292]
>  which should be probably a 10 instead of 9.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14781) Log message when mutation passed to CommitLog#add(Mutation) is too large is not descriptive enough

2018-10-18 Thread Chris Lohfink (JIRA)


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

Chris Lohfink updated CASSANDRA-14781:
--
Reviewer: Chris Lohfink

> Log message when mutation passed to CommitLog#add(Mutation) is too large is 
> not descriptive enough
> --
>
> Key: CASSANDRA-14781
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14781
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local Write-Read Paths
>Reporter: Jordan West
>Assignee: Tom Petracca
>Priority: Major
> Fix For: 3.0.x, 3.11.x, 4.0.x
>
> Attachments: CASSANDRA-14781.patch, CASSANDRA-14781_3.0.patch
>
>
> When hitting 
> [https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java#L256-L257],
>  the log message produced does not help the operator track down what data is 
> being written. At a minimum the keyspace and cfIds involved would be useful 
> (and are available) – more detail might not be reasonable to include. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14781) Log message when mutation passed to CommitLog#add(Mutation) is too large is not descriptive enough

2018-10-18 Thread Chris Lohfink (JIRA)


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

Chris Lohfink commented on CASSANDRA-14781:
---

To cover extreme cases, can you add a limit of like 10 tables then add a " ... 
and X more" or something? Also can you include the partition keys with a 
similar cap to prevent the string from getting too large. For the common case 
where theres only 1 large mutation or a bunch to a single partition that would 
be monumentally helpful.

> Log message when mutation passed to CommitLog#add(Mutation) is too large is 
> not descriptive enough
> --
>
> Key: CASSANDRA-14781
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14781
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local Write-Read Paths
>Reporter: Jordan West
>Assignee: Tom Petracca
>Priority: Major
> Fix For: 3.0.x, 3.11.x, 4.0.x
>
> Attachments: CASSANDRA-14781.patch, CASSANDRA-14781_3.0.patch
>
>
> When hitting 
> [https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java#L256-L257],
>  the log message produced does not help the operator track down what data is 
> being written. At a minimum the keyspace and cfIds involved would be useful 
> (and are available) – more detail might not be reasonable to include. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14787) nodetool status "Load" columns has wrong width

2018-10-18 Thread Chris Lohfink (JIRA)


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

Chris Lohfink commented on CASSANDRA-14787:
---

The offset should be from the max width instead of hard coded since it can vary 
so much. The other nodetool outputs have been moving to use {{TableBuilder}} so 
that it always aligns properly. Perhaps this table can be changed to use it as 
well.

> nodetool status "Load" columns has wrong width
> --
>
> Key: CASSANDRA-14787
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14787
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Reporter: Lapo Luchini
>Assignee: Kirk True
>Priority: Trivial
>  Labels: lhf, nodetool, pull-request-available
> Fix For: 4.x
>
> Attachments: CASSANDRA-14787.txt
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Using Cassandra 3.11.2 on FreeBSD, I get:
> {code:java}
> Status=Up/Down
> |/ State=Normal/Leaving/Joining/Moving
> --  AddressLoad   Tokens   Owns (effective)  Host ID ...
> UN  server1.andxor.it  11.11 MiB  256  39.6% ...
> UN  server2.andxor.it  32.04 MiB  256  41.8% ...
> UN  server3.andxor.it  519.33 KiB  256  40.0% ...
> UN  server4.andxor.it  10.95 MiB  256  40.3% ...
> UN  server5.andxor.it  11.03 MiB  256  38.4% ...
> {code}
> AFAICT this is caused by {{"%-9s"}} in 
> [Status.java:292|https://github.com/apache/cassandra/blob/06209037ea56b5a2a49615a99f1542d6ea1b2947/src/java/org/apache/cassandra/tools/nodetool/Status.java#L292]
>  which should be probably a 10 instead of 9.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14690) Add dtests for fqltool replay/compare

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski commented on CASSANDRA-14690:


There's also {{node.clear()}} as a possible option, instead of deleting data 
dirs in your test.

+1 from my side

> Add dtests for fqltool replay/compare
> -
>
> Key: CASSANDRA-14690
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14690
> Project: Cassandra
>  Issue Type: Test
>Reporter: Marcus Eriksson
>Assignee: Marcus Eriksson
>Priority: Major
>  Labels: fqltool
>
> We should add some basic round-trip dtests for {{fqltool replay}} and 
> {{compare}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14790) LongBufferPoolTest burn test fails assertion

2018-10-18 Thread Benedict (JIRA)


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

Benedict commented on CASSANDRA-14790:
--

For good hygiene, it's generally considered better not to commit changes that 
are orthogonal to the ticket in question, especially when the ticket is only 
fixing a failing test.  But it's such a tiny change it doesn't really warrant 
its own JIRA, and people definitely don't always stick to the scope of the 
JIRA.  So, whatever you prefer.

> LongBufferPoolTest burn test fails assertion
> 
>
> Key: CASSANDRA-14790
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14790
> Project: Cassandra
>  Issue Type: Test
>  Components: Testing
> Environment: Run under macOS 10.13.6, with patch (attached, but also 
> https://github.com/jonmeredith/cassandra/tree/failing-burn-test)
>Reporter: Jon Meredith
>Assignee: Jon Meredith
>Priority: Major
>  Labels: pull-request-available
> Attachments: 0001-Add-burn-testsome-target-to-build.xml.patch, 
> 0002-Initialize-before-running-LongBufferPoolTest.patch
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> The LongBufferPoolTest from the burn tests fails with an assertion error.  I 
> added a build target to run individual burn tests, and \{jasobrown} gave a 
> fix for the uninitialized test setup (attached), however the test now fails 
> on an assertion about recycling buffers.
> To reproduce (with patch applied)
> {{ant burn-testsome 
> -Dtest.name=org.apache.cassandra.utils.memory.LongBufferPoolTest 
> -Dtest.methods=testAllocate}}
> Output
> {{    [junit] Testcase: 
> testAllocate(org.apache.cassandra.utils.memory.LongBufferPoolTest): FAILED}}
> {{    [junit] null}}
> {{    [junit] junit.framework.AssertionFailedError}}
> {{    [junit] at 
> org.apache.cassandra.utils.memory.BufferPool$Debug.check(BufferPool.java:204)}}
> {{    [junit] at 
> org.apache.cassandra.utils.memory.BufferPool.assertAllRecycled(BufferPool.java:181)}}
> {{    [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest.testAllocate(LongBufferPoolTest.java:350)}}
> {{    [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest.testAllocate(LongBufferPoolTest.java:54)}}
> All major branches from 3.0 and later have issues, however the trunk branch 
> also warns about references not being released before the reference is 
> garbage collected.
> {{[junit] ERROR [Reference-Reaper:1] 2018-09-25 13:59:54,089 Ref.java:224 - 
> LEAK DETECTED: a reference 
> (org.apache.cassandra.utils.concurrent.Ref$State@7f58d19a) to @623704362 was 
> not released before the reference was garbage collected}}
> {{ [junit] ERROR [Reference-Reaper:1] 2018-09-25 13:59:54,089 Ref.java:255 - 
> Allocate trace org.apache.cassandra.utils.concurrent.Ref$State@7f58d19a:}}
> {{ [junit] Thread[pool-2-thread-24,5,main]}}
> {{ [junit] at java.lang.Thread.getStackTrace(Thread.java:1559)}}
> {{ [junit] at 
> org.apache.cassandra.utils.concurrent.Ref$Debug.(Ref.java:245)}}
> {{ [junit] at 
> org.apache.cassandra.utils.concurrent.Ref$State.(Ref.java:175)}}
> {{ [junit] at org.apache.cassandra.utils.concurrent.Ref.(Ref.java:97)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool$Chunk.setAttachment(BufferPool.java:663)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool$Chunk.get(BufferPool.java:803)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool$Chunk.get(BufferPool.java:793)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool$LocalPool.get(BufferPool.java:388)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool.maybeTakeFromPool(BufferPool.java:143)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool.takeFromPool(BufferPool.java:115)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.BufferPool.get(BufferPool.java:85)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest$3.allocate(LongBufferPoolTest.java:296)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest$3.testOne(LongBufferPoolTest.java:246)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest$TestUntil.call(LongBufferPoolTest.java:399)}}
> {{ [junit] at 
> org.apache.cassandra.utils.memory.LongBufferPoolTest$TestUntil.call(LongBufferPoolTest.java:379)}}
> {{ [junit] at java.util.concurrent.FutureTask.run(FutureTask.java:266)}}
> {{ [junit] at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
> {{ [junit] at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
> {{ [junit] at java.lang.Thread.run(Thread.java:748)}}
>  
> Perhaps the environment is not being set up correctly for the tests.
>   



--
This message was sent by 

[jira] [Commented] (CASSANDRA-14690) Add dtests for fqltool replay/compare

2018-10-18 Thread Marcus Eriksson (JIRA)


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

Marcus Eriksson commented on CASSANDRA-14690:
-

pushed new commits with the comments fixed

test run: https://circleci.com/workflow-run/e394d48d-0f07-4345-9fd1-ed597b1a0a2c

> Add dtests for fqltool replay/compare
> -
>
> Key: CASSANDRA-14690
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14690
> Project: Cassandra
>  Issue Type: Test
>Reporter: Marcus Eriksson
>Assignee: Marcus Eriksson
>Priority: Major
>  Labels: fqltool
>
> We should add some basic round-trip dtests for {{fqltool replay}} and 
> {{compare}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14829) Make stop-server.bat wait for Cassandra to terminate

2018-10-18 Thread Georg Dietrich (JIRA)


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

Georg Dietrich updated CASSANDRA-14829:
---
Description: 
While administering a single node Cassandra on Windows, I noticed that the 
stop-server.bat script returns before the cassandra process has actually 
terminated. For use cases like creating a script "shut down & create backup of 
data directory without having to worry about open files, then restart", it 
would be good to make stop-server.bat wait for Cassandra to terminate.

All that is needed for that is to change in 
apache-cassandra-3.11.3\bin\stop-server.bat "start /B powershell /file ..." to 
"start /WAIT /B powershell /file ..." (additional /WAIT parameter).

Does this sound reasonable?

Here is the pull request: https://github.com/apache/cassandra/pull/287

  was:
While administering a single node Cassandra on Windows, I noticed that the 
stop-server.bat script returns before the cassandra process has actually 
terminated. For use cases like creating a script "shut down & create backup of 
data directory without having to worry about open files, then restart", it 
would be good to make stop-server.bat wait for Cassandra to terminate.

All that is needed for that is to change in 
apache-cassandra-3.11.3\bin\stop-server.bat "start /B powershell /file ..." to 
"start /WAIT /B powershell /file ..." (additional /WAIT parameter).

Does this sound reasonable? If yes, I'll create a pull request.


> Make stop-server.bat wait for Cassandra to terminate
> 
>
> Key: CASSANDRA-14829
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14829
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Packaging
> Environment: Windows 10
>Reporter: Georg Dietrich
>Priority: Minor
>  Labels: easyfix, windows
> Fix For: 3.11.x, 4.x, 4.0.x
>
>
> While administering a single node Cassandra on Windows, I noticed that the 
> stop-server.bat script returns before the cassandra process has actually 
> terminated. For use cases like creating a script "shut down & create backup 
> of data directory without having to worry about open files, then restart", it 
> would be good to make stop-server.bat wait for Cassandra to terminate.
> All that is needed for that is to change in 
> apache-cassandra-3.11.3\bin\stop-server.bat "start /B powershell /file ..." 
> to "start /WAIT /B powershell /file ..." (additional /WAIT parameter).
> Does this sound reasonable?
> Here is the pull request: https://github.com/apache/cassandra/pull/287



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-13458) Diag. Events: Add unit testing support

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-13458:
---
Attachment: 0001-Add-unit-testing-support-based-on-diag.-events.patch

> Diag. Events: Add unit testing support
> --
>
> Key: CASSANDRA-13458
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13458
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: Testing
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Major
> Attachments: 0001-Add-unit-testing-support-based-on-diag.-events.patch
>
>
> Diagnostic events will improve unit testing by
> * providing test execution control instances based on CompletableFutures (see 
> [PendingRangeCalculatorServiceTest.java|https://github.com/spodkowinski/cassandra/blob/WIP-13458/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java])
>  
> * validate state and behavior by allowing you to inspect generated events 
> (see 
> [HintsServiceEventsTest.java|https://github.com/spodkowinski/cassandra/blob/WIP-13458/test/unit/org/apache/cassandra/hints/HintsServiceEventsTest.java])
> See included 
> [testing.rst|https://github.com/spodkowinski/cassandra/blob/WIP-13458/doc/source/development/testing.rst#diagnostic-events-40]
>  draft for more details. Let me know if this would be useful for you as a 
> developer.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14806) CircleCI workflow improvements and Java 11 support

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-14806:
---
Status: Patch Available  (was: In Progress)

> CircleCI workflow improvements and Java 11 support
> --
>
> Key: CASSANDRA-14806
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14806
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Build, Testing
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Major
>
> The current CircleCI config could use some cleanup and improvements. First of 
> all, the config has been made more modular by using the new CircleCI 2.1 
> executors and command elements. Based on CASSANDRA-14713, there's now also a 
> Java 11 executor that will allow running tests under Java 11. The {{build}} 
> step will be done using Java 11 in all cases, so we can catch any regressions 
> for that and also test the Java 11 multi-jar artifact during dtests, that 
> we'd also create during the release process.
> The job workflow has now also been changed to make use of the [manual job 
> approval|https://circleci.com/docs/2.0/workflows/#holding-a-workflow-for-a-manual-approval]
>  feature, which now allows running dtest jobs only on request and not 
> automatically with every commit. The Java8 unit tests still do, but that 
> could also be easily changed if needed. See [example 
> workflow|https://circleci.com/workflow-run/be25579d-3cbb-4258-9e19-b1f571873850]
>  with start_ jobs being triggers needed manual approval for starting the 
> actual jobs.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-12540) Password Management: Hardcoded Password

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski reassigned CASSANDRA-12540:
--

Assignee: (was: Stefan Podkowinski)

> Password Management: Hardcoded Password
> ---
>
> Key: CASSANDRA-12540
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12540
> Project: Cassandra
>  Issue Type: Sub-task
>Reporter: Eduardo Aguinaga
>Priority: Major
> Attachments: 12540-trunk.patch
>
>
> Overview:
> In May through June of 2016 a static analysis was performed on version 3.0.5 
> of the Cassandra source code. The analysis included an automated analysis 
> using HP Fortify v4.21 SCA and a manual analysis utilizing SciTools 
> Understand v4. The results of that analysis includes the issue below.
> Issue:
> In the file EncryptionOptions.java there are hard coded passwords on lines 23 
> and 25.
> {code:java}
> EncryptionOptions.java, lines 20-30:
> 20 public abstract class EncryptionOptions
> 21 {
> 22 public String keystore = "conf/.keystore";
> 23 public String keystore_password = "cassandra";
> 24 public String truststore = "conf/.truststore";
> 25 public String truststore_password = "cassandra";
> 26 public String[] cipher_suites = {
> 27 "TLS_RSA_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA",
> 28 "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", 
> "TLS_DHE_RSA_WITH_AES_256_CBC_SHA",
> 29 "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", 
> "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" 
> 30 };
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14107) Dynamic key rotation support for transparent data encryption

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-14107:
---
Attachment: patches-14107.tar

> Dynamic key rotation support for transparent data encryption
> 
>
> Key: CASSANDRA-14107
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14107
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Minor
>  Labels: encryption
> Fix For: 4.x
>
> Attachments: patches-14107.tar
>
>
> Handling of encryption keys as introduced in CASSANDRA-9945 takes place by 
> referencing a key alias in either cassandra.yaml, or the header of the 
> (commitlog/hints) file that has been encrypted. Using the alias as literal 
> value will work, but requires some attention when rotating keys.
> Currently each time a key is rotated (i.e. adding a new key to the keystore 
> while preserving the previous version), the alias in cassandra.yaml has to be 
> update as well and the node needs to be restarted. It would be more 
> convenient to use a symbolic reference instead. My suggestion here would be 
> to use ":latest" for referring to the latest version. In this case 
> Cassandra always picks the key with the highest version in 
> ":".
> The non-trivial part of this suggestion is how the "latest" key is referenced 
> in the file header. If we use "latest", e.g. for the commit log header, and 
> the key gets rotated, we'd now try do decrypt the file with the new key, 
> instead of the key it has been created with. Therefor we'd have to introduce 
> an extra step that will resolve the canonical version for "latest" and refer 
> to that one during any encrypt operation. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-14107) Dynamic key rotation support for transparent data encryption

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski reassigned CASSANDRA-14107:
--

Assignee: (was: Stefan Podkowinski)

> Dynamic key rotation support for transparent data encryption
> 
>
> Key: CASSANDRA-14107
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14107
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Stefan Podkowinski
>Priority: Minor
>  Labels: encryption
> Fix For: 4.x
>
> Attachments: patches-14107.tar
>
>
> Handling of encryption keys as introduced in CASSANDRA-9945 takes place by 
> referencing a key alias in either cassandra.yaml, or the header of the 
> (commitlog/hints) file that has been encrypted. Using the alias as literal 
> value will work, but requires some attention when rotating keys.
> Currently each time a key is rotated (i.e. adding a new key to the keystore 
> while preserving the previous version), the alias in cassandra.yaml has to be 
> update as well and the node needs to be restarted. It would be more 
> convenient to use a symbolic reference instead. My suggestion here would be 
> to use ":latest" for referring to the latest version. In this case 
> Cassandra always picks the key with the highest version in 
> ":".
> The non-trivial part of this suggestion is how the "latest" key is referenced 
> in the file header. If we use "latest", e.g. for the commit log header, and 
> the key gets rotated, we'd now try do decrypt the file with the new key, 
> instead of the key it has been created with. Therefor we'd have to introduce 
> an extra step that will resolve the canonical version for "latest" and refer 
> to that one during any encrypt operation. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-14102) Vault support for transparent data encryption

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski reassigned CASSANDRA-14102:
--

Assignee: (was: Stefan Podkowinski)

> Vault support for transparent data encryption
> -
>
> Key: CASSANDRA-14102
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14102
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Stefan Podkowinski
>Priority: Major
>  Labels: encryption, security
> Fix For: 4.x
>
> Attachments: patches-14102.tar
>
>
> Transparent data encryption provided by CASSANDRA-9945 can currently be used 
> for commitlog and hints. The default {{KeyProvider}} implementation that we 
> ship allows to use a local keystore for storing and retrieving keys. Thanks 
> to the pluggable handling of the {{KeyStore}} provider and basic Vault 
> related classes introduced in CASSANDRA-13971, a Vault based implementation 
> can be provided as {{KeyProvider}} as well. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14102) Vault support for transparent data encryption

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-14102:
---
Attachment: patches-14102.tar

> Vault support for transparent data encryption
> -
>
> Key: CASSANDRA-14102
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14102
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Major
>  Labels: encryption, security
> Fix For: 4.x
>
> Attachments: patches-14102.tar
>
>
> Transparent data encryption provided by CASSANDRA-9945 can currently be used 
> for commitlog and hints. The default {{KeyProvider}} implementation that we 
> ship allows to use a local keystore for storing and retrieving keys. Thanks 
> to the pluggable handling of the {{KeyStore}} provider and basic Vault 
> related classes introduced in CASSANDRA-13971, a Vault based implementation 
> can be provided as {{KeyProvider}} as well. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-14064) Allow using file based certificates instead of keystores

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski reassigned CASSANDRA-14064:
--

Assignee: (was: Stefan Podkowinski)

> Allow using file based certificates instead of keystores
> 
>
> Key: CASSANDRA-14064
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14064
> Project: Cassandra
>  Issue Type: New Feature
>  Components: Streaming and Messaging
>Reporter: Stefan Podkowinski
>Priority: Major
>  Labels: security
> Fix For: 4.x
>
> Attachments: 0001-Add-keystore-less-ssl-handling.patch
>
>
> The requirement of having to use a secure archive (keystore) for your 
> certificates and keys is not very common outside the Java ecosystem. Most 
> servers will accept individual certificate and key files and will come with 
> instructions how to generate those using openssl. This should also be an 
> option for Cassandra for users who see no reason in additionally having to 
> deal with keystores.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14064) Allow using file based certificates instead of keystores

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-14064:
---
Attachment: 0001-Add-keystore-less-ssl-handling.patch

> Allow using file based certificates instead of keystores
> 
>
> Key: CASSANDRA-14064
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14064
> Project: Cassandra
>  Issue Type: New Feature
>  Components: Streaming and Messaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Major
>  Labels: security
> Fix For: 4.x
>
> Attachments: 0001-Add-keystore-less-ssl-handling.patch
>
>
> The requirement of having to use a secure archive (keystore) for your 
> certificates and keys is not very common outside the Java ecosystem. Most 
> servers will accept individual certificate and key files and will come with 
> instructions how to generate those using openssl. This should also be an 
> option for Cassandra for users who see no reason in additionally having to 
> deal with keystores.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-13971) Automatic certificate management using Vault

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski reassigned CASSANDRA-13971:
--

Assignee: (was: Stefan Podkowinski)

> Automatic certificate management using Vault
> 
>
> Key: CASSANDRA-13971
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13971
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Streaming and Messaging
>Reporter: Stefan Podkowinski
>Priority: Major
>  Labels: security
> Fix For: 4.x
>
> Attachments: patches-13971.tar, start_vault_ssl.sh
>
>
> We've been adding security features during the last years to enable users to 
> secure their clusters, if they are willing to use them and do so correctly. 
> Some features are powerful and easy to work with, such as role based 
> authorization. Other features that require to manage a local keystore are 
> rather painful to deal with. Think about setting up SSL..
> To be fair, keystore related issues and certificate handling hasn't been 
> invented by us. We're just following Java standards there. But that doesn't 
> mean that we absolutely have to, if there are better options. I'd like to 
> give it a shoot and find out if we can automate certificate/key handling 
> (PKI) by using external APIs. In this case, the implementation will be based 
> on [Vault|https://vaultproject.io]. But certificate management services 
> offered by cloud providers may also be able to handle the use-case and I 
> intend to create a generic, pluggable API for that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-13971) Automatic certificate management using Vault

2018-10-18 Thread Stefan Podkowinski (JIRA)


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

Stefan Podkowinski updated CASSANDRA-13971:
---
Attachment: patches-13971.tar

> Automatic certificate management using Vault
> 
>
> Key: CASSANDRA-13971
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13971
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Streaming and Messaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Major
>  Labels: security
> Fix For: 4.x
>
> Attachments: patches-13971.tar, start_vault_ssl.sh
>
>
> We've been adding security features during the last years to enable users to 
> secure their clusters, if they are willing to use them and do so correctly. 
> Some features are powerful and easy to work with, such as role based 
> authorization. Other features that require to manage a local keystore are 
> rather painful to deal with. Think about setting up SSL..
> To be fair, keystore related issues and certificate handling hasn't been 
> invented by us. We're just following Java standards there. But that doesn't 
> mean that we absolutely have to, if there are better options. I'd like to 
> give it a shoot and find out if we can automate certificate/key handling 
> (PKI) by using external APIs. In this case, the implementation will be based 
> on [Vault|https://vaultproject.io]. But certificate management services 
> offered by cloud providers may also be able to handle the use-case and I 
> intend to create a generic, pluggable API for that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14498) Audit log does not include statements on some system keyspaces

2018-10-18 Thread Vinay Chella (JIRA)


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

Vinay Chella commented on CASSANDRA-14498:
--

[~eperott] Attached the patch to remove {{system}}, {{system_schema}} keyspaces 
exclusion from AuditLogManager. This patch allows the user to enable the audit 
log for system keyspaces. 

> Audit log does not include statements on some system keyspaces
> --
>
> Key: CASSANDRA-14498
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14498
> Project: Cassandra
>  Issue Type: Bug
>  Components: Auth
>Reporter: Per Otterström
>Assignee: Vinay Chella
>Priority: Major
>  Labels: audit, lhf, security
> Fix For: 4.0
>
> Attachments: 14498-trunk.txt
>
>
> Audit logs does not include statements on the "system" and "system_schema" 
> keyspace.
> It may be a common use case to whitelist queries on these keyspaces, but 
> Cassandra should not make assumptions. Users who don't want these statements 
> in their audit log are still able to whitelist them with configuration.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14498) Audit log does not include statements on some system keyspaces

2018-10-18 Thread Vinay Chella (JIRA)


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

Vinay Chella updated CASSANDRA-14498:
-
Attachment: 14498-trunk.txt

> Audit log does not include statements on some system keyspaces
> --
>
> Key: CASSANDRA-14498
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14498
> Project: Cassandra
>  Issue Type: Bug
>  Components: Auth
>Reporter: Per Otterström
>Assignee: Vinay Chella
>Priority: Major
>  Labels: audit, lhf, security
> Fix For: 4.0
>
> Attachments: 14498-trunk.txt
>
>
> Audit logs does not include statements on the "system" and "system_schema" 
> keyspace.
> It may be a common use case to whitelist queries on these keyspaces, but 
> Cassandra should not make assumptions. Users who don't want these statements 
> in their audit log are still able to whitelist them with configuration.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org