[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-23 Thread snazy
This is an automated email from the ASF dual-hosted git repository.

snazy pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit c79422d7f50472daea75c9e8a246f6d76b13d4f2
Merge: cf55294 eb2c549
Author: Robert Stupp 
AuthorDate: Fri Aug 23 14:15:26 2019 +0200

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-22 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit cf552941795c9883da359bda6017497ae33adafe
Merge: db2ad0f 0bea2fa
Author: Mick Semb Wever 
AuthorDate: Thu Aug 22 13:35:10 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 1 file changed, 1 insertion(+)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-12 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 4a27d482eeb5f94fef534de5ae332978a5a5dae7
Merge: 9a175a1 bb126c0
Author: Mick Semb Wever 
AuthorDate: Mon Aug 12 18:19:01 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-09 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5a0e720375f8983231532b256c76327209756efe
Merge: d6c049f 5d72cdd
Author: Mick Semb Wever 
AuthorDate: Fri Aug 9 19:44:22 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 .../org/apache/cassandra/dht/tokenallocator/TokenAllocation.java| 6 +-
 2 files changed, 6 insertions(+), 1 deletion(-)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-07 Thread benedict
This is an automated email from the ASF dual-hosted git repository.

benedict pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit e6c39f9fa4298fd3dd21a6c788392daa5bc139fd
Merge: 6d037b6 c7ca9b8
Author: Benedict Elliott Smith 
AuthorDate: Wed Aug 7 13:08:51 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-07 Thread marcuse
This is an automated email from the ASF dual-hosted git repository.

marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit af862475dff0945ff194eb041eab0a609cece0c1
Merge: 3ed1b79 01c6daf
Author: Marcus Eriksson 
AuthorDate: Wed Aug 7 10:56:33 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../cassandra/db/compaction/CompactionManager.java | 44 +++--
 test/unit/org/apache/cassandra/db/CleanupTest.java | 45 ++
 3 files changed, 78 insertions(+), 12 deletions(-)

diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index 896fa2a,1a9da37..bb1d585
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@@ -527,7 -468,25 +529,34 @@@ public class CompactionManager implemen
  public Iterable 
filterSSTables(LifecycleTransaction transaction)
  {
  List sortedSSTables = 
Lists.newArrayList(transaction.originals());
- Collections.sort(sortedSSTables, 
SSTableReader.sizeComparator);
+ Iterator sstableIter = 
sortedSSTables.iterator();
+ int totalSSTables = 0;
+ int skippedSStables = 0;
+ while (sstableIter.hasNext())
+ {
+ SSTableReader sstable = sstableIter.next();
++boolean needsCleanupFull = needsCleanup(sstable, 
fullRanges);
++boolean needsCleanupTransient = needsCleanup(sstable, 
transientRanges);
++//If there are no ranges for which the table needs 
cleanup either due to lack of intersection or lack
++//of the table being repaired.
+ totalSSTables++;
 -if (!needsCleanup(sstable, ranges))
++if (!needsCleanupFull && (!needsCleanupTransient || 
!sstable.isRepaired()))
+ {
 -logger.debug("Not cleaning up {} ([{}, {}]) - no 
tokens outside owned ranges {}",
 - sstable, sstable.first.getToken(), 
sstable.last.getToken(), ranges);
++logger.debug("Skipping {} ([{}, {}]) for cleanup; all 
rows should be kept. Needs cleanup full ranges: {} Needs cleanup transient 
ranges: {} Repaired: {}",
++sstable,
++sstable.first.getToken(),
++sstable.last.getToken(),
++needsCleanupFull,
++needsCleanupTransient,
++sstable.isRepaired());
+ sstableIter.remove();
+ transaction.cancel(sstable);
+ skippedSStables++;
+ }
+ }
 -logger.info("Skipping cleanup for {}/{} sstables for {}.{} 
since they are fully contained in owned ranges ({})",
 -skippedSStables, totalSSTables, 
cfStore.keyspace.getName(), cfStore.getTableName(), ranges);
++logger.info("Skipping cleanup for {}/{} sstables for {}.{} 
since they are fully contained in owned ranges (full ranges: {}, transient 
ranges: {})",
++skippedSStables, totalSSTables, 
cfStore.keyspace.getName(), cfStore.getTableName(), fullRanges, 
transientRanges);
+ sortedSSTables.sort(SSTableReader.sizeComparator);
  return sortedSSTables;
  }
  
@@@ -1174,16 -1139,7 +1203,7 @@@
  {
  txn.obsoleteOriginals();
  txn.finish();
- return;
- }
- 
- boolean needsCleanupFull = needsCleanup(sstable, fullRanges);
- boolean needsCleanupTransient = needsCleanup(sstable, 
transientRanges);
- //If there are no ranges for which the table needs cleanup either due 
to lack of intersection or lack
- //of the table being repaired.
- if (!needsCleanupFull && (!needsCleanupTransient || 
!sstable.isRepaired()))
- {
- logger.trace("Skipping {} for cleanup; all rows should be kept. 
Needs cleanup full ranges: {} Needs cleanup transient ranges: {} Repaired: {}", 
sstable, needsCleanupFull, needsCleanupTransient, sstable.isRepaired());
 -logger.info("SSTable {} ([{}, {}]) does not intersect the owned 
ranges ({}), dropping it", sstable, sstable.first.getToken(), 
sstable.last.getToken(), ranges);
++logger.info("SSTable {} ([{}, {}]) does not intersect the owned 
ranges ({}), dropping it", sstable, sstable.first.getToken(), 
sstable.last.getToken(), allRanges);
  return;
  }
  
diff --cc test/unit/org/apache/cassandra/db/CleanupTest.java
index 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-07 Thread marcuse
This is an automated email from the ASF dual-hosted git repository.

marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 3ed1b798146e4536c854fd14bb6456ab29f78e82
Merge: 69b36a5 b773bc7
Author: Marcus Eriksson 
AuthorDate: Wed Aug 7 10:20:27 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../cassandra/db/compaction/CompactionManager.java | 67 -
 .../db/compaction/CompactionStrategyManager.java   | 36 --
 .../cassandra/db/compaction/CompactionTasks.java   | 74 +++
 test/unit/org/apache/cassandra/Util.java   | 10 +--
 .../db/compaction/CompactionsBytemanTest.java  | 84 +-
 .../db/compaction/CompactionsPurgeTest.java| 16 +++--
 .../db/compaction/PendingRepairManagerTest.java| 16 +
 8 files changed, 225 insertions(+), 79 deletions(-)

diff --cc CHANGES.txt
index 42080d7,dc8baf2..dad8d40
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,372 -1,5 +1,373 @@@
 +4.0
 + * Align load column in nodetool status output (CASSANDRA-14787)
 + * CassandraNetworkAuthorizer uses cached roles info (CASSANDRA-15089)
 + * Introduce optional timeouts for idle client sessions (CASSANDRA-11097)
 + * Fix AlterTableStatement dropped type validation order (CASSANDRA-15203)
 + * Update Netty dependencies to latest, clean up SocketFactory 
(CASSANDRA-15195)
 + * Native Transport - Apply noSpamLogger to ConnectionLimitHandler 
(CASSANDRA-15167)
 + * Reduce heap pressure during compactions (CASSANDRA-14654)
 + * Support building Cassandra with JDK 11 (CASSANDRA-15108)
 + * Use quilt to patch cassandra.in.sh in Debian packaging (CASSANDRA-14710)
 + * Take sstable references before calculating approximate key count 
(CASSANDRA-14647)
 + * Restore snapshotting of system keyspaces on version change 
(CASSANDRA-14412)
 + * Fix AbstractBTreePartition locking in java 11 (CASSANDRA-14607)
 + * SimpleClient should pass connection properties as options (CASSANDRA-15056)
 + * Set repaired data tracking flag on range reads if enabled (CASSANDRA-15019)
 + * Calculate pending ranges for BOOTSTRAP_REPLACE correctly (CASSANDRA-14802)
 + * Make TableCQLHelper reuse the single quote pattern (CASSANDRA-15033)
 + * Add Zstd compressor (CASSANDRA-14482)
 + * Fix IR prepare anti-compaction race (CASSANDRA-15027)
 + * Fix SimpleStrategy option validation (CASSANDRA-15007)
 + * Don't try to cancel 2i compactions when starting anticompaction 
(CASSANDRA-15024)
 + * Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025)
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-08-06 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 69b36a54f764a852ae707597f984b0fd8ae0f6b9
Merge: 2117e2a 6b0b792
Author: Blake Eggleston 
AuthorDate: Tue Aug 6 10:22:29 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../org/apache/cassandra/db/ColumnFamilyStore.java | 13 ++
 .../cassandra/index/internal/CassandraIndex.java   |  2 +-
 test/unit/org/apache/cassandra/SchemaLoader.java   | 29 ++
 .../apache/cassandra/db/SecondaryIndexTest.java| 26 +++
 5 files changed, 70 insertions(+), 1 deletion(-)

diff --cc src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 5414f23,41b5e73..981bc05
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@@ -2410,6 -2471,6 +2410,19 @@@ public class ColumnFamilyStore implemen
  return count > 0 ? sum * 1.0 / count : 0;
  }
  
++public int getMeanRowCount()
++{
++long totalRows = 0;
++long totalPartitions = 0;
++for (SSTableReader sstable : getSSTables(SSTableSet.CANONICAL))
++{
++totalPartitions += sstable.getEstimatedPartitionSize().count();
++totalRows += sstable.getTotalRows();
++}
++
++return totalPartitions > 0 ? (int) (totalRows / totalPartitions) : 0;
++}
++
  public long estimateKeys()
  {
  long n = 0;
diff --cc src/java/org/apache/cassandra/index/internal/CassandraIndex.java
index ecd25fd,e23882f..58056b9
--- a/src/java/org/apache/cassandra/index/internal/CassandraIndex.java
+++ b/src/java/org/apache/cassandra/index/internal/CassandraIndex.java
@@@ -270,7 -270,26 +270,7 @@@ public abstract class CassandraIndex im
  
  public long getEstimatedResultRows()
  {
- return indexCfs.getMeanColumns();
 -long totalRows = 0;
 -long totalPartitions = 0;
 -for (SSTableReader sstable : 
indexCfs.getSSTables(SSTableSet.CANONICAL))
 -{
 -if (sstable.descriptor.version.storeRows())
 -{
 -totalPartitions += 
sstable.getEstimatedPartitionSize().count();
 -totalRows += sstable.getTotalRows();
 -} else
 -{
 -// for legacy sstables we don't have a total row count so we 
approximate it
 -// using estimated column count (which is the same logic as 
pre-3.0
 -// see CASSANDRA-15259
 -long colCount = sstable.getEstimatedColumnCount().count();
 -totalPartitions += colCount;
 -totalRows += sstable.getEstimatedColumnCount().mean() * 
colCount;
 -}
 -}
 -
 -return totalPartitions > 0 ? (int) (totalRows / totalPartitions) : 0;
++return indexCfs.getMeanRowCount();
  }
  
  /**
diff --cc test/unit/org/apache/cassandra/SchemaLoader.java
index 41f8095,48b8af3..2bc9bda
--- a/test/unit/org/apache/cassandra/SchemaLoader.java
+++ b/test/unit/org/apache/cassandra/SchemaLoader.java
@@@ -461,183 -446,225 +461,212 @@@ public class SchemaLoade
  
  if (withStaticIndex)
  {
 -cfm.indexes(
 -cfm.getIndexes()
 -   .with(IndexMetadata.fromIndexTargets(cfm,
 -
Collections.singletonList(
 -new 
IndexTarget(new ColumnIdentifier("static", true),
 -  
  IndexTarget.Type.VALUES)),
 -"static_index",
 -
IndexMetadata.Kind.COMPOSITES,
 -
Collections.EMPTY_MAP)));
 +indexes.add(IndexMetadata.fromIndexTargets(
 +Collections.singletonList(
 +   new 
IndexTarget(new ColumnIdentifier("static", true),
 +   
IndexTarget.Type.VALUES)),
 +   cfName + 
"_static_index",
 +   
IndexMetadata.Kind.COMPOSITES,
 +   
Collections.EMPTY_MAP));
  }
  
 -return cfm.compression(getCompressionParameters());
 +return builder.indexes(indexes.build());
+ }
+ 
 -public static CFMetaData compositeMultipleIndexCFMD(String ksName, String 
cfName) throws ConfigurationException
++public static TableMetadata.Builder compositeMultipleIndexCFMD(String 
ksName, String cfName) 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-18 Thread jzhuang
This is an automated email from the ASF dual-hosted git repository.

jzhuang pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit ba6821be4f952781d573cd6ed705250de6aeb5f7
Merge: 26a134a 71cb061
Author: Jay Zhuang 
AuthorDate: Thu Jul 18 21:25:55 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 src/java/org/apache/cassandra/gms/Gossiper.java|  51 ++---
 .../org/apache/cassandra/gms/GossiperTest.java | 123 ++---
 3 files changed, 140 insertions(+), 35 deletions(-)

diff --cc src/java/org/apache/cassandra/gms/Gossiper.java
index a6c9be7,6a862e5..062abe0
--- a/src/java/org/apache/cassandra/gms/Gossiper.java
+++ b/src/java/org/apache/cassandra/gms/Gossiper.java
@@@ -22,14 -24,10 +22,15 @@@ import java.util.*
  import java.util.Map.Entry;
  import java.util.concurrent.*;
  import java.util.concurrent.locks.ReentrantLock;
 +import java.util.function.BooleanSupplier;
 +import java.util.function.Supplier;
 +import java.util.stream.Collectors;
 +
  import javax.annotation.Nullable;
+ import java.util.stream.Collectors;
  
  import com.google.common.annotations.VisibleForTesting;
 +import com.google.common.base.Suppliers;
  import com.google.common.base.Throwables;
  import com.google.common.collect.ImmutableList;
  import com.google.common.collect.ImmutableMap;
@@@ -1377,25 -1289,24 +1378,41 @@@ public class Gossiper implements IFailu
  
  Set> remoteStates = 
remoteState.states();
  assert remoteState.getHeartBeatState().getGeneration() == 
localState.getHeartBeatState().getGeneration();
- localState.addApplicationStates(remoteStates);
- 
- //Filter out pre-4.0 versions of data for more complete 4.0 versions
- Set> filtered = 
remoteStates.stream().filter(entry -> {
-switch (entry.getKey())
-{
-case INTERNAL_IP:
- return 
remoteState.getApplicationState(ApplicationState.INTERNAL_ADDRESS_AND_PORT) == 
null;
-case STATUS:
-return 
remoteState.getApplicationState(ApplicationState.STATUS_WITH_PORT) == null;
-case RPC_ADDRESS:
-return 
remoteState.getApplicationState(ApplicationState.NATIVE_ADDRESS_AND_PORT) == 
null;
-default:
-return true;
-}
+ 
 -// filter out the states that are already up to date (has the same or 
higher version)
++
+ Set> updatedStates = 
remoteStates.stream().filter(entry -> {
++// Filter out pre-4.0 versions of data for more complete 4.0 
versions
++switch (entry.getKey())
++{
++case INTERNAL_IP:
++if 
(remoteState.getApplicationState(ApplicationState.INTERNAL_ADDRESS_AND_PORT) != 
null) return false;
++break;
++case STATUS:
++if 
(remoteState.getApplicationState(ApplicationState.STATUS_WITH_PORT) != null) 
return false;
++break;
++case RPC_ADDRESS:
++if 
(remoteState.getApplicationState(ApplicationState.NATIVE_ADDRESS_AND_PORT) != 
null) return false;
++break;
++default:
++break;
++}
++
++// filter out the states that are already up to date (has the 
same or higher version)
+ VersionedValue local = 
localState.getApplicationState(entry.getKey());
+ return (local == null || local.version < 
entry.getValue().version);
 -}).collect(Collectors.toSet());
 +}).collect(Collectors.toSet());
  
- for (Entry remoteEntry : filtered)
- doOnChangeNotifications(addr, remoteEntry.getKey(), 
remoteEntry.getValue());
+ if (logger.isTraceEnabled() && updatedStates.size() > 0)
+ {
+ for (Entry entry : 
updatedStates)
+ {
+ logger.trace("Updating {} state version to {} for {}", 
entry.getKey().toString(), entry.getValue().version, addr);
+ }
+ }
+ localState.addApplicationStates(updatedStates);
+ 
+ for (Entry updatedEntry : 
updatedStates)
+ doOnChangeNotifications(addr, updatedEntry.getKey(), 
updatedEntry.getValue());
  }
  
  // notify that a local application state is going to change (doesn't get 
triggered for remote changes)
diff --cc test/unit/org/apache/cassandra/gms/GossiperTest.java
index 9c25b86,b6b3ffb..97c577c
--- a/test/unit/org/apache/cassandra/gms/GossiperTest.java
+++ b/test/unit/org/apache/cassandra/gms/GossiperTest.java
@@@ -114,158 -74,171 +115,244 @@@ public class GossiperTes
  }
  
  @Test
 -public void testLargeGenerationJump() throws UnknownHostException
 +public void testLargeGenerationJump() throws UnknownHostException, 
InterruptedException
  {
  

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-16 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 26a134a552133be0b5130120cce99d83b0b3dcde
Merge: 8a04204 670dde9
Author: Aleksey Yeshchenko 
AuthorDate: Tue Jul 16 18:49:49 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt  | 1 +
 src/java/org/apache/cassandra/schema/SchemaKeyspace.java | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --cc src/java/org/apache/cassandra/schema/SchemaKeyspace.java
index d2abc03,285c843..3c3e063
--- a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java
+++ b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java
@@@ -105,170 -104,171 +105,170 @@@ public final class SchemaKeyspac
   */
  private static final Set TABLES_WITH_CDC_ADDED = 
ImmutableSet.of(TABLES, VIEWS);
  
 -
 -/**
 - * Until we upgrade the messaging service version, that is version 4.0, 
we must preserve the old order (before CASSANDRA-12213)
 - * for digest calculations, otherwise the nodes will never agree on the 
schema during a rolling upgrade, see CASSANDRA-13559.
 - */
 -public static final ImmutableList ALL_FOR_DIGEST =
 -ImmutableList.of(KEYSPACES, TABLES, COLUMNS, TRIGGERS, VIEWS, TYPES, 
FUNCTIONS, AGGREGATES, INDEXES);
 -
 -private static final CFMetaData Keyspaces =
 -compile(KEYSPACES,
 -"keyspace definitions",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "durable_writes boolean,"
 -+ "replication frozen>,"
 -+ "PRIMARY KEY ((keyspace_name)))");
 -
 -private static final CFMetaData Tables =
 -compile(TABLES,
 -"table definitions",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "table_name text,"
 -+ "bloom_filter_fp_chance double,"
 -+ "caching frozen>,"
 -+ "comment text,"
 -+ "compaction frozen>,"
 -+ "compression frozen>,"
 -+ "crc_check_chance double,"
 -+ "dclocal_read_repair_chance double,"
 -+ "default_time_to_live int,"
 -+ "extensions frozen>,"
 -+ "flags frozen>," // SUPER, COUNTER, DENSE, 
COMPOUND
 -+ "gc_grace_seconds int,"
 -+ "id uuid,"
 -+ "max_index_interval int,"
 -+ "memtable_flush_period_in_ms int,"
 -+ "min_index_interval int,"
 -+ "read_repair_chance double,"
 -+ "speculative_retry text,"
 -+ "cdc boolean,"
 -+ "PRIMARY KEY ((keyspace_name), table_name))");
 -
 -private static final CFMetaData Columns =
 -compile(COLUMNS,
 -"column definitions",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "table_name text,"
 -+ "column_name text,"
 -+ "clustering_order text,"
 -+ "column_name_bytes blob,"
 -+ "kind text,"
 -+ "position int,"
 -+ "type text,"
 -+ "PRIMARY KEY ((keyspace_name), table_name, column_name))");
 -
 -private static final CFMetaData DroppedColumns =
 -compile(DROPPED_COLUMNS,
 -"dropped column registry",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "table_name text,"
 -+ "column_name text,"
 -+ "dropped_time timestamp,"
 -+ "kind text,"
 -+ "type text,"
 -+ "PRIMARY KEY ((keyspace_name), table_name, column_name))");
 -
 -private static final CFMetaData Triggers =
 -compile(TRIGGERS,
 -"trigger definitions",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "table_name text,"
 -+ "trigger_name text,"
 -+ "options frozen>,"
 -+ "PRIMARY KEY ((keyspace_name), table_name, trigger_name))");
 -
 -private static final CFMetaData Views =
 -compile(VIEWS,
 -"view definitions",
 -"CREATE TABLE %s ("
 -+ "keyspace_name text,"
 -+ "view_name text,"
 -+ "base_table_id uuid,"
 -+ "base_table_name text,"
 -+ "where_clause text,"
 -+ "bloom_filter_fp_chance double,"
 -+ "caching frozen>,"
 -+ "comment text,"
 -+ "compaction frozen>,"
 -+ "compression frozen>,"
 -+ "crc_check_chance double,"
 -+ "dclocal_read_repair_chance double,"
 -  

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-15 Thread benedict
This is an automated email from the ASF dual-hosted git repository.

benedict pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8a04204c10eafc2c1051a336d82211899889e276
Merge: 149caf0 f5fe483
Author: Benedict Elliott Smith 
AuthorDate: Mon Jul 15 15:13:53 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 doc/native_protocol_v4.spec|   4 +
 src/java/org/apache/cassandra/config/Config.java   |   2 +
 .../cassandra/config/DatabaseDescriptor.java   |  30 +++
 .../apache/cassandra/metrics/ClientMetrics.java|  14 ++
 .../org/apache/cassandra/net/ResourceLimits.java   |  70 --
 .../cassandra/service/NativeTransportService.java  |  17 +-
 .../org/apache/cassandra/transport/Connection.java |  11 +
 src/java/org/apache/cassandra/transport/Frame.java |   8 +-
 .../org/apache/cassandra/transport/Message.java| 146 +++-
 .../transport/RequestThreadPoolExecutor.java   |  96 
 .../org/apache/cassandra/transport/Server.java |  64 +++--
 .../apache/cassandra/transport/SimpleClient.java   |   8 +
 .../transport/messages/StartupMessage.java |   3 +
 test/unit/org/apache/cassandra/cql3/CQLTester.java |   9 +-
 .../service/NativeTransportServiceTest.java|   3 +-
 .../InflightRequestPayloadTrackerTest.java | 258 +
 17 files changed, 592 insertions(+), 152 deletions(-)

diff --cc src/java/org/apache/cassandra/config/Config.java
index 6b487fe,1d79e2a..34a5ce8
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@@ -182,11 -160,13 +182,13 @@@ public class Confi
  public int native_transport_max_frame_size_in_mb = 256;
  public volatile long native_transport_max_concurrent_connections = -1L;
  public volatile long native_transport_max_concurrent_connections_per_ip = 
-1L;
 -public boolean native_transport_flush_in_batches_legacy = true;
 +public boolean native_transport_flush_in_batches_legacy = false;
 +public volatile boolean native_transport_allow_older_protocols = true;
 +public int native_transport_frame_block_size_in_kb = 32;
+ public volatile long 
native_transport_max_concurrent_requests_in_bytes_per_ip = -1L;
+ public volatile long native_transport_max_concurrent_requests_in_bytes = 
-1L;
  
  
 -@Deprecated
 -public int thrift_max_message_length_in_mb = 16;
  /**
   * Max size of values in SSTables, in MegaBytes.
   * Default is the same as the native protocol frame limit: 256Mb.
diff --cc src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index bb92716,75296b6..0166c5f
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@@ -2010,31 -1849,36 +2020,51 @@@ public class DatabaseDescripto
  return conf.native_transport_flush_in_batches_legacy;
  }
  
 -public static double getCommitLogSyncBatchWindow()
 +public static boolean getNativeTransportAllowOlderProtocols()
  {
 -return conf.commitlog_sync_batch_window_in_ms;
 +return conf.native_transport_allow_older_protocols;
  }
  
 -public static void setCommitLogSyncBatchWindow(double windowMillis)
 +public static void setNativeTransportAllowOlderProtocols(boolean 
isEnabled)
  {
 -conf.commitlog_sync_batch_window_in_ms = windowMillis;
 +conf.native_transport_allow_older_protocols = isEnabled;
 +}
 +
 +public static int getNativeTransportFrameBlockSize()
 +{
 +return conf.native_transport_frame_block_size_in_kb * 1024;
 +}
 +
 +public static double getCommitLogSyncGroupWindow()
 +{
 +return conf.commitlog_sync_group_window_in_ms;
 +}
 +
 +public static void setCommitLogSyncGroupWindow(double windowMillis)
 +{
 +conf.commitlog_sync_group_window_in_ms = windowMillis;
  }
  
+ public static long getNativeTransportMaxConcurrentRequestsInBytesPerIp()
+ {
+ return conf.native_transport_max_concurrent_requests_in_bytes_per_ip;
+ }
+ 
+ public static void 
setNativeTransportMaxConcurrentRequestsInBytesPerIp(long 
maxConcurrentRequestsInBytes)
+ {
+ conf.native_transport_max_concurrent_requests_in_bytes_per_ip = 
maxConcurrentRequestsInBytes;
+ }
+ 
+ public static long getNativeTransportMaxConcurrentRequestsInBytes()
+ {
+ return conf.native_transport_max_concurrent_requests_in_bytes;
+ }
+ 
+ public static void setNativeTransportMaxConcurrentRequestsInBytes(long 
maxConcurrentRequestsInBytes)
+ {
+ conf.native_transport_max_concurrent_requests_in_bytes = 
maxConcurrentRequestsInBytes;
+ }
+ 
  public static int getCommitLogSyncPeriod()
  {
  return conf.commitlog_sync_period_in_ms;
diff --cc 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-10 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit be34723a40e117a159dd4abfca172bf7db3f0cb0
Merge: ec15c0f ecdbef3
Author: Aleksey Yeshchenko 
AuthorDate: Wed Jul 10 15:39:52 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-10 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit ec15c0fd5ff8f8fb2567f269dd8833cd5b7b62ae
Merge: 9b33fd8 824d25a
Author: Aleksey Yeshchenko 
AuthorDate: Wed Jul 10 15:30:00 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --cc CHANGES.txt
index dfdc017,406246e..3248cfe
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -368,8 -3,11 +368,10 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Toughen up column drop/recreate type validations (CASSANDRA-15204)
+  * LegacyLayout should handle paging states that cross a collection column 
(CASSANDRA-15201)
   * Prevent RuntimeException when username or password is empty/null 
(CASSANDRA-15198)
   * Multiget thrift query returns null records after digest mismatch 
(CASSANDRA-14812)
 - * Skipping illegal legacy cells can break reverse iteration of indexed 
partitions (CASSANDRA-15178)
   * Handle paging states serialized with a different version than the 
session's (CASSANDRA-15176)
   * Throw IOE instead of asserting on unsupporter peer versions 
(CASSANDRA-15066)
   * Update token metadata when handling MOVING/REMOVING_TOKEN events 
(CASSANDRA-15120)


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-10 Thread benedict
This is an automated email from the ASF dual-hosted git repository.

benedict pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 9b33fd849be5ec623f30ae6a0627d3982030d2c2
Merge: 08b2192 da6268d
Author: Benedict Elliott Smith 
AuthorDate: Wed Jul 10 14:56:22 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-08 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 86812fa5024d957e28f195b2c4db3813439fb2c5
Merge: d0a207b 7206ff5
Author: Blake Eggleston 
AuthorDate: Mon Jul 8 15:26:22 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../cassandra/auth/PasswordAuthenticator.java  | 11 +--
 .../cassandra/auth/PasswordAuthenticatorTest.java  | 82 +-
 3 files changed, 89 insertions(+), 5 deletions(-)

diff --cc CHANGES.txt
index 5e7d21b,018fced..e234df1
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -367,7 -3,9 +367,8 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Prevent RuntimeException when username or password is empty/null 
(CASSANDRA-15198)
   * Multiget thrift query returns null records after digest mismatch 
(CASSANDRA-14812)
 - * Skipping illegal legacy cells can break reverse iteration of indexed 
partitions (CASSANDRA-15178)
   * Handle paging states serialized with a different version than the 
session's (CASSANDRA-15176)
   * Throw IOE instead of asserting on unsupporter peer versions 
(CASSANDRA-15066)
   * Update token metadata when handling MOVING/REMOVING_TOKEN events 
(CASSANDRA-15120)
diff --cc src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
index 89f765d,4bd3696..9da99a9
--- a/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
+++ b/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
@@@ -65,9 -66,12 +65,9 @@@ public class PasswordAuthenticator impl
  public static final String USERNAME_KEY = "username";
  public static final String PASSWORD_KEY = "password";
  
- private static final byte NUL = 0;
+ static final byte NUL = 0;
  private SelectStatement authenticateStatement;
  
 -public static final String LEGACY_CREDENTIALS_TABLE = "credentials";
 -private SelectStatement legacyAuthenticateStatement;
 -
  private CredentialsCache cache;
  
  // No anonymous access.
diff --cc test/unit/org/apache/cassandra/auth/PasswordAuthenticatorTest.java
index 37763d7,0dd75eb..fd79b6a
--- a/test/unit/org/apache/cassandra/auth/PasswordAuthenticatorTest.java
+++ b/test/unit/org/apache/cassandra/auth/PasswordAuthenticatorTest.java
@@@ -18,8 -18,22 +18,22 @@@
  package org.apache.cassandra.auth;
  
  
+ import java.nio.charset.StandardCharsets;
+ 
+ import com.google.common.collect.Iterables;
+ import org.junit.AfterClass;
+ import org.junit.BeforeClass;
  import org.junit.Test;
  
+ import com.datastax.driver.core.Authenticator;
+ import com.datastax.driver.core.PlainTextAuthProvider;
+ import org.apache.cassandra.SchemaLoader;
 -import org.apache.cassandra.config.CFMetaData;
 -import org.apache.cassandra.config.SchemaConstants;
+ import org.apache.cassandra.cql3.CQLTester;
+ import org.apache.cassandra.exceptions.AuthenticationException;
+ import org.apache.cassandra.schema.KeyspaceParams;
++import org.apache.cassandra.schema.SchemaConstants;
++import org.apache.cassandra.schema.TableMetadata;
+ 
  import static org.apache.cassandra.auth.CassandraRoleManager.*;
  import static org.apache.cassandra.auth.PasswordAuthenticator.*;
  import static org.junit.Assert.assertFalse;
@@@ -61,4 -78,67 +78,67 @@@ public class PasswordAuthenticatorTest 
  assertFalse(checkpw(DEFAULT_SUPERUSER_PASSWORD, 
"$2$6$abcdefghijklmnopqrstuvABCDEFGHIJKLMNOPQRSTUVWXYZ01234"));
  assertFalse(checkpw(DEFAULT_SUPERUSER_PASSWORD, 
"$2a$6$abcdefghijklmnopqrstuvABCDEFGHIJKLMNOPQRSTUVWXYZ01234"));
  }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testEmptyUsername()
+ {
+ testDecodeIllegalUserAndPwd("", "pwd");
+ }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testEmptyPassword()
+ {
+ testDecodeIllegalUserAndPwd("user", "");
+ }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testNULUsername0()
+ {
+ byte[] user = {'u', 's', PasswordAuthenticator.NUL, 'e', 'r'};
+ testDecodeIllegalUserAndPwd(new String(user, StandardCharsets.UTF_8), 
"pwd");
+ }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testNULUsername1()
+ {
+ testDecodeIllegalUserAndPwd(new String(new byte[4]), "pwd");
+ }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testNULPassword0()
+ {
+ byte[] pwd = {'p', 'w', PasswordAuthenticator.NUL, 'd'};
+ testDecodeIllegalUserAndPwd("user", new String(pwd, 
StandardCharsets.UTF_8));
+ }
+ 
+ @Test(expected = AuthenticationException.class)
+ public void testNULPassword1()
+ {
+ testDecodeIllegalUserAndPwd("user", new String(new byte[4]));
+ }
+ 
+ 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-05 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit d0a207b41441823d77b69c62556e6c5d2d4ad88e
Merge: a339aa9 8f33dc0
Author: Sam Tunnicliffe 
AuthorDate: Fri Jul 5 19:06:09 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 .../apache/cassandra/auth/CassandraAuthorizer.java |  26 ++-
 .../cassandra/auth/CassandraRoleManager.java   |  20 +-
 .../cassandra/auth/PasswordAuthenticator.java  |  42 ++--
 src/java/org/apache/cassandra/auth/Roles.java  |  43 +++-
 .../cassandra/auth/jmx/AuthorizationProxy.java |   6 -
 .../exceptions/AuthenticationException.java|   5 +
 .../exceptions/UnauthorizedException.java  |   5 +
 .../org/apache/cassandra/service/ClientState.java  |  16 +-
 .../org/apache/cassandra/auth/AuthCacheTest.java   | 254 ++---
 10 files changed, 293 insertions(+), 125 deletions(-)

diff --cc src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
index 238b5b5,d4253d1..37ad60a
--- a/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
+++ b/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
@@@ -53,7 -63,12 +53,7 @@@ public class CassandraAuthorizer implem
  private static final String RESOURCE = "resource";
  private static final String PERMISSIONS = "permissions";
  
- SelectStatement authorizeRoleStatement;
 -// used during upgrades to perform authz on mixed clusters
 -public static final String USERNAME = "username";
 -public static final String USER_PERMISSIONS = "permissions";
 -
+ private SelectStatement authorizeRoleStatement;
 -private SelectStatement legacyAuthorizeRoleStatement;
  
  public CassandraAuthorizer()
  {
@@@ -63,16 -78,23 +63,24 @@@
  // or indirectly via roles granted to the user.
  public Set authorize(AuthenticatedUser user, IResource 
resource)
  {
- if (user.isSuper())
- return resource.applicablePermissions();
+ try
+ {
+ if (user.isSuper())
+ return resource.applicablePermissions();
  
- Set permissions = EnumSet.noneOf(Permission.class);
+ Set permissions = EnumSet.noneOf(Permission.class);
  
- // Even though we only care about the RoleResource here, we use 
getRoleDetails as
- // it saves a Set creation in RolesCache
- for (Role role: user.getRoleDetails())
- addPermissionsForRole(permissions, resource, role.resource);
- return permissions;
 -for (RoleResource role: user.getRoles())
 -addPermissionsForRole(permissions, resource, role);
 -
++// Even though we only care about the RoleResource here, we use 
getRoleDetails as
++// it saves a Set creation in RolesCache
++for (Role role: user.getRoleDetails())
++addPermissionsForRole(permissions, resource, role.resource);
+ return permissions;
+ }
+ catch (RequestExecutionException | RequestValidationException e)
+ {
+ logger.debug("Failed to authorize {} for {}", user, resource);
+ throw new UnauthorizedException("Unable to perform authorization 
of permissions: " + e.getMessage(), e);
+ }
  }
  
  public void grant(AuthenticatedUser performer, Set 
permissions, IResource resource, RoleResource grantee)
diff --cc src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
index 27a68a0,b1a7227..89f765d
--- a/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
+++ b/src/java/org/apache/cassandra/auth/PasswordAuthenticator.java
@@@ -29,7 -29,8 +29,8 @@@ import org.slf4j.Logger
  import org.slf4j.LoggerFactory;
  
  import org.apache.cassandra.config.DatabaseDescriptor;
 -import org.apache.cassandra.config.Schema;
 -import org.apache.cassandra.config.SchemaConstants;
++import org.apache.cassandra.exceptions.RequestExecutionException;
 +import org.apache.cassandra.schema.SchemaConstants;
  import org.apache.cassandra.cql3.QueryOptions;
  import org.apache.cassandra.cql3.QueryProcessor;
  import org.apache.cassandra.cql3.UntypedResultSet;
@@@ -98,27 -103,55 +99,34 @@@ public class PasswordAuthenticator impl
  return new AuthenticatedUser(username);
  }
  
 -private String queryHashedPassword(String username) throws 
AuthenticationException
 +private String queryHashedPassword(String username)
  {
- ResultMessage.Rows rows =
- authenticateStatement.execute(QueryState.forInternalCalls(),
- 
QueryOptions.forInternalCalls(consistencyForRole(username),
-   
Lists.newArrayList(ByteBufferUtil.bytes(username))),
- System.nanoTime());
- 
- // 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-07-02 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 0b8c5f70a229bbaaa5e934dc2fc61acada773cb0
Merge: 0273250 c08ce93
Author: Mick Semb Wever 
AuthorDate: Tue Jul 2 12:09:35 2019 +0200

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 src/java/org/apache/cassandra/db/filter/DataLimits.java | 6 ++
 src/java/org/apache/cassandra/db/partitions/PartitionIterators.java | 6 --
 src/java/org/apache/cassandra/db/transform/BasePartitions.java  | 4 ++--
 4 files changed, 13 insertions(+), 4 deletions(-)

diff --cc CHANGES.txt
index de8d648,0d0b759..2faca24
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -366,6 -3,8 +366,7 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Multiget thrift query returns null records after digest mismatch 
(CASSANDRA-14812)
 - * Skipping illegal legacy cells can break reverse iteration of indexed 
partitions (CASSANDRA-15178)
   * Handle paging states serialized with a different version than the 
session's (CASSANDRA-15176)
   * Throw IOE instead of asserting on unsupporter peer versions 
(CASSANDRA-15066)
   * Update token metadata when handling MOVING/REMOVING_TOKEN events 
(CASSANDRA-15120)


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-27 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 02732501a1a81f488695de53c16f432e94bbe7fa
Merge: 883b0d8 83baa27
Author: Sam Tunnicliffe 
AuthorDate: Thu Jun 27 16:27:28 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-27 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 883b0d8cdd4ba3c97a02b1b5165021ccd283
Merge: 2ed2b87 75fde25
Author: Michael Shuler 
AuthorDate: Thu Jun 27 09:55:07 2019 -0500

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-26 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 3261b23a789f595414f5e2d11545c87b97c44e32
Merge: 225fa86 5514696
Author: Aleksey Yeshchenko 
AuthorDate: Wed Jun 26 15:30:41 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   3 +
 .../apache/cassandra/io/util/DataOutputBuffer.java |  13 +
 .../cassandra/service/pager/PagingState.java   | 284 -
 test/unit/org/apache/cassandra/Util.java   |   7 +-
 .../apache/cassandra/service/QueryPagerTest.java   |  35 +--
 .../cassandra/service/pager/PagingStateTest.java   |  42 ++-
 6 files changed, 295 insertions(+), 89 deletions(-)

diff --cc CHANGES.txt
index 6435d03,e2aa652..de8d648
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -366,8 -3,13 +366,11 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Handle paging states serialized with a different version than the 
session's (CASSANDRA-15176)
+  * Throw IOE instead of asserting on unsupporter peer versions 
(CASSANDRA-15066)
+  * Update token metadata when handling MOVING/REMOVING_TOKEN events 
(CASSANDRA-15120)
   * Add ability to customize cassandra log directory using $CASSANDRA_LOG_DIR 
(CASSANDRA-15090)
 - * Skip cells with illegal column names when reading legacy sstables 
(CASSANDRA-15086)
   * Fix assorted gossip races and add related runtime checks (CASSANDRA-15059)
 - * Fix mixed mode partition range scans with limit (CASSANDRA-15072)
   * cassandra-stress works with frozen collections: list and set 
(CASSANDRA-14907)
   * Fix handling FS errors on writing and reading flat files - LogTransaction 
and hints (CASSANDRA-15053)
   * Avoid double closing the iterator to avoid overcounting the number of 
requests (CASSANDRA-15058)
diff --cc src/java/org/apache/cassandra/service/pager/PagingState.java
index f036f96,9b7eccf..8df2366
--- a/src/java/org/apache/cassandra/service/pager/PagingState.java
+++ b/src/java/org/apache/cassandra/service/pager/PagingState.java
@@@ -21,23 -21,30 +21,31 @@@ import java.io.IOException
  import java.nio.ByteBuffer;
  import java.util.*;
  
- import org.apache.cassandra.schema.TableMetadata;
+ import com.google.common.annotations.VisibleForTesting;
+ import com.google.common.primitives.Ints;
+ 
 -import org.apache.cassandra.config.CFMetaData;
  import org.apache.cassandra.db.Clustering;
 -import org.apache.cassandra.db.LegacyLayout;
 +import org.apache.cassandra.db.CompactTables;
- import org.apache.cassandra.db.TypeSizes;
  import org.apache.cassandra.db.marshal.AbstractType;
  import org.apache.cassandra.db.marshal.BytesType;
 +import org.apache.cassandra.db.marshal.CompositeType;
  import org.apache.cassandra.db.rows.Cell;
  import org.apache.cassandra.db.rows.Row;
  import org.apache.cassandra.io.util.DataInputBuffer;
  import org.apache.cassandra.io.util.DataOutputBuffer;
  import org.apache.cassandra.io.util.DataOutputBufferFixed;
  import org.apache.cassandra.net.MessagingService;
- import org.apache.cassandra.transport.ProtocolVersion;
++import org.apache.cassandra.schema.TableMetadata;
  import org.apache.cassandra.transport.ProtocolException;
- import org.apache.cassandra.utils.ByteBufferUtil;
+ import org.apache.cassandra.transport.ProtocolVersion;
+ 
+ import static org.apache.cassandra.db.TypeSizes.sizeof;
+ import static org.apache.cassandra.db.TypeSizes.sizeofUnsignedVInt;
+ import static org.apache.cassandra.utils.ByteBufferUtil.*;
+ import static 
org.apache.cassandra.utils.vint.VIntCoding.computeUnsignedVIntSize;
+ import static org.apache.cassandra.utils.vint.VIntCoding.getUnsignedVInt;
  
+ @SuppressWarnings("WeakerAccess")
  public class PagingState
  {
  public final ByteBuffer partitionKey;  // Can be null for single 
partition queries.
@@@ -217,7 -360,7 +361,7 @@@
  // If the last returned row has no cell, this means in 
2.1/2.2 terms that we stopped on the row
  // marker. Note that this shouldn't happen if the table 
is COMPACT.
  assert !metadata.isCompactTable();
- mark = encodeCellName(metadata, row.clustering(), 
ByteBufferUtil.EMPTY_BYTE_BUFFER, null);
 -mark = LegacyLayout.encodeCellName(metadata, 
row.clustering(), EMPTY_BYTE_BUFFER, null);
++mark = encodeCellName(metadata, row.clustering(), 
EMPTY_BYTE_BUFFER, null);
  }
  else
  {
@@@ -244,80 -387,6 +388,80 @@@
   : Clustering.serializer.deserialize(mark, 
MessagingService.VERSION_30, makeClusteringTypes(metadata));
  }
  
 +// Old (pre-3.0) encoding of cells. We need that for the protocol v3 
as that is how things where encoded
 +private static 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-12 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit dcabf7e2693534be62f70f9d08345562da2070ba
Merge: 6b9575a 033b30f
Author: Aleksey Yeshchenko 
AuthorDate: Wed Jun 12 15:24:43 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-07 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5f2ee5284a90ad49604071bd7bb0d98059a87060
Merge: f4c0c19 88e474d
Author: Michael Shuler 
AuthorDate: Fri Jun 7 08:37:57 2019 -0500

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-03 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit f4c0c193c13adf3da01fd2507c6f75dd7146c55d
Merge: cc1bc2a 7f4ecb0
Author: Sam Tunnicliffe 
AuthorDate: Mon Jun 3 16:33:20 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-06-03 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit cc1bc2a8e1bcac8cee08289ca04d6490a95f225e
Merge: 797ec05 8db0d84
Author: Sam Tunnicliffe 
AuthorDate: Mon Jun 3 16:02:36 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 .../apache/cassandra/service/StorageService.java   | 156 -
 .../org/apache/cassandra/service/MoveTest.java |  11 +-
 2 files changed, 96 insertions(+), 71 deletions(-)

diff --cc src/java/org/apache/cassandra/service/StorageService.java
index eade7dd,c340db6..2b6bf1d
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@@ -2457,18 -2311,95 +2457,94 @@@ public class StorageService extends Not
  tokenMetadata.updateHostId(Gossiper.instance.getHostId(newNode), 
newNode);
  }
  
 -private void ensureUpToDateTokenMetadata(String status, InetAddress 
endpoint)
++private void ensureUpToDateTokenMetadata(String status, 
InetAddressAndPort endpoint)
+ {
+ Set tokens = new TreeSet<>(getTokensFor(endpoint));
+ 
+ if (logger.isDebugEnabled())
+ logger.debug("Node {} state {}, tokens {}", endpoint, status, 
tokens);
+ 
+ // If the node is previously unknown or tokens do not match, update 
tokenmetadata to
+ // have this node as 'normal' (it must have been using this token 
before the
+ // leave). This way we'll get pending ranges right.
+ if (!tokenMetadata.isMember(endpoint))
+ {
+ logger.info("Node {} state jump to {}", endpoint, status);
+ updateTokenMetadata(endpoint, tokens);
+ }
+ else if (!tokens.equals(new 
TreeSet<>(tokenMetadata.getTokens(endpoint
+ {
+ logger.warn("Node {} '{}' token mismatch. Long network 
partition?", endpoint, status);
+ updateTokenMetadata(endpoint, tokens);
+ }
+ }
+ 
 -private void updateTokenMetadata(InetAddress endpoint, Iterable 
tokens)
++private void updateTokenMetadata(InetAddressAndPort endpoint, 
Iterable tokens)
+ {
+ updateTokenMetadata(endpoint, tokens, new HashSet<>());
+ }
+ 
 -private void updateTokenMetadata(InetAddress endpoint, Iterable 
tokens, Set endpointsToRemove)
++private void updateTokenMetadata(InetAddressAndPort endpoint, 
Iterable tokens, Set endpointsToRemove)
+ {
+ Set tokensToUpdateInMetadata = new HashSet<>();
+ Set tokensToUpdateInSystemKeyspace = new HashSet<>();
+ 
+ for (final Token token : tokens)
+ {
+ // we don't want to update if this node is responsible for the 
token and it has a later startup time than endpoint.
 -InetAddress currentOwner = tokenMetadata.getEndpoint(token);
++InetAddressAndPort currentOwner = 
tokenMetadata.getEndpoint(token);
+ if (currentOwner == null)
+ {
+ logger.debug("New node {} at token {}", endpoint, token);
+ tokensToUpdateInMetadata.add(token);
+ tokensToUpdateInSystemKeyspace.add(token);
+ }
+ else if (endpoint.equals(currentOwner))
+ {
+ // set state back to normal, since the node may have tried to 
leave, but failed and is now back up
+ tokensToUpdateInMetadata.add(token);
+ tokensToUpdateInSystemKeyspace.add(token);
+ }
+ else if (Gossiper.instance.compareEndpointStartup(endpoint, 
currentOwner) > 0)
+ {
+ tokensToUpdateInMetadata.add(token);
+ tokensToUpdateInSystemKeyspace.add(token);
+ 
+ // currentOwner is no longer current, endpoint is.  Keep 
track of these moves, because when
+ // a host no longer has any tokens, we'll want to remove it.
 -Multimap epToTokenCopy = 
getTokenMetadata().getEndpointToTokenMapForReading();
++Multimap epToTokenCopy = 
getTokenMetadata().getEndpointToTokenMapForReading();
+ epToTokenCopy.get(currentOwner).remove(token);
+ if (epToTokenCopy.get(currentOwner).isEmpty())
+ endpointsToRemove.add(currentOwner);
+ 
+ logger.info("Nodes {} and {} have the same token {}. {} is 
the new owner", endpoint, currentOwner, token, endpoint);
+ }
+ else
+ {
+ logger.info("Nodes () and {} have the same token {}.  
Ignoring {}", endpoint, currentOwner, token, endpoint);
+ }
+ }
+ 
+ tokenMetadata.updateNormalTokens(tokensToUpdateInMetadata, endpoint);
 -for (InetAddress ep : endpointsToRemove)
++for (InetAddressAndPort ep : endpointsToRemove)
+ {
+ removeEndpoint(ep);
+ if (replacing && 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-05-26 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 797ec05a6aa3bcc887eab0d54d0bae4b7464c520
Merge: 18bcda2 60bdfb1
Author: Mick Semb Wever 
AuthorDate: Mon May 27 11:30:37 2019 +1000

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt   | 1 +
 conf/cassandra-env.sh | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index df7a5f3,59c89b7..7680b8d
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,366 -1,5 +1,367 @@@
 +4.0
 + * Reduce heap pressure during compactions (CASSANDRA-14654)
 + * Support building Cassandra with JDK 11 (CASSANDRA-15108)
 + * Use quilt to patch cassandra.in.sh in Debian packaging (CASSANDRA-14710)
 + * Take sstable references before calculating approximate key count 
(CASSANDRA-14647)
 + * Restore snapshotting of system keyspaces on version change 
(CASSANDRA-14412)
 + * Fix AbstractBTreePartition locking in java 11 (CASSANDRA-14607)
 + * SimpleClient should pass connection properties as options (CASSANDRA-15056)
 + * Set repaired data tracking flag on range reads if enabled (CASSANDRA-15019)
 + * Calculate pending ranges for BOOTSTRAP_REPLACE correctly (CASSANDRA-14802)
 + * Make TableCQLHelper reuse the single quote pattern (CASSANDRA-15033)
 + * Add Zstd compressor (CASSANDRA-14482)
 + * Fix IR prepare anti-compaction race (CASSANDRA-15027)
 + * Fix SimpleStrategy option validation (CASSANDRA-15007)
 + * Don't try to cancel 2i compactions when starting anticompaction 
(CASSANDRA-15024)
 + * Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025)
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair prepare phase if it encounters sstables from 
un-finalized sessions (CASSANDRA-14763)
 + * Add a check for receiving digest response from transient node 
(CASSANDRA-14750)
 + * Fail query on transient replica if coordinator only expects full data 
(CASSANDRA-14704)
 + * Remove mentions of transient replication from repair path (CASSANDRA-14698)
 + * Fix handleRepairStatusChangedNotification to remove first then add 
(CASSANDRA-14720)
 + * Allow transient node to 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-05-26 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 18bcda2d4c2eba7370a0b21f33eed37cb730bbb3
Merge: 8bedb19 6e51506
Author: Mick Semb Wever 
AuthorDate: Mon May 27 10:44:46 2019 +1000

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt   | 1 +
 bin/cassandra | 7 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index 3a98fa5,50e36d9..df7a5f3
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -364,7 -2,10 +364,8 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Add ability to customize cassandra log directory using $CASSANDRA_LOG_DIR 
(CASSANDRA-15090)
 - * Skip cells with illegal column names when reading legacy sstables 
(CASSANDRA-15086)
   * Fix assorted gossip races and add related runtime checks (CASSANDRA-15059)
 - * Fix mixed mode partition range scans with limit (CASSANDRA-15072)
   * cassandra-stress works with frozen collections: list and set 
(CASSANDRA-14907)
   * Fix handling FS errors on writing and reading flat files - LogTransaction 
and hints (CASSANDRA-15053)
   * Avoid double closing the iterator to avoid overcounting the number of 
requests (CASSANDRA-15058)


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-05-22 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8bedb199c9739771ad4bf41249428f8e5511c50e
Merge: ca0ea40 2d3157c
Author: Michael Shuler 
AuthorDate: Wed May 22 15:16:17 2019 -0400

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-05-14 Thread benedict
This is an automated email from the ASF dual-hosted git repository.

benedict pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 6942c13eebbc18bd3f38ff4566e0a8cc051fc4d6
Merge: aa762c6 a6d32bb
Author: Benedict Elliott Smith 
AuthorDate: Tue May 14 15:44:38 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 .../apache/cassandra/db/filter/RowFilterTest.java  | 130 +
 1 file changed, 130 insertions(+)

diff --cc test/unit/org/apache/cassandra/db/filter/RowFilterTest.java
index 000,0e15013..333d3f8
mode 00,100644..100644
--- a/test/unit/org/apache/cassandra/db/filter/RowFilterTest.java
+++ b/test/unit/org/apache/cassandra/db/filter/RowFilterTest.java
@@@ -1,0 -1,130 +1,130 @@@
+ /*
+  * Licensed to the Apache Software Foundation (ASF) under one
+  * or more contributor license agreements.  See the NOTICE file
+  * distributed with this work for additional information
+  * regarding copyright ownership.  The ASF licenses this file
+  * to you under the Apache License, Version 2.0 (the
+  * "License"); you may not use this file except in compliance
+  * with the License.  You may obtain a copy of the License at
+  *
+  * http://www.apache.org/licenses/LICENSE-2.0
+  *
+  * Unless required by applicable law or agreed to in writing, software
+  * distributed under the License is distributed on an "AS IS" BASIS,
+  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  * See the License for the specific language governing permissions and
+  * limitations under the License.
+  */
+ 
+ package org.apache.cassandra.db.filter;
+ 
+ import java.nio.ByteBuffer;
+ import java.util.ArrayList;
+ import java.util.concurrent.atomic.AtomicBoolean;
+ 
+ import org.junit.Assert;
+ import org.junit.Test;
+ 
 -import org.apache.cassandra.config.CFMetaData;
 -import org.apache.cassandra.config.ColumnDefinition;
+ import org.apache.cassandra.cql3.ColumnIdentifier;
+ import org.apache.cassandra.cql3.Operator;
+ import org.apache.cassandra.db.Clustering;
+ import org.apache.cassandra.db.DecoratedKey;
+ import org.apache.cassandra.db.DeletionTime;
+ import org.apache.cassandra.db.LivenessInfo;
 -import org.apache.cassandra.db.PartitionColumns;
++import org.apache.cassandra.db.RegularAndStaticColumns;
+ import org.apache.cassandra.db.marshal.Int32Type;
+ import 
org.apache.cassandra.db.partitions.SingletonUnfilteredPartitionIterator;
+ import org.apache.cassandra.db.partitions.UnfilteredPartitionIterator;
+ import org.apache.cassandra.db.rows.BTreeRow;
+ import org.apache.cassandra.db.rows.BufferCell;
+ import org.apache.cassandra.db.rows.Cell;
+ import org.apache.cassandra.db.rows.EncodingStats;
+ import org.apache.cassandra.db.rows.Row;
+ import org.apache.cassandra.db.rows.Rows;
+ import org.apache.cassandra.db.rows.Unfiltered;
+ import org.apache.cassandra.db.rows.UnfilteredRowIterator;
++import org.apache.cassandra.schema.ColumnMetadata;
++import org.apache.cassandra.schema.TableMetadata;
+ import org.apache.cassandra.utils.btree.BTree;
+ 
+ public class RowFilterTest
+ {
+ 
+ @Test
+ public void testCQLFilterClose()
+ {
+ // CASSANDRA-15126
 -CFMetaData metadata = CFMetaData.Builder.create("testks", "testcf")
 -.addPartitionKey("pk", 
Int32Type.instance)
 -.addStaticColumn("s", 
Int32Type.instance)
 -.addRegularColumn("r", 
Int32Type.instance)
 -.build();
 -ColumnDefinition s = metadata.getColumnDefinition(new 
ColumnIdentifier("s", true));
 -ColumnDefinition r = metadata.getColumnDefinition(new 
ColumnIdentifier("r", true));
++TableMetadata metadata = TableMetadata.builder("testks", "testcf")
++  .addPartitionKeyColumn("pk", 
Int32Type.instance)
++  .addStaticColumn("s", 
Int32Type.instance)
++  .addRegularColumn("r", 
Int32Type.instance)
++  .build();
++ColumnMetadata s = metadata.getColumn(new ColumnIdentifier("s", 
true));
++ColumnMetadata r = metadata.getColumn(new ColumnIdentifier("r", 
true));
+ 
+ ByteBuffer one = Int32Type.instance.decompose(1);
+ RowFilter filter = RowFilter.NONE.withNewExpressions(new 
ArrayList<>());
+ filter.add(s, Operator.NEQ, one);
+ AtomicBoolean closed = new AtomicBoolean();
+ UnfilteredPartitionIterator iter = filter.filter(new 
SingletonUnfilteredPartitionIterator(new UnfilteredRowIterator()
+ {
+ public DeletionTime partitionLevelDeletion() { return null; }
+ public EncodingStats stats() { return null; }
 -public CFMetaData metadata() { return metadata; }
++

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-05-08 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 67bb5dbf1da8827831045f79b85e5e25ffaab6fe
Merge: b0bb339 ba01089
Author: Sam Tunnicliffe 
AuthorDate: Wed May 8 10:06:10 2019 +0100

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-25 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit b0bb3393666a6a0b934815431697b9fb1a1927b7
Merge: 587961a c86f9b8
Author: Blake Eggleston 
AuthorDate: Thu Apr 25 15:25:37 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 .../org/apache/cassandra/distributed/impl/AbstractCluster.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-25 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 587961a19c493efe6b9b065d47416aa4b62cc60a
Merge: 79766f7 01d6548
Author: Blake Eggleston 
AuthorDate: Thu Apr 25 10:23:11 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 build.xml  |   1 +
 ide/idea/workspace.xml |   2 +-
 .../cassandra/config/DatabaseDescriptor.java   |   8 +
 src/java/org/apache/cassandra/gms/Gossiper.java| 201 ++---
 .../apache/cassandra/service/StorageService.java   |  10 +-
 .../cassandra/distributed/impl/Instance.java   |  26 +--
 .../org/apache/cassandra/gms/GossiperTest.java |   1 +
 .../gms/PendingRangeCalculatorServiceTest.java |   1 +
 .../cassandra/locator/CloudstackSnitchTest.java|   1 +
 .../apache/cassandra/locator/EC2SnitchTest.java|   1 +
 .../cassandra/locator/GoogleCloudSnitchTest.java   |   1 +
 .../cassandra/locator/PropertyFileSnitchTest.java  |   1 +
 .../net/StartupClusterConnectivityCheckerTest.java |   2 +-
 .../service/StorageServiceServerTest.java  |   1 +
 15 files changed, 179 insertions(+), 79 deletions(-)

diff --cc CHANGES.txt
index 28eb042,0506da7..54ffe5b
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -360,6 -2,8 +360,7 @@@
   * Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
   * Add flag to disable SASI indexes, and warnings on creation 
(CASSANDRA-14866)
  Merged from 3.0:
+  * Fix assorted gossip races and add related runtime checks (CASSANDRA-15059)
 - * Fix mixed mode partition range scans with limit (CASSANDRA-15072)
   * cassandra-stress works with frozen collections: list and set 
(CASSANDRA-14907)
   * Fix handling FS errors on writing and reading flat files - LogTransaction 
and hints (CASSANDRA-15053)
   * Avoid double closing the iterator to avoid overcounting the number of 
requests (CASSANDRA-15058)
diff --cc build.xml
index 3a8dd6c,db97d05..4b23a25
--- a/build.xml
+++ b/build.xml
@@@ -1334,12 -1274,8 +1334,13 @@@
  
  
  
 -
 -  
++  
 +
 +
 +
 +
  


diff --cc ide/idea/workspace.xml
index 150f1a0,8d1b0fc..378997b
--- a/ide/idea/workspace.xml
+++ b/ide/idea/workspace.xml
@@@ -167,7 -167,7 +167,7 @@@



-   
++  


diff --cc src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index e5fe772,e452830..e2c2ace
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@@ -2690,121 -2533,8 +2693,126 @@@ public class DatabaseDescripto
  return backPressureStrategy;
  }
  
 +public static ConsistencyLevel getIdealConsistencyLevel()
 +{
 +return conf.ideal_consistency_level;
 +}
 +
 +public static void setIdealConsistencyLevel(ConsistencyLevel cl)
 +{
 +conf.ideal_consistency_level = cl;
 +}
 +
 +public static int getRepairCommandPoolSize()
 +{
 +return conf.repair_command_pool_size;
 +}
 +
 +public static Config.RepairCommandPoolFullStrategy 
getRepairCommandPoolFullStrategy()
 +{
 +return conf.repair_command_pool_full_strategy;
 +}
 +
 +public static FullQueryLoggerOptions getFullQueryLogOptions()
 +{
 +return  conf.full_query_logging_options;
 +}
 +
 +public static boolean getBlockForPeersInRemoteDatacenters()
 +{
 +return conf.block_for_peers_in_remote_dcs;
 +}
 +
 +public static int getBlockForPeersTimeoutInSeconds()
 +{
 +return conf.block_for_peers_timeout_in_secs;
 +}
 +
 +public static boolean automaticSSTableUpgrade()
 +{
 +return conf.automatic_sstable_upgrade;
 +}
 +
 +public static void setAutomaticSSTableUpgradeEnabled(boolean enabled)
 +{
 +if (conf.automatic_sstable_upgrade != enabled)
 +logger.debug("Changing automatic_sstable_upgrade to {}", enabled);
 +conf.automatic_sstable_upgrade = enabled;
 +}
 +
 +public static int maxConcurrentAutoUpgradeTasks()
 +{
 +return conf.max_concurrent_automatic_sstable_upgrades;
 +}
 +
 +public static void setMaxConcurrentAutoUpgradeTasks(int value)
 +{
 +if (conf.max_concurrent_automatic_sstable_upgrades != value)
 +logger.debug("Changing max_concurrent_automatic_sstable_upgrades 
to {}", value);
 +validateMaxConcurrentAutoUpgradeTasksConf(value);
 +conf.max_concurrent_automatic_sstable_upgrades = value;
 +}
 +
 +private static void validateMaxConcurrentAutoUpgradeTasksConf(int value)
 +{
 +if (value < 0)
 +throw new 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-24 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 79766f738870cc98a2ecc3fb8ca9f250b081f386
Merge: 5e84ee3 839fc7e
Author: Blake Eggleston 
AuthorDate: Wed Apr 24 11:39:22 2019 -0700

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-24 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5e84ee38ebc831e83b1f4ff671a6c6b10e86d6f1
Merge: ed2d326 7e64003
Author: Blake Eggleston 
AuthorDate: Wed Apr 24 11:25:26 2019 -0700

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt  |  1 +
 .../apache/cassandra/distributed/api/IInstance.java  |  3 +++
 .../cassandra/distributed/impl/AbstractCluster.java  | 18 +-
 .../impl/DelegatingInvokableInstance.java| 12 
 .../apache/cassandra/distributed/impl/Instance.java  | 20 
 .../distributed/impl/InstanceClassLoader.java| 11 +++
 .../distributed/upgrade/UpgradeTestBase.java | 11 ---
 7 files changed, 64 insertions(+), 12 deletions(-)

diff --cc test/distributed/org/apache/cassandra/distributed/impl/Instance.java
index 038ae8a,07fd35d..00049f2
--- a/test/distributed/org/apache/cassandra/distributed/impl/Instance.java
+++ b/test/distributed/org/apache/cassandra/distributed/impl/Instance.java
@@@ -192,8 -203,11 +192,9 @@@ public class Instance extends IsolatedE
  try (DataOutputBuffer out = new DataOutputBuffer(1024))
  {
  InetAddressAndPort from = broadcastAddressAndPort();
- messageOut.serialize(out, MessagingService.current_version);
- deliver.accept(to, new Message(messageOut.verb.getId(), 
out.toByteArray(), id, MessagingService.current_version, from));
 -assert 
from.equals(lookupAddressAndPort.apply(messageOut.from));
 -InetAddressAndPort toFull = lookupAddressAndPort.apply(to);
+ int version = MessagingService.instance().getVersion(to);
+ messageOut.serialize(out, version);
 -deliver.accept(toFull, new Message(messageOut.verb.ordinal(), 
out.toByteArray(), id, version, from));
++deliver.accept(to, new Message(messageOut.verb.getId(), 
out.toByteArray(), id, version, from));
  }
  catch (IOException e)
  {
@@@ -227,6 -239,16 +228,16 @@@
  }).run();
  }
  
+ public int getMessagingVersion()
+ {
+ return callsOnInstance(() -> MessagingService.current_version).call();
+ }
+ 
+ public void setMessagingVersion(InetAddressAndPort endpoint, int version)
+ {
 -runOnInstance(() -> 
MessagingService.instance().setVersion(endpoint.address, version));
++runOnInstance(() -> MessagingService.instance().setVersion(endpoint, 
version));
+ }
+ 
  @Override
  public void startup(ICluster cluster)
  {
@@@ -330,18 -349,17 +341,19 @@@
  for (int i = 0; i < tokens.size(); i++)
  {
  InetAddressAndPort ep = hosts.get(i);
 -Gossiper.instance.initializeNodeUnsafe(ep.address, 
hostIds.get(i), 1);
 -Gossiper.instance.injectApplicationState(ep.address,
 +Gossiper.instance.initializeNodeUnsafe(ep, hostIds.get(i), 1);
 +Gossiper.instance.injectApplicationState(ep,
  ApplicationState.TOKENS,
  new 
VersionedValue.VersionedValueFactory(partitioner).tokens(Collections.singleton(tokens.get(i;
 -storageService.onChange(ep.address,
 +storageService.onChange(ep,
 +ApplicationState.STATUS_WITH_PORT,
 +new 
VersionedValue.VersionedValueFactory(partitioner).normal(Collections.singleton(tokens.get(i;
 +storageService.onChange(ep,
  ApplicationState.STATUS,
  new 
VersionedValue.VersionedValueFactory(partitioner).normal(Collections.singleton(tokens.get(i;
 -Gossiper.instance.realMarkAlive(ep.address, 
Gossiper.instance.getEndpointStateForEndpoint(ep.address));
 -
 +Gossiper.instance.realMarkAlive(ep, 
Gossiper.instance.getEndpointStateForEndpoint(ep));
- MessagingService.instance().setVersion(ep, 
MessagingService.current_version);
+ int version = Math.min(MessagingService.current_version, 
cluster.get(ep).getMessagingVersion());
 -MessagingService.instance().setVersion(ep.address, version);
++MessagingService.instance().setVersion(ep, version);
  }
  
  // check that all nodes are in token metadata


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-14 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 35a9b501b2f7b9c5818aa3a55be08762b0555650
Merge: 6898953 f0aef2c
Author: Mick Semb Wever 
AuthorDate: Mon Apr 15 13:08:14 2019 +1000

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 .../org/apache/cassandra/tools/nodetool/stats/TableStatsPrinter.java| 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index 8db864c,62fa3c3..50152aa
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,361 -1,5 +1,362 @@@
 +4.0
 + * Fix AbstractBTreePartition locking in java 11 (CASSANDRA-14607)
 + * SimpleClient should pass connection properties as options (CASSANDRA-15056)
 + * Set repaired data tracking flag on range reads if enabled (CASSANDRA-15019)
 + * Calculate pending ranges for BOOTSTRAP_REPLACE correctly (CASSANDRA-14802)
 + * Make TableCQLHelper reuse the single quote pattern (CASSANDRA-15033)
 + * Add Zstd compressor (CASSANDRA-14482)
 + * Fix IR prepare anti-compaction race (CASSANDRA-15027)
 + * Fix SimpleStrategy option validation (CASSANDRA-15007)
 + * Don't try to cancel 2i compactions when starting anticompaction 
(CASSANDRA-15024)
 + * Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025)
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair prepare phase if it encounters sstables from 
un-finalized sessions (CASSANDRA-14763)
 + * Add a check for receiving digest response from transient node 
(CASSANDRA-14750)
 + * Fail query on transient replica if coordinator only expects full data 
(CASSANDRA-14704)
 + * Remove mentions of transient replication from repair path (CASSANDRA-14698)
 + * Fix handleRepairStatusChangedNotification to remove first then add 
(CASSANDRA-14720)
 + * Allow transient node to serve as a repair coordinator (CASSANDRA-14693)
 + * DecayingEstimatedHistogramReservoir.EstimatedHistogramReservoirSnapshot 
returns wrong value for size() and incorrectly calculates count 
(CASSANDRA-14696)
 + * AbstractReplicaCollection equals and hash code should throw due 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-10 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 7d6c3cd2bd6a399069e68a23a93c583bd4aee127
Merge: 2d622e0 8c38b20
Author: Mick Semb Wever 
AuthorDate: Wed Apr 10 21:39:02 2019 +1000

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 tools/stress/src/org/apache/cassandra/stress/StressProfile.java | 5 +
 2 files changed, 6 insertions(+)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-07 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 2d622e05d1576d20c3bf6504cbdaf438a895b4cf
Merge: 439c827 a82603a
Author: Mick Semb Wever 
AuthorDate: Sun Apr 7 14:23:27 2019 +1000

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-04-01 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 439c8278f00d0b571f66190e5572371f6e8e4e59
Merge: e49b25c 8ac2e42
Author: Mick Semb Wever 
AuthorDate: Mon Apr 1 20:50:02 2019 +1100

Merge branch 'cassandra-3.11' into trunk

 conf/cassandra-env.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --cc conf/cassandra-env.sh
index dc30437,7f7081b..5c9844c
--- a/conf/cassandra-env.sh
+++ b/conf/cassandra-env.sh
@@@ -263,11 -291,11 +263,11 @@@ JVM_OPTS="$JVM_OPTS -Dcom.sun.managemen
  
  # To use mx4j, an HTML interface for JMX, add mx4j-tools.jar to the lib/
  # directory.
- # See http://wiki.apache.org/cassandra/Operations#Monitoring_with_MX4J
 -# See http://cassandra.apache.org/doc/3.11/operating/metrics.html#jmx
++# See http://cassandra.apache.org/doc/latest/operating/metrics.html#jmx
  # By default mx4j listens on 0.0.0.0:8081. Uncomment the following lines
  # to control its listen address and port.
 -#MX4J_ADDRESS="-Dmx4jaddress=127.0.0.1"
 -#MX4J_PORT="-Dmx4jport=8081"
 +#MX4J_ADDRESS="127.0.0.1"
 +#MX4J_PORT="8081"
  
  # Cassandra uses SIGAR to capture OS metrics CASSANDRA-7838
  # for SIGAR we have to set the java.library.path


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-26 Thread marcuse
This is an automated email from the ASF dual-hosted git repository.

marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8fdd6c74ede5ad30a517d372f08ac553b35e04cd
Merge: 9063cea 08018ab
Author: Marcus Eriksson 
AuthorDate: Tue Mar 26 10:12:48 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 .../cassandra/db/compaction/CompactionInfo.java|   5 -
 .../cassandra/db/compaction/CompactionManager.java |   2 +-
 .../cassandra/io/sstable/IndexSummaryManager.java  |  38 +--
 .../io/sstable/IndexSummaryRedistribution.java |  26 +++--
 .../org/apache/cassandra/utils/FBUtilities.java|   2 +-
 test/unit/org/apache/cassandra/Util.java   |  27 +
 .../db/compaction/ActiveCompactionsTest.java   |   6 +-
 .../db/compaction/AntiCompactionBytemanTest.java   |   3 +-
 .../db/compaction/AntiCompactionTest.java  |  22 +---
 .../io/sstable/IndexSummaryManagerTest.java| 111 ++---
 11 files changed, 154 insertions(+), 89 deletions(-)

diff --cc CHANGES.txt
index 131bcb2,42fd101..a4c285f
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -364,8 -7,10 +364,9 @@@ Merged from 3.0
   * Add missing commands to nodetool_completion (CASSANDRA-14916)
   * Anti-compaction temporarily corrupts sstable state for readers 
(CASSANDRA-15004)
  Merged from 2.2:
+  * Fix index summary redistribution cancellation (CASSANDRA-15045)
   * Refactor Circle CI configuration (CASSANDRA-14806)
   * Fixing invalid CQL in security documentation (CASSANDRA-15020)
 - * Multi-version in-JVM dtests (CASSANDRA-14937)
  
  
  3.11.4
diff --cc src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
index 7c950c0,93bb4c9..09bed74
--- a/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionInfo.java
@@@ -49,19 -34,41 +49,14 @@@ public final class CompactionInf
  private final long total;
  private final Unit unit;
  private final UUID compactionId;
 +private final ImmutableSet sstables;
  
 -public static enum Unit
 -{
 -BYTES("bytes"), RANGES("ranges"), KEYS("keys");
 -
 -private final String name;
 -
 -private Unit(String name)
 -{
 -this.name = name;
 -}
 -
 -@Override
 -public String toString()
 -{
 -return name;
 -}
 -
 -public static boolean isFileSize(String unit)
 -{
 -return BYTES.toString().equals(unit);
 -}
 -}
 -
 -public CompactionInfo(CFMetaData cfm, OperationType tasktype, long 
bytesComplete, long totalBytes, UUID compactionId)
 -{
 -this(cfm, tasktype, bytesComplete, totalBytes, Unit.BYTES, 
compactionId);
 -}
 -
 -public CompactionInfo(OperationType tasktype, long completed, long total, 
Unit unit, UUID compactionId)
 +public CompactionInfo(TableMetadata metadata, OperationType tasktype, 
long bytesComplete, long totalBytes, UUID compactionId, 
Collection sstables)
  {
 -this(null, tasktype, completed, total, unit, compactionId);
 +this(metadata, tasktype, bytesComplete, totalBytes, Unit.BYTES, 
compactionId, sstables);
  }
  
- public CompactionInfo(OperationType tasktype, long completed, long total, 
Unit unit, UUID compactionId, Collection sstables)
- {
- this(null, tasktype, completed, total, unit, compactionId, sstables);
- }
- 
 -public CompactionInfo(CFMetaData cfm, OperationType tasktype, long 
completed, long total, Unit unit, UUID compactionId)
 +private CompactionInfo(TableMetadata metadata, OperationType tasktype, 
long completed, long total, Unit unit, UUID compactionId, 
Collection sstables)
  {
  this.tasktype = tasktype;
  this.completed = completed;
diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index b388098,e0ec179..d387701
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@@ -2107,11 -2078,9 +2107,11 @@@ public class CompactionManager implemen
  if ((info.getTaskType() == OperationType.VALIDATION) && 
!interruptValidation)
  continue;
  
- if (Iterables.contains(columnFamilies, info.getTableMetadata()))
 -// cfmetadata is null for index summary redistributions which are 
'global' - they involve all keyspaces/tables
 -if (info.getCFMetaData() == null || 
Iterables.contains(columnFamilies, info.getCFMetaData()))
 -compactionHolder.stop(); // signal compaction to stop
++if (info.getTableMetadata() == null || 
Iterables.contains(columnFamilies, info.getTableMetadata()))
 +{
 +if (info.shouldStop(sstablePredicate))
 +compactionHolder.stop();
 +}
  

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-25 Thread marcuse
This is an automated email from the ASF dual-hosted git repository.

marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 1d9793eff967a62ccde3796d9a1e5a9f8881e141
Merge: e191aff 9d7eeb5
Author: Marcus Eriksson 
AuthorDate: Mon Mar 25 09:08:12 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../partitions/UnfilteredPartitionIterators.java   |  9 +++
 .../test/DistributedReadWritePathTest.java | 30 ++
 3 files changed, 35 insertions(+), 5 deletions(-)

diff --cc 
src/java/org/apache/cassandra/db/partitions/UnfilteredPartitionIterators.java
index 24c4d4a,757143f..7990474
--- 
a/src/java/org/apache/cassandra/db/partitions/UnfilteredPartitionIterators.java
+++ 
b/src/java/org/apache/cassandra/db/partitions/UnfilteredPartitionIterators.java
@@@ -256,20 -246,21 +256,19 @@@ public abstract class UnfilteredPartiti
  /**
   * Digests the the provided iterator.
   *
+  * Caller must close the provided iterator.
+  *
 - * @param command the command that has yield {@code iterator}. This can 
be null if {@code version >= MessagingService.VERSION_30}
 - * as this is only used when producing digest to be sent to legacy nodes.
   * @param iterator the iterator to digest.
 - * @param digest the {@code MessageDigest} to use for the digest.
 + * @param hasher the {@link Hasher} to use for the digest.
   * @param version the messaging protocol to use when producing the digest.
   */
 -public static void digest(ReadCommand command, 
UnfilteredPartitionIterator iterator, MessageDigest digest, int version)
 +public static void digest(UnfilteredPartitionIterator iterator, Hasher 
hasher, int version)
  {
- try (UnfilteredPartitionIterator iter = iterator)
+ while (iterator.hasNext())
  {
- while (iter.hasNext())
+ try (UnfilteredRowIterator partition = iterator.next())
  {
- try (UnfilteredRowIterator partition = iter.next())
- {
 -UnfilteredRowIterators.digest(command, partition, digest, 
version);
 +UnfilteredRowIterators.digest(partition, hasher, version);
- }
  }
  }
  }
diff --cc 
test/distributed/org/apache/cassandra/distributed/test/DistributedReadWritePathTest.java
index a61ef8e,238e9e7..b95f166
--- 
a/test/distributed/org/apache/cassandra/distributed/test/DistributedReadWritePathTest.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/test/DistributedReadWritePathTest.java
@@@ -22,13 -22,14 +22,17 @@@ import org.junit.Assert
  import org.junit.Test;
  
  import org.apache.cassandra.db.ConsistencyLevel;
+ import org.apache.cassandra.db.Keyspace;
  import org.apache.cassandra.distributed.Cluster;
+ import org.apache.cassandra.distributed.impl.IInvokableInstance;
+ 
+ import static org.junit.Assert.assertEquals;
  
 +import static org.apache.cassandra.net.MessagingService.Verb.READ_REPAIR;
 +
  public class DistributedReadWritePathTest extends DistributedTestBase
  {
 +
  @Test
  public void coordinatorReadTest() throws Throwable
  {


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-08 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 9ecec33c41213d0fd529c6c3f26b2b07504452a9
Merge: 50027f5 84fc68c
Author: Mick Semb Wever 
AuthorDate: Fri Mar 8 19:53:55 2019 +1100

Merge branch 'cassandra-3.11' into trunk

 NOTICE.txt | 2 +-
 build.xml  | 6 +-
 2 files changed, 2 insertions(+), 6 deletions(-)



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-05 Thread jolynch
This is an automated email from the ASF dual-hosted git repository.

jolynch pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 50027f52322b7c0006c0b3c51cc6517c252e7e59
Merge: 5b660c8 036fff3
Author: Joseph Lynch 
AuthorDate: Tue Mar 5 16:06:36 2019 -0800

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 -
 1 file changed, 1 deletion(-)

diff --cc CHANGES.txt
index a264236,2e1234b..a24eeea
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -359,7 -7,7 +359,6 @@@ Merged from 3.0
   * Anti-compaction temporarily corrupts sstable state for readers 
(CASSANDRA-15004)
  Merged from 2.2:
   * Fixing invalid CQL in security documentation (CASSANDRA-15020)
-  * Make tools/bin/token-generator py2/3 compatible (CASSANDRA-15012)
 - * Multi-version in-JVM dtests (CASSANDRA-14937)
  
  
  3.11.4


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-05 Thread vinaychella
This is an automated email from the ASF dual-hosted git repository.

vinaychella pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5b660c845b81d270217512e32afea08d827aebca
Merge: b66fb62 555c6d2
Author: Vinay Chella 
AuthorDate: Tue Mar 5 15:39:51 2019 -0800

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 doc/cql3/CQL.textile| 8 
 doc/source/cql/security.rst | 8 
 3 files changed, 9 insertions(+), 8 deletions(-)

diff --cc CHANGES.txt
index 207da38,4fe82e1..a264236
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -358,7 -6,9 +358,8 @@@ Merged from 3.0
   * Add missing commands to nodetool_completion (CASSANDRA-14916)
   * Anti-compaction temporarily corrupts sstable state for readers 
(CASSANDRA-15004)
  Merged from 2.2:
+  * Fixing invalid CQL in security documentation (CASSANDRA-15020)
   * Make tools/bin/token-generator py2/3 compatible (CASSANDRA-15012)
 - * Multi-version in-JVM dtests (CASSANDRA-14937)
  
  
  3.11.4


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-03-05 Thread jolynch
This is an automated email from the ASF dual-hosted git repository.

jolynch pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit b66fb62829ea38701d39504019f511ca41a06be6
Merge: 6b3ea1e b780f62
Author: Joseph Lynch 
AuthorDate: Tue Mar 5 13:41:16 2019 -0800

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --cc CHANGES.txt
index 0283be6,5a98a76..207da38
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -357,6 -5,9 +357,8 @@@ Merged from 3.0
   * Improve merkle tree size and time on heap (CASSANDRA-14096)
   * Add missing commands to nodetool_completion (CASSANDRA-14916)
   * Anti-compaction temporarily corrupts sstable state for readers 
(CASSANDRA-15004)
+ Merged from 2.2:
+  * Make tools/bin/token-generator py2/3 compatible (CASSANDRA-15012)
 - * Multi-version in-JVM dtests (CASSANDRA-14937)
  
  
  3.11.4


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-25 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 03d460c1ae9bd1c193e04bde0e22cadb8e9b29d4
Merge: 73ff199 093fe7d
Author: Alex Petrov 
AuthorDate: Mon Feb 25 16:50:31 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 .../apache/cassandra/cql3/UntypedResultSet.java|  82 ++
 .../cassandra/distributed/api/ICoordinator.java|   4 +
 .../cassandra/distributed/impl/Coordinator.java|  67 +++-
 .../apache/cassandra/distributed/impl/RowUtil.java |  27 +
 .../test/DistributedReadWritePathTest.java | 119 -
 .../distributed/test/DistributedTestBase.java  |  40 ++-
 6 files changed, 334 insertions(+), 5 deletions(-)

diff --cc src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 9733830,c551d42..5de4eae
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@@ -22,16 -22,20 +22,19 @@@ import java.net.InetAddress
  import java.nio.ByteBuffer;
  import java.util.*;
  
+ import com.google.common.annotations.VisibleForTesting;
+ 
 -import org.apache.cassandra.service.ClientState;
 -import org.apache.cassandra.transport.ProtocolVersion;
 -import org.apache.cassandra.utils.AbstractIterator;
 -
 -import org.apache.cassandra.config.CFMetaData;
 -import org.apache.cassandra.config.ColumnDefinition;
 +import org.apache.cassandra.schema.ColumnMetadata;
  import org.apache.cassandra.cql3.statements.SelectStatement;
  import org.apache.cassandra.db.*;
 -import org.apache.cassandra.db.rows.*;
 -import org.apache.cassandra.db.partitions.PartitionIterator;
  import org.apache.cassandra.db.marshal.*;
 +import org.apache.cassandra.db.partitions.PartitionIterator;
 +import org.apache.cassandra.db.rows.*;
 +import org.apache.cassandra.schema.TableMetadata;
++import org.apache.cassandra.service.ClientState;
  import org.apache.cassandra.service.pager.QueryPager;
 +import org.apache.cassandra.transport.ProtocolVersion;
 +import org.apache.cassandra.utils.AbstractIterator;
  import org.apache.cassandra.utils.FBUtilities;
  
  /** a utility for doing internal cql-based queries */
@@@ -203,6 -230,62 +220,71 @@@ public abstract class UntypedResultSet 
  }
  }
  
 -private static class FromPager extends UntypedResultSet
++/**
++ * Pager that calls `execute` rather than `executeInternal`
++ */
++private static class FromDistributedPager extends UntypedResultSet
+ {
+ private final SelectStatement select;
++private final ConsistencyLevel cl;
++private final ClientState clientState;
+ private final QueryPager pager;
+ private final int pageSize;
+ private final List metadata;
+ 
 -private FromPager(SelectStatement select, QueryPager pager, int 
pageSize)
++private FromDistributedPager(SelectStatement select,
++ ConsistencyLevel cl,
++ ClientState clientState,
++ QueryPager pager, int pageSize)
+ {
+ this.select = select;
++this.cl = cl;
++this.clientState = clientState;
+ this.pager = pager;
+ this.pageSize = pageSize;
+ this.metadata = select.getResultMetadata().requestNames();
+ }
+ 
+ public int size()
+ {
+ throw new UnsupportedOperationException();
+ }
+ 
+ public Row one()
+ {
+ throw new UnsupportedOperationException();
+ }
+ 
+ public Iterator iterator()
+ {
+ return new AbstractIterator()
+ {
+ private Iterator> currentPage;
+ 
+ protected Row computeNext()
+ {
+ int nowInSec = FBUtilities.nowInSeconds();
+ while (currentPage == null || !currentPage.hasNext())
+ {
+ if (pager.isExhausted())
+ return endOfData();
+ 
 -try (ReadExecutionController executionController = 
pager.executionController();
 - PartitionIterator iter = 
pager.fetchPageInternal(pageSize, executionController))
++try (PartitionIterator iter = 
pager.fetchPage(pageSize, cl, clientState, System.nanoTime()))
+ {
+ currentPage = select.process(iter, 
nowInSec).rows.iterator();
+ }
+ }
+ return new Row(metadata, currentPage.next());
+ }
+ };
+ }
+ 
+ public List metadata()
+ {
+ return metadata;
+ }
+ }
+ 
  public static class Row
  {
  private 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-25 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5c4c75cac70dfb885a9905b7fc33a910f83ac989
Merge: 0e7820f 7b462ec
Author: Alex Petrov 
AuthorDate: Mon Feb 25 14:20:03 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 .circleci/config.yml   | 11 +--
 build.xml  | 63 +++
 .../cassandra/distributed/api/IInstance.java   |  3 +-
 .../distributed/api/IIsolatedExecutor.java |  3 +-
 .../distributed/impl/AbstractCluster.java  | 30 ---
 .../impl/DelegatingInvokableInstance.java  |  4 +-
 .../cassandra/distributed/impl/Instance.java   | 18 ++---
 .../distributed/impl/IsolatedExecutor.java | 27 ++-
 .../distributed/test/DistributedTestBase.java  |  9 +++
 .../cassandra/distributed/test/TestLocator.java| 93 ++
 10 files changed, 211 insertions(+), 50 deletions(-)

diff --cc build.xml
index efcc9a9,5c5385c..7ada775
--- a/build.xml
+++ b/build.xml
@@@ -1317,6 -1269,6 +1309,8 @@@
   more aggressively rather than waiting. See CASSANDRA-14922 for 
more details.
  -->
  
++
++
  
  
  
@@@ -1452,9 -1401,10 +1446,9 @@@
-->

  
-   
+   


 -  



@@@ -1872,7 -1814,47 +1867,47 @@@
  

  
- 
+   
+   
+ 
+   
 -  
++  
+   
+   
+   
+   
+   
+   
+ 
+ 
+   
+ 
+   
+ 
+ 
+ 
+   
+ 
+   
+   
+   
+   
+   
+   
+   
+   
+ 
+   
+ 
+   
+   
+   
+   
+   
+ 
+   
+ 
+   

 shutdown()
  {
- sync((ExecutorService executor) -> {
+ Future future = async((ExecutorService executor) -> {
  Throwable error = null;
  error = parallelRun(error, executor,
  Gossiper.instance::stop,
@@@ -385,27 -390,16 +385,30 @@@
  StageManager::shutdownAndWait,
  SharedExecutorPool.SHARED::shutdown
  );
+ 
  LoggerContext loggerContext = (LoggerContext) 
LoggerFactory.getILoggerFactory();
  loggerContext.stop();
- super.shutdown();
  Throwables.maybeFail(error);
- }).accept(isolatedExecutor);
+ }).apply(isolatedExecutor);
+ 
+ return 
CompletableFuture.runAsync(ThrowingRunnable.toRunnable(future::get), 
isolatedExecutor)
+ .thenRun(super::shutdown);
  }
  
 +private static void shutdownAndWait(ExecutorService executor)
 +{
 +try
 +{
 +executor.shutdownNow();
 +executor.awaitTermination(20, TimeUnit.SECONDS);
 +}
 +catch (InterruptedException e)
 +{
 +throw new RuntimeException(e);
 +}
 +assert executor.isTerminated() && executor.isShutdown() : executor;
 +}
 +
  private static Throwable parallelRun(Throwable accumulate, 
ExecutorService runOn, ThrowingRunnable ... runnables)
  {
  List> results = new ArrayList<>();


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-24 Thread jjirsa
This is an automated email from the ASF dual-hosted git repository.

jjirsa pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 0e7820fc39d8623a2195e54dc3cf694c2986dc6d
Merge: dccf530 a621972
Author: Jeff Jirsa 
AuthorDate: Sun Feb 24 20:51:12 2019 -0800

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-19 Thread adelapena
This is an automated email from the ASF dual-hosted git repository.

adelapena pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 094689acf10bf133637c53aeebd3e8157832a279
Merge: 47d4971 e6a61be
Author: Andrés de la Peña 
AuthorDate: Tue Feb 19 15:08:10 2019 +

Merge branch 'cassandra-3.11' into trunk

# Conflicts:
#   CHANGES.txt
#   conf/cassandra.yaml
#   src/java/org/apache/cassandra/config/Config.java
#   src/java/org/apache/cassandra/config/DatabaseDescriptor.java
#   src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
#   src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
#   src/java/org/apache/cassandra/db/view/View.java
#   test/unit/org/apache/cassandra/cql3/ViewTest.java
#   test/unit/org/apache/cassandra/index/sasi/SASICQLTest.java

 CHANGES.txt|  3 +-
 NEWS.txt   | 17 +++-
 conf/cassandra.yaml| 23 ++
 src/java/org/apache/cassandra/config/Config.java   |  4 +-
 .../cassandra/config/DatabaseDescriptor.java   | 17 +++-
 .../statements/schema/CreateIndexStatement.java| 15 +++
 .../statements/schema/CreateViewStatement.java |  6 +--
 src/java/org/apache/cassandra/db/view/View.java|  2 +
 .../org/apache/cassandra/index/sasi/SASIIndex.java |  2 +
 test/conf/cassandra-murmur.yaml|  2 +
 test/conf/cassandra.yaml   |  2 +
 test/unit/org/apache/cassandra/cql3/ViewTest.java  | 51 ++
 .../apache/cassandra/index/sasi/SASICQLTest.java   | 49 +
 13 files changed, 178 insertions(+), 15 deletions(-)

diff --cc CHANGES.txt
index 09d1733,f520aed..02233dd
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,354 -1,5 +1,355 @@@
 +4.0
 + * Fix SimpleStrategy option validation (CASSANDRA-15007)
 + * Don't try to cancel 2i compactions when starting anticompaction 
(CASSANDRA-15024)
 + * Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025)
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-15 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit d75c438b21678eda3bf8ba3890fd7f61b9673548
Merge: 70e6f29 b9b2e8e
Author: Aleksey Yeshchenko 
AuthorDate: Fri Feb 15 10:05:14 2019 +

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   3 +
 .../apache/cassandra/tools/nodetool/Status.java| 111 -
 2 files changed, 45 insertions(+), 69 deletions(-)

diff --cc CHANGES.txt
index 1394ea8,2f9813e..0c856c2
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,353 -1,11 +1,356 @@@
 +4.0
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair prepare phase if it encounters sstables from 
un-finalized sessions (CASSANDRA-14763)
 + * Add a check for receiving digest response from transient node 
(CASSANDRA-14750)
 + * Fail query on transient replica if coordinator only expects full data 
(CASSANDRA-14704)
 + * Remove mentions of transient replication from repair path (CASSANDRA-14698)
 + * Fix handleRepairStatusChangedNotification to remove first then add 
(CASSANDRA-14720)
 + * Allow transient node to serve as a repair coordinator (CASSANDRA-14693)
 + * DecayingEstimatedHistogramReservoir.EstimatedHistogramReservoirSnapshot 
returns wrong value for size() and incorrectly calculates count 
(CASSANDRA-14696)
 + * AbstractReplicaCollection equals and hash code should throw due to 
conflict between order sensitive/insensitive uses (CASSANDRA-14700)
 + * Detect inconsistencies in repaired data on the read path (CASSANDRA-14145)
 + * Add checksumming to the native protocol (CASSANDRA-13304)
 + * Make AuthCache more easily extendable (CASSANDRA-14662)
 + * Extend RolesCache to include detailed role info (CASSANDRA-14497)
 + * Add fqltool compare (CASSANDRA-14619)
 + * Add fqltool replay (CASSANDRA-14618)
 + * Log keyspace in full query log (CASSANDRA-14656)
 + * Transient Replication and Cheap Quorums (CASSANDRA-14404)
 + * Log server-generated timestamp and nowInSeconds used by queries in FQL 
(CASSANDRA-14675)
 + * Add diagnostic events for read repairs (CASSANDRA-14668)
 + 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-14 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 70e6f2952fd648f45aa9075909c13e5783141318
Merge: cbf4da4 1268530
Author: Blake Eggleston 
AuthorDate: Thu Feb 14 13:21:54 2019 -0800

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 NEWS.txt   |   3 +
 conf/cassandra.yaml|  11 +
 src/java/org/apache/cassandra/config/Config.java   |   5 +
 .../cassandra/config/DatabaseDescriptor.java   |  54 
 .../org/apache/cassandra/repair/RepairJob.java |   4 +-
 .../org/apache/cassandra/repair/RepairSession.java |  17 +-
 .../apache/cassandra/repair/ValidationManager.java |  17 +-
 .../cassandra/service/ActiveRepairService.java |  12 +
 .../service/ActiveRepairServiceMBean.java  |   3 +
 .../apache/cassandra/service/StorageService.java   |  11 +-
 .../cassandra/service/StorageServiceMBean.java |   4 +
 .../org/apache/cassandra/utils/MerkleTree.java |  46 +++
 .../cassandra/config/DatabaseDescriptorTest.java   |  69 +
 .../org/apache/cassandra/repair/RepairJobTest.java | 317 +
 .../org/apache/cassandra/repair/ValidatorTest.java | 158 +-
 .../org/apache/cassandra/utils/MerkleTreeTest.java |  98 ++-
 17 files changed, 762 insertions(+), 68 deletions(-)

diff --cc CHANGES.txt
index 87f3e2b,00ca115..1394ea8
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -354,6 -11,6 +354,7 @@@
   * Make stop-server.bat wait for Cassandra to terminate (CASSANDRA-14829)
   * Correct sstable sorting for garbagecollect and levelled compaction 
(CASSANDRA-14870)
  Merged from 3.0:
++ * Improve merkle tree size and time on heap (CASSANDRA-14096)
   * Severe concurrency issues in STCS,DTCS,TWCS,TMD.Topology,TypeParser
   * Add a script to make running the cqlsh tests in cassandra repo easier 
(CASSANDRA-14951)
   * If SizeEstimatesRecorder misses a 'onDropTable' notification, the 
size_estimates table will never be cleared for that table. (CASSANDRA-14905)
diff --cc NEWS.txt
index 00c3178,d5a9128..d9950e3
--- a/NEWS.txt
+++ b/NEWS.txt
@@@ -113,112 -47,8 +113,115 @@@ New feature
  
  Upgrading
  -
 -  - repair_session_max_tree_depth setting has been added to 
cassandra.yaml to allow operators to reduce
 -merkle tree size if repair is creating too much heap pressure. See 
CASSANDRA-14096 for details.
 +- CASSANDRA-13241 lowered the default chunk_lengh_in_kb for compresesd 
tables from
 +  64kb to 16kb. For highly compressible data this can have a noticeable 
impact
 +  on space utilization. You may want to consider manually specifying this 
value.
 +- Additional columns have been added to system_distributed.repair_history,
 +  system_traces.sessions and system_traces.events. As a result select 
queries
 +  againsts these tables will fail and generate an error in the log
 +  during upgrade when the cluster is mixed version. The tables can be made
 +  readable by following the instructions in CASSANDRA-14897 to add the
 +  new columns to the system tables before upgrading.
 +- Timestamp ties between values resolve differently: if either value has 
a TTL,
 +  this value always wins. This is to provide consistent reconciliation 
before
 +  and after the value expires into a tombstone.
 +- Cassandra 4.0 removed support for COMPACT STORAGE tables. All Compact 
Tables
 +  have to be migrated using `ALTER ... DROP COMPACT STORAGE` statement in 
3.0/3.11.
 +  Cassandra starting 4.0 will not start if flags indicate that the table 
is non-CQL.
 +  Syntax for creating compact tables is also deprecated.
 +- Support for legacy auth tables in the system_auth keyspace (users,
 +  permissions, credentials) and the migration code has been removed. 
Migration
 +  of these legacy auth tables must have been completed before the upgrade 
to
 +  4.0 and the legacy tables must have been removed. See the 'Upgrading' 
section
 +  for version 2.2 for migration instructions.
 +- Cassandra 4.0 removed support for the deprecated Thrift interface. 
Amongst
 +  other things, this implies the removal of all yaml options related to 
thrift
 +  ('start_rpc', rpc_port, ...).
 +- Cassandra 4.0 removed support for any pre-3.0 format. This means you
 +  cannot upgrade from a 2.x version to 4.0 directly, you have to upgrade 
to
 +  a 3.0.x/3.x version first (and run upgradesstable). In particular, this
 +  mean Cassandra 4.0 cannot load or read pre-3.0 sstables in any way: you
 +  will need to upgrade those sstable in 3.0.x/3.x first.
 +- Upgrades from 3.0.x or 3.x are supported since 3.0.13 or 3.11.0, 
previous
 +  versions will causes issues during rolling upgrades (CASSANDRA-13274).
 +- Cassandra will no longer allow 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-13 Thread aweisberg
This is an automated email from the ASF dual-hosted git repository.

aweisberg pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 2a7091616ee1361a1dcaec43b1c6d7fdfa35b9b8
Merge: 92f9568 4013eac
Author: Ariel Weisberg 
AuthorDate: Wed Feb 13 12:58:47 2019 -0500

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  4 +++
 debian/nodetool-completion | 82 +-
 2 files changed, 77 insertions(+), 9 deletions(-)

diff --cc CHANGES.txt
index 89c558a8,7d27ea9..87f3e2b
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,349 -1,9 +1,353 @@@
 +4.0
 + * SSL Cert Hot Reloading should check for sanity of the new 
keystore/truststore before loading it (CASSANDRA-14991)
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair prepare phase if it encounters sstables from 
un-finalized sessions (CASSANDRA-14763)
 + * Add a check for receiving digest response from transient node 
(CASSANDRA-14750)
 + * Fail query on transient replica if coordinator only expects full data 
(CASSANDRA-14704)
 + * Remove mentions of transient replication from repair path (CASSANDRA-14698)
 + * Fix handleRepairStatusChangedNotification to remove first then add 
(CASSANDRA-14720)
 + * Allow transient node to serve as a repair coordinator (CASSANDRA-14693)
 + * DecayingEstimatedHistogramReservoir.EstimatedHistogramReservoirSnapshot 
returns wrong value for size() and incorrectly calculates count 
(CASSANDRA-14696)
 + * AbstractReplicaCollection equals and hash code should throw due to 
conflict between order sensitive/insensitive uses (CASSANDRA-14700)
 + * Detect inconsistencies in repaired data on the read path (CASSANDRA-14145)
 + * Add checksumming to the native protocol (CASSANDRA-13304)
 + * Make AuthCache more easily extendable (CASSANDRA-14662)
 + * Extend RolesCache to include detailed role info (CASSANDRA-14497)
 + * Add fqltool compare (CASSANDRA-14619)
 + * Add fqltool replay (CASSANDRA-14618)
 + * Log keyspace in full query log (CASSANDRA-14656)
 + * Transient Replication and Cheap Quorums (CASSANDRA-14404)
 + * Log server-generated timestamp and nowInSeconds used by queries in FQL 
(CASSANDRA-14675)
 + * Add diagnostic events for read repairs (CASSANDRA-14668)
 + * Use consistent 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-11 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 92f9568de641aa13c515aa621ad0eb8bd5631334
Merge: c49d42f 123113f
Author: Michael Shuler 
AuthorDate: Mon Feb 11 21:16:27 2019 -0600

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-04 Thread spod
This is an automated email from the ASF dual-hosted git repository.

spod pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit c3b91308f602eae06a78d96c431ba522415542e1
Merge: 27b3579 220611a
Author: Stefan Podkowinski 
AuthorDate: Mon Feb 4 16:33:22 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  5 +
 .../concurrent/AbstractLocalAwareExecutorService.java  | 10 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index 4f52cca,4608278..ec1fb78
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,349 -1,8 +1,354 @@@
 +4.0
 + * Avoid leaking threads when failing anticompactions and rate limit 
anticompactions (CASSANDRA-15002)
 + * Validate token() arguments early instead of throwing NPE at execution 
(CASSANDRA-14989)
 + * Add a new tool to dump audit logs (CASSANDRA-14885)
 + * Fix generating javadoc with Java11 (CASSANDRA-14988)
 + * Only cancel conflicting compactions when starting anticompactions and sub 
range compactions (CASSANDRA-14935)
 + * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
 + * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
 + * Make antiCompactGroup throw exception on error and anticompaction non 
cancellable
 +   again (CASSANDRA-14936)
 + * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
 + * Auto-expand replication_factor for NetworkTopologyStrategy 
(CASSANDRA-14303)
 + * Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
 + * BufferPool: allocating thread for new chunks should acquire directly 
(CASSANDRA-14832)
 + * Send correct messaging version in internode messaging handshake's third 
message (CASSANDRA-14896)
 + * Make Read and Write Latency columns consistent for proxyhistograms and 
tablehistograms (CASSANDRA-11939)
 + * Make protocol checksum type option case insensitive (CASSANDRA-14716)
 + * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
 + * Audit log allows system keyspaces to be audited via configuration options 
(CASSANDRA-14498)
 + * Lower default chunk_length_in_kb from 64kb to 16kb (CASSANDRA-13241)
 + * Startup checker should wait for count rather than percentage 
(CASSANDRA-14297)
 + * Fix incorrect sorting of replicas in 
SimpleStrategy.calculateNaturalReplicas (CASSANDRA-14862)
 + * Partitioned outbound internode TCP connections can occur when nodes 
restart (CASSANDRA-14358)
 + * Don't write to system_distributed.repair_history, system_traces.sessions, 
system_traces.events in mixed version 3.X/4.0 clusters (CASSANDRA-14841)
 + * Avoid running query to self through messaging service (CASSANDRA-14807)
 + * Allow using custom script for chronicle queue BinLog archival 
(CASSANDRA-14373)
 + * Transient->Full range movements mishandle consistency level upgrade 
(CASSANDRA-14759)
 + * ReplicaCollection follow-up (CASSANDRA-14726)
 + * Transient node receives full data requests (CASSANDRA-14762)
 + * Enable snapshot artifacts publish (CASSANDRA-12704)
 + * Introduce RangesAtEndpoint.unwrap to simplify 
StreamSession.addTransferRanges (CASSANDRA-14770)
 + * LOCAL_QUORUM may speculate to non-local nodes, resulting in Timeout 
instead of Unavailable (CASSANDRA-14735)
 + * Avoid creating empty compaction tasks after truncate (CASSANDRA-14780)
 + * Fail incremental repair prepare phase if it encounters sstables from 
un-finalized sessions (CASSANDRA-14763)
 + * Add a check for receiving digest response from transient node 
(CASSANDRA-14750)
 + * Fail query on transient replica if coordinator only expects full data 
(CASSANDRA-14704)
 + * Remove mentions of transient replication from repair path (CASSANDRA-14698)
 + * Fix handleRepairStatusChangedNotification to remove first then add 
(CASSANDRA-14720)
 + * Allow transient node to serve as a repair coordinator (CASSANDRA-14693)
 + * DecayingEstimatedHistogramReservoir.EstimatedHistogramReservoirSnapshot 
returns wrong value for size() and incorrectly calculates count 
(CASSANDRA-14696)
 + * AbstractReplicaCollection equals and hash code should throw due to 
conflict between order sensitive/insensitive uses (CASSANDRA-14700)
 + * Detect inconsistencies in repaired data on the read path (CASSANDRA-14145)
 + * Add checksumming to the native protocol (CASSANDRA-13304)
 + * Make AuthCache more easily extendable (CASSANDRA-14662)
 + * Extend RolesCache to include detailed role info (CASSANDRA-14497)
 + * Add fqltool compare (CASSANDRA-14619)
 + * Add fqltool replay (CASSANDRA-14618)
 + * Log keyspace in full query log (CASSANDRA-14656)
 + * Transient Replication and Cheap Quorums (CASSANDRA-14404)
 + * Log server-generated timestamp and nowInSeconds used by queries in FQL 
(CASSANDRA-14675)
 + * Add diagnostic events for read repairs (CASSANDRA-14668)
 + * Use consistent nowInSeconds and timestamps values within a request 
(CASSANDRA-14671)
 + * Add sampler for 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-01 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 7a89e31d94f6e09500db9d5c0285f7cb27f8aff9
Merge: 5ea3394 fd47391
Author: Michael Shuler 
AuthorDate: Fri Feb 1 12:40:51 2019 -0600

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-02-01 Thread snazy
This is an automated email from the ASF dual-hosted git repository.

snazy pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 5ea3394e9561591322356b19f41ef450fe1972ab
Merge: ef6c5f8 737a566
Author: Robert Stupp 
AuthorDate: Fri Feb 1 12:34:56 2019 +0100

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 1 +
 1 file changed, 1 insertion(+)

diff --cc CHANGES.txt
index a905ad3,76cd7d7..4f52cca
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -348,10 -2,13 +348,11 @@@
   * Make stop-server.bat wait for Cassandra to terminate (CASSANDRA-14829)
   * Correct sstable sorting for garbagecollect and levelled compaction 
(CASSANDRA-14870)
  Merged from 3.0:
+  * Severe concurrency issues in STCS,DTCS,TWCS,TMD.Topology,TypeParser
   * Add a script to make running the cqlsh tests in cassandra repo easier 
(CASSANDRA-14951)
   * If SizeEstimatesRecorder misses a 'onDropTable' notification, the 
size_estimates table will never be cleared for that table. (CASSANDRA-14905)
 - * Counters fail to increment in 2.1/2.2 to 3.X mixed version clusters 
(CASSANDRA-14958)
   * Streaming needs to synchronise access to LifecycleTransaction 
(CASSANDRA-14554)
   * Fix cassandra-stress write hang with default options (CASSANDRA-14616)
 - * Differentiate between slices and RTs when decoding legacy bounds 
(CASSANDRA-14919)
   * Netty epoll IOExceptions caused by unclean client disconnects being logged 
at INFO (CASSANDRA-14909)
   * Unfiltered.isEmpty conflicts with Row extends AbstractCollection.isEmpty 
(CASSANDRA-14588)
   * RangeTombstoneList doesn't properly clean up mergeable or superseded rts 
in some cases (CASSANDRA-14894)


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



[cassandra] 01/01: Merge branch cassandra-3.11 into trunk

2019-02-01 Thread snazy
This is an automated email from the ASF dual-hosted git repository.

snazy pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit ef6c5f8ba9dc18e7a5bacfd5d8461ae5d9f12df4
Merge: 7f634fe 16c96c2
Author: Robert Stupp 
AuthorDate: Fri Feb 1 12:27:49 2019 +0100

Merge branch cassandra-3.11 into trunk

 .../org/apache/cassandra/db/ColumnFamilyStore.java |   1 -
 .../db/compaction/AbstractCompactionStrategy.java  |  14 +-
 .../compaction/DateTieredCompactionStrategy.java   |  20 +-
 .../compaction/SizeTieredCompactionStrategy.java   |   6 +-
 .../compaction/TimeWindowCompactionStrategy.java   |   4 +-
 .../apache/cassandra/db/marshal/TypeParser.java|  30 +-
 .../cassandra/locator/NetworkTopologyStrategy.java |   3 +-
 .../apache/cassandra/locator/TokenMetadata.java| 414 -
 .../locator/NetworkTopologyStrategyTest.java   |   3 +-
 .../cassandra/locator/TokenMetadataTest.java   |  23 +-
 10 files changed, 312 insertions(+), 206 deletions(-)

diff --cc src/java/org/apache/cassandra/locator/NetworkTopologyStrategy.java
index c9f24e0,d48dec3..be63ea1
--- a/src/java/org/apache/cassandra/locator/NetworkTopologyStrategy.java
+++ b/src/java/org/apache/cassandra/locator/NetworkTopologyStrategy.java
@@@ -175,9 -150,9 +176,9 @@@ public class NetworkTopologyStrategy ex
  
  Topology topology = tokenMetadata.getTopology();
  // all endpoints in each DC, so we can check when we have exhausted 
all the members of a DC
 -Multimap allEndpoints = 
topology.getDatacenterEndpoints();
 +Multimap allEndpoints = 
topology.getDatacenterEndpoints();
  // all racks in a DC so we can check when we have exhausted all racks 
in a DC
- Map> racks = 
topology.getDatacenterRacks();
 -Map> racks = 
topology.getDatacenterRacks();
++Map> racks = 
topology.getDatacenterRacks();
  assert !allEndpoints.isEmpty() && !racks.isEmpty() : "not aware of 
any cluster members";
  
  int dcsToFill = 0;
diff --cc src/java/org/apache/cassandra/locator/TokenMetadata.java
index f95ee0c,8a1d9d0..cb189c8
--- a/src/java/org/apache/cassandra/locator/TokenMetadata.java
+++ b/src/java/org/apache/cassandra/locator/TokenMetadata.java
@@@ -96,19 -95,28 +96,20 @@@ public class TokenMetadat
  
  /* Use this lock for manipulating the token map */
  private final ReadWriteLock lock = new ReentrantReadWriteLock(true);
- private volatile ArrayList sortedTokens;
+ private volatile ArrayList sortedTokens; // safe to be read 
without a lock, as it's never mutated
+ 
+ private volatile Topology topology;
  
- private final Topology topology;
  public final IPartitioner partitioner;
  
 -private static final Comparator inetaddressCmp = new 
Comparator()
 -{
 -public int compare(InetAddress o1, InetAddress o2)
 -{
 -return 
ByteBuffer.wrap(o1.getAddress()).compareTo(ByteBuffer.wrap(o2.getAddress()));
 -}
 -};
 -
  // signals replication strategies that nodes have joined or left the ring 
and they need to recompute ownership
  private volatile long ringVersion = 0;
  
  public TokenMetadata()
  {
 -this(SortedBiMultiValMap.create(null, 
inetaddressCmp),
 - HashBiMap.create(),
 +this(SortedBiMultiValMap.create(),
 + HashBiMap.create(),
-  new Topology(),
+  Topology.empty(),
   DatabaseDescriptor.getPartitioner());
  }
  
@@@ -186,7 -194,8 +187,8 @@@
  try
  {
  boolean shouldSortTokens = false;
+ Topology.Builder topologyBuilder = topology.unbuild();
 -for (InetAddress endpoint : endpointTokens.keySet())
 +for (InetAddressAndPort endpoint : endpointTokens.keySet())
  {
  Collection tokens = endpointTokens.get(endpoint);
  
@@@ -372,14 -382,30 +375,30 @@@
  }
  }
  
 -public Optional getReplacementNode(InetAddress endpoint)
 +public Optional getReplacementNode(InetAddressAndPort 
endpoint)
  {
- return 
Optional.ofNullable(replacementToOriginal.inverse().get(endpoint));
+ lock.readLock().lock();
+ try
+ {
+ return 
Optional.ofNullable(replacementToOriginal.inverse().get(endpoint));
+ }
+ finally
+ {
+ lock.readLock().unlock();
+ }
  }
  
 -public Optional getReplacingNode(InetAddress endpoint)
 +public Optional getReplacingNode(InetAddressAndPort 
endpoint)
  {
- return Optional.ofNullable((replacementToOriginal.get(endpoint)));
+ lock.readLock().lock();
+ try
+ {
+ return Optional.ofNullable((replacementToOriginal.get(endpoint)));
+ }
+ finally
+ {
+ lock.readLock().unlock();
+ }
  }
  
  public void removeBootstrapTokens(Collection tokens)

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-18 Thread aweisberg
This is an automated email from the ASF dual-hosted git repository.

aweisberg pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 609af8c2e5ebb46a1c7120bf5201ef4c2f511e38
Merge: b875399 b51d3c9
Author: Ariel Weisberg 
AuthorDate: Fri Jan 18 12:41:01 2019 -0500

Merge branch 'cassandra-3.11' into trunk

 .circleci/config.yml | 2 +-
 CHANGES.txt  | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index 8e0b0c7,d85a4af..706a3ed
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -373,7 -33,10 +373,8 @@@ Merged from 3.0
   * sstableloader should use discovered broadcast address to connect 
intra-cluster (CASSANDRA-14522)
   * Fix reading columns with non-UTF names from schema (CASSANDRA-14468)
   Merged from 2.2:
+  * CircleCI docker image should bake in more dependencies (CASSANDRA-14985)
 - * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
   * MigrationManager attempts to pull schema from different major version 
nodes (CASSANDRA-14928)
 - * Fix incorrect cqlsh results when selecting same columns multiple times 
(CASSANDRA-13262)
   * Returns null instead of NaN or Infinity in JSON strings (CASSANDRA-14377)
  Merged from 2.1:
   * Paged Range Slice queries with DISTINCT can drop rows from results 
(CASSANDRA-14956)


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-17 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit b875399f060db2304c7528317e0e9dd28966a90e
Merge: 3bb8f88 e5ab9b6
Author: Sam Tunnicliffe 
AuthorDate: Thu Jan 17 12:01:30 2019 +

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|   1 +
 .../unit/org/apache/cassandra/cql3/PagingTest.java | 159 +
 2 files changed, 160 insertions(+)

diff --cc CHANGES.txt
index f44ac72,1d84b80..8e0b0c7
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -373,9 -33,12 +373,10 @@@ Merged from 3.0
   * sstableloader should use discovered broadcast address to connect 
intra-cluster (CASSANDRA-14522)
   * Fix reading columns with non-UTF names from schema (CASSANDRA-14468)
   Merged from 2.2:
 - * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
   * MigrationManager attempts to pull schema from different major version 
nodes (CASSANDRA-14928)
 - * Fix incorrect cqlsh results when selecting same columns multiple times 
(CASSANDRA-13262)
   * Returns null instead of NaN or Infinity in JSON strings (CASSANDRA-14377)
  Merged from 2.1:
+  * Paged Range Slice queries with DISTINCT can drop rows from results 
(CASSANDRA-14956)
   * Update release checksum algorithms to SHA-256, SHA-512 (CASSANDRA-14970)
  
  
diff --cc test/unit/org/apache/cassandra/cql3/PagingTest.java
index 000,a054d01..50bba0e
mode 00,100644..100644
--- a/test/unit/org/apache/cassandra/cql3/PagingTest.java
+++ b/test/unit/org/apache/cassandra/cql3/PagingTest.java
@@@ -1,0 -1,160 +1,159 @@@
+ /*
+  * Licensed to the Apache Software Foundation (ASF) under one
+  * or more contributor license agreements.  See the NOTICE file
+  * distributed with this work for additional information
+  * regarding copyright ownership.  The ASF licenses this file
+  * to you under the Apache License, Version 2.0 (the
+  * "License"); you may not use this file except in compliance
+  * with the License.  You may obtain a copy of the License at
+  *
+  * http://www.apache.org/licenses/LICENSE-2.0
+  *
+  * Unless required by applicable law or agreed to in writing, software
+  * distributed under the License is distributed on an "AS IS" BASIS,
+  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  * See the License for the specific language governing permissions and
+  * limitations under the License.
+  */
+ package org.apache.cassandra.cql3;
+ 
+ import java.net.InetAddress;
+ import java.util.Iterator;
+ import java.util.List;
+ 
+ import org.junit.AfterClass;
+ import org.junit.BeforeClass;
+ import org.junit.Test;
+ 
+ import com.datastax.driver.core.Cluster;
+ import com.datastax.driver.core.ResultSet;
+ import com.datastax.driver.core.Row;
+ import com.datastax.driver.core.Session;
+ import com.datastax.driver.core.SimpleStatement;
+ import com.datastax.driver.core.Statement;
+ import org.apache.cassandra.config.DatabaseDescriptor;
+ 
+ import org.apache.cassandra.dht.Murmur3Partitioner;
+ import org.apache.cassandra.dht.Murmur3Partitioner.LongToken;
 -import org.apache.cassandra.locator.AbstractEndpointSnitch;
 -import org.apache.cassandra.locator.IEndpointSnitch;
++import org.apache.cassandra.locator.*;
+ import org.apache.cassandra.service.EmbeddedCassandraService;
+ import org.apache.cassandra.service.StorageService;
+ import org.apache.cassandra.utils.FBUtilities;
+ 
+ import static junit.framework.Assert.assertFalse;
+ import static org.junit.Assert.assertEquals;
+ 
+ 
+ public class PagingTest
+ {
+ private static Cluster cluster;
+ private static Session session;
+ 
+ private static final String KEYSPACE = "paging_test";
+ private static final String createKsStatement = "CREATE KEYSPACE " + 
KEYSPACE +
+ " WITH REPLICATION = { 
'class' : 'SimpleStrategy', 'replication_factor' : 2 };";
+ 
+ private static final String dropKsStatement = "DROP KEYSPACE IF EXISTS " 
+ KEYSPACE;
+ 
+ @BeforeClass
+ public static void setup() throws Exception
+ {
+ System.setProperty("cassandra.config", "cassandra-murmur.yaml");
+ EmbeddedCassandraService cassandra = new EmbeddedCassandraService();
+ cassandra.start();
+ 
+ // Currently the native server start method return before the server 
is fully binded to the socket, so we need
+ // to wait slightly before trying to connect to it. We should fix 
this but in the meantime using a sleep.
+ Thread.sleep(500);
+ 
+ cluster = Cluster.builder().addContactPoint("127.0.0.1")
+
.withPort(DatabaseDescriptor.getNativeTransportPort())
+.build();
+ session = cluster.connect();

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-15 Thread aweisberg
This is an automated email from the ASF dual-hosted git repository.

aweisberg pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 028b6772231e18e2357dfff1fa04477efa377730
Merge: 00fff3e 62f0280
Author: Ariel Weisberg 
AuthorDate: Tue Jan 15 11:03:53 2019 -0500

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt|  1 +
 .../org/apache/cassandra/db/SystemKeyspace.java| 26 +-
 .../apache/cassandra/service/CassandraDaemon.java  | 16 -
 .../apache/cassandra/service/StorageService.java   | 23 +++
 .../cassandra/service/StorageServiceMBean.java |  5 +
 5 files changed, 64 insertions(+), 7 deletions(-)

diff --cc CHANGES.txt
index ba44dcf,477afd8..5af5b64
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -343,8 -2,11 +343,9 @@@
   * Make stop-server.bat wait for Cassandra to terminate (CASSANDRA-14829)
   * Correct sstable sorting for garbagecollect and levelled compaction 
(CASSANDRA-14870)
  Merged from 3.0:
+  * If SizeEstimatesRecorder misses a 'onDropTable' notification, the 
size_estimates table will never be cleared for that table. (CASSANDRA-14905)
 - * Counters fail to increment in 2.1/2.2 to 3.X mixed version clusters 
(CASSANDRA-14958)
   * Streaming needs to synchronise access to LifecycleTransaction 
(CASSANDRA-14554)
   * Fix cassandra-stress write hang with default options (CASSANDRA-14616)
 - * Differentiate between slices and RTs when decoding legacy bounds 
(CASSANDRA-14919)
   * Netty epoll IOExceptions caused by unclean client disconnects being logged 
at INFO (CASSANDRA-14909)
   * Unfiltered.isEmpty conflicts with Row extends AbstractCollection.isEmpty 
(CASSANDRA-14588)
   * RangeTombstoneList doesn't properly clean up mergeable or superseded rts 
in some cases (CASSANDRA-14894)
diff --cc src/java/org/apache/cassandra/db/SystemKeyspace.java
index 1b3b2a6,812659c..ddf6475
--- a/src/java/org/apache/cassandra/db/SystemKeyspace.java
+++ b/src/java/org/apache/cassandra/db/SystemKeyspace.java
@@@ -777,7 -802,7 +777,7 @@@ public final class SystemKeyspac
  
  /**
   * This method is used to update the System Keyspace with the new tokens 
for this node
--*/
++ */
  public static synchronized void updateTokens(Collection tokens)
  {
  assert !tokens.isEmpty() : "removeEndpoint should be used instead";
@@@ -1275,49 -1277,57 +1275,73 @@@
  executeInternal(cql, keyspace, table);
  }
  
+ /**
+  * Clears size estimates for a keyspace (used to manually clean when we 
miss a keyspace drop)
+  */
+ public static void clearSizeEstimates(String keyspace)
+ {
+ String cql = String.format("DELETE FROM %s.%s WHERE keyspace_name = 
?", SchemaConstants.SYSTEM_KEYSPACE_NAME, SIZE_ESTIMATES);
+ executeInternal(cql, keyspace);
+ }
+ 
+ /**
+  * @return A multimap from keyspace to table for all tables with entries 
in size estimates
+  */
 -
+ public static synchronized SetMultimap 
getTablesWithSizeEstimates()
+ {
+ SetMultimap keyspaceTableMap = HashMultimap.create();
+ String cql = String.format("SELECT keyspace_name, table_name FROM 
%s.%s", SchemaConstants.SYSTEM_KEYSPACE_NAME, SIZE_ESTIMATES);
+ UntypedResultSet rs = executeInternal(cql);
+ for (UntypedResultSet.Row row : rs)
+ {
+ keyspaceTableMap.put(row.getString("keyspace_name"), 
row.getString("table_name"));
+ }
 -
+ return keyspaceTableMap;
+ }
+ 
 -public static synchronized void updateAvailableRanges(String keyspace, 
Collection> completedRanges)
 +public static synchronized void updateAvailableRanges(String keyspace, 
Collection> completedFullRanges, Collection> 
completedTransientRanges)
  {
 -String cql = "UPDATE system.%s SET ranges = ranges + ? WHERE 
keyspace_name = ?";
 -Set rangesToUpdate = new 
HashSet<>(completedRanges.size());
 -for (Range range : completedRanges)
 -{
 -rangesToUpdate.add(rangeToBytes(range));
 -}
 -executeInternal(String.format(cql, AVAILABLE_RANGES), rangesToUpdate, 
keyspace);
 +String cql = "UPDATE system.%s SET full_ranges = full_ranges + ?, 
transient_ranges = transient_ranges + ? WHERE keyspace_name = ?";
 +executeInternal(format(cql, AVAILABLE_RANGES_V2),
 +
completedFullRanges.stream().map(SystemKeyspace::rangeToBytes).collect(Collectors.toSet()),
 +
completedTransientRanges.stream().map(SystemKeyspace::rangeToBytes).collect(Collectors.toSet()),
 +keyspace);
  }
  
 -public static synchronized Set> getAvailableRanges(String 
keyspace, IPartitioner partitioner)
 +/**
 + * List of the streamed ranges, where transientness is encoded based on 
the source, where range was streamed from.
 + */
 +public static synchronized 

[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-14 Thread aleksey
This is an automated email from the ASF dual-hosted git repository.

aleksey pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 6aeb1407ab4959cb2f78bf792344892ebb50e84a
Merge: f8e3264 5ede581
Author: Aleksey Yeshchenko 
AuthorDate: Mon Jan 14 18:07:48 2019 +

Merge branch 'cassandra-3.11' into trunk



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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-14 Thread mshuler
This is an automated email from the ASF dual-hosted git repository.

mshuler pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit f8e32649a392317e980beff7e2426af3bd9444ff
Merge: 3dcde08 6a7aa0f
Author: Michael Shuler 
AuthorDate: Mon Jan 14 11:40:11 2019 -0600

Merge branch 'cassandra-3.11' into trunk

 CHANGES.txt | 2 ++
 build.xml   | 8 
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --cc CHANGES.txt
index 32217d9,a442f11..ba44dcf
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -370,8 -30,12 +370,10 @@@ Merged from 3.0
   * sstableloader should use discovered broadcast address to connect 
intra-cluster (CASSANDRA-14522)
   * Fix reading columns with non-UTF names from schema (CASSANDRA-14468)
   Merged from 2.2:
 - * Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
   * MigrationManager attempts to pull schema from different major version 
nodes (CASSANDRA-14928)
 - * Fix incorrect cqlsh results when selecting same columns multiple times 
(CASSANDRA-13262)
   * Returns null instead of NaN or Infinity in JSON strings (CASSANDRA-14377)
+ Merged from 2.1:
+  * Update release checksum algorithms to SHA-256, SHA-512 (CASSANDRA-14970)
  
  
  3.11.3


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



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2019-01-09 Thread aweisberg
This is an automated email from the ASF dual-hosted git repository.

aweisberg pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 7ba86bf799283ddc4d6e424fe46376566b42c8ec
Merge: 3ddfbc8 6f2794f
Author: Ariel Weisberg 
AuthorDate: Wed Jan 9 11:35:03 2019 -0500

Merge branch 'cassandra-3.11' into trunk

 .circleci/config.yml | 88 ++--
 1 file changed, 86 insertions(+), 2 deletions(-)



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