Merge branch 'cassandra-3.0' into cassandra-3.11

Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/983c72a8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/983c72a8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/983c72a8

Branch: refs/heads/trunk
Commit: 983c72a84ab6628e09a78ead9e20a0c323a005af
Parents: 9d56132 b32a9e6
Author: Marcus Eriksson <[email protected]>
Authored: Mon Oct 2 09:34:49 2017 +0200
Committer: Marcus Eriksson <[email protected]>
Committed: Mon Oct 2 09:34:49 2017 +0200

----------------------------------------------------------------------
 CHANGES.txt                                     |  1 +
 .../apache/cassandra/db/lifecycle/Helpers.java  | 15 +++++
 .../apache/cassandra/db/lifecycle/LogFile.java  | 26 ++++++++
 .../cassandra/db/lifecycle/LogRecord.java       | 65 +++++++++++++++++++-
 .../cassandra/db/lifecycle/LogTransaction.java  | 16 +++++
 .../apache/cassandra/db/lifecycle/Tracker.java  |  2 +-
 .../cassandra/db/lifecycle/HelpersTest.java     | 58 ++++++++++++++++-
 7 files changed, 180 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 264887b,d6423b4..aca219e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,17 -1,5 +1,18 @@@
 -3.0.15
 +3.11.1
 + * Fix the computation of cdc_total_space_in_mb for exabyte filesystems 
(CASSANDRA-13808)
 + * AbstractTokenTreeBuilder#serializedSize returns wrong value when there is 
a single leaf and overflow collisions (CASSANDRA-13869)
 + * Add a compaction option to TWCS to ignore sstables overlapping checks 
(CASSANDRA-13418)
 + * BTree.Builder memory leak (CASSANDRA-13754)
 + * Revert CASSANDRA-10368 of supporting non-pk column filtering due to 
correctness (CASSANDRA-13798)
 + * Add a skip read validation flag to cassandra-stress (CASSANDRA-13772)
 + * Fix cassandra-stress hang issues when an error during cluster connection 
happens (CASSANDRA-12938)
 + * Better bootstrap failure message when blocked by (potential) range 
movement (CASSANDRA-13744)
 + * "ignore" option is ignored in sstableloader (CASSANDRA-13721)
 + * Deadlock in AbstractCommitLogSegmentManager (CASSANDRA-13652)
 + * Duplicate the buffer before passing it to analyser in SASI operation 
(CASSANDRA-13512)
 + * Properly evict pstmts from prepared statements cache (CASSANDRA-13641)
 +Merged from 3.0:
+  * Improve TRUNCATE performance (CASSANDRA-13909)
   * Implement short read protection on partition boundaries (CASSANDRA-13595)
   * Fix ISE thrown by UPI.Serializer.hasNext() for some SELECT queries 
(CASSANDRA-13911)
   * Filter header only commit logs before recovery (CASSANDRA-13918)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/src/java/org/apache/cassandra/db/lifecycle/LogFile.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/lifecycle/LogFile.java
index 9691ee9,be26163..123dd8a
--- a/src/java/org/apache/cassandra/db/lifecycle/LogFile.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogFile.java
@@@ -285,6 -285,25 +286,26 @@@ final class LogFile implements AutoClos
              throw new IllegalStateException();
      }
  
+     public void addAll(Type type, Iterable<SSTableReader> toBulkAdd)
+     {
+         for (LogRecord record : makeRecords(type, toBulkAdd))
+             if (!addRecord(record))
+                 throw new IllegalStateException();
+     }
+ 
+     private Collection<LogRecord> makeRecords(Type type, 
Iterable<SSTableReader> tables)
+     {
+         assert type == Type.ADD || type == Type.REMOVE;
+ 
+         for (SSTableReader sstable : tables)
+         {
 -            File folder = sstable.descriptor.directory;
 -            replicas.maybeCreateReplica(folder, getFileName(folder), records);
++            File directory = sstable.descriptor.directory;
++            String fileName = StringUtils.join(directory, File.separator, 
getFileName());
++            replicas.maybeCreateReplica(directory, fileName, records);
+         }
+         return LogRecord.make(type, tables);
+     }
+ 
      private LogRecord makeRecord(Type type, SSTable table)
      {
          assert type == Type.ADD || type == Type.REMOVE;
@@@ -417,15 -417,26 +438,20 @@@
          return replicas.getFilePaths();
      }
  
 -    private String getFileName(File folder)
 -    {
 -        String fileName = StringUtils.join(BigFormat.latestVersion,
 -                                           LogFile.SEP,
 -                                           "txn",
 -                                           LogFile.SEP,
 -                                           type.fileName,
 -                                           LogFile.SEP,
 -                                           id.toString(),
 -                                           LogFile.EXT);
 -        return StringUtils.join(folder, File.separator, fileName);
 -    }
 -
 -    Collection<LogRecord> getRecords()
 +    private String getFileName()
      {
 -        return records;
 +        return StringUtils.join(BigFormat.latestVersion,
 +                                LogFile.SEP,
 +                                "txn",
 +                                LogFile.SEP,
 +                                type.fileName,
 +                                LogFile.SEP,
 +                                id.toString(),
 +                                LogFile.EXT);
      }
+ 
+     public boolean isEmpty()
+     {
+         return records.isEmpty();
+     }
  }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/src/java/org/apache/cassandra/db/lifecycle/LogRecord.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/src/java/org/apache/cassandra/db/lifecycle/Tracker.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/983c72a8/test/unit/org/apache/cassandra/db/lifecycle/HelpersTest.java
----------------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to