This is an automated email from the ASF dual-hosted git repository.
jlewandowski pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git
commit f8dd1931eeacb290af9e246376468f3704891cc4
Merge: 780f8b94ff 4b9c18235a
Author: Jacek Lewandowski
AuthorDate: Fri Mar 31 17:30:20 2023 +0200
Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
Save host id to system.local and flush immediately after startup
CHANGES.txt| 1 +
.../org/apache/cassandra/db/SystemKeyspace.java| 23 ++-
.../apache/cassandra/db/commitlog/CommitLog.java | 47 --
.../cassandra/db/compaction/CompactionManager.java | 76 +++--
.../apache/cassandra/service/StorageService.java | 173 -
.../cassandra/tools/SSTableMetadataViewer.java | 31 ++--
.../cassandra/distributed/impl/Instance.java | 12 +-
.../cassandra/distributed/impl/InstanceConfig.java | 4 +-
.../distributed/test/IPMembershipTest.java | 4 +
.../distributed/test/SSTableIdGenerationTest.java | 24 +--
.../unit/org/apache/cassandra/db/KeyCacheTest.java | 2 -
.../cassandra/db/compaction/NeverPurgeTest.java| 8 +-
12 files changed, 299 insertions(+), 106 deletions(-)
diff --cc CHANGES.txt
index dec7f680f2,675d423080..31840b79bc
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -33,10 -23,13 +33,11 @@@ Merged from 4.0
* Fix sstable loading of keyspaces named snapshots or backups
(CASSANDRA-14013)
* Avoid ConcurrentModificationException in STCS/DTCS/TWCS.getSSTables
(CASSANDRA-17977)
* Restore internode custom tracing on 4.0's new messaging system
(CASSANDRA-17981)
- * Harden parsing of boolean values in CQL in PropertyDefinitions
(CASSANDRA-17878)
- * Fix error message about type hints (CASSANDRA-17915)
- * Fix possible race condition on repair snapshots (CASSANDRA-17955)
- * Fix ASM bytecode version inconsistency (CASSANDRA-17873)
Merged from 3.11:
- * Fix Splitter sometimes creating more splits than requested
(CASSANDRA-18013)
Merged from 3.0:
++ * Save host id to system.local and flush immediately after startup
(CASSANDRA-18153)
+ * Fix the ordering of sstables when running sstableupgrade tool
(CASSANDRA-18143)
+ * Fix default file system error handler for disk_failure_policy die
(CASSANDRA-18294)
* Introduce check for names of test classes (CASSANDRA-17964)
* Suppress CVE-2022-41915 (CASSANDRA-18147)
* Suppress CVE-2021-1471, CVE-2021-3064, CVE-2021-4235 (CASSANDRA-18149)
diff --cc src/java/org/apache/cassandra/db/SystemKeyspace.java
index 1523720d53,d63ee77736..fd2145b30c
--- a/src/java/org/apache/cassandra/db/SystemKeyspace.java
+++ b/src/java/org/apache/cassandra/db/SystemKeyspace.java
@@@ -559,7 -498,18 +561,13 @@@ public final class SystemKeyspac
DECOMMISSIONED
}
-public static void finishStartup()
-{
-Schema.instance.saveSystemKeyspace();
-}
-
public static void persistLocalMetadata()
+ {
+ persistLocalMetadata(UUID::randomUUID);
+ }
+
+ @VisibleForTesting
+ public static void persistLocalMetadata(Supplier nodeIdSupplier)
{
String req = "INSERT INTO system.%s (" +
"key," +
diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLog.java
index a832b5ea42,49eb67b1df..6195b1b4ca
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
@@@ -17,19 -17,23 +17,25 @@@
*/
package org.apache.cassandra.db.commitlog;
-
-import java.io.File;
-import java.io.FilenameFilter;
import java.io.IOException;
import java.nio.ByteBuffer;
+import java.nio.file.FileStore;
- import java.util.*;
+ import java.util.ArrayList;
+ import java.util.Arrays;
+ import java.util.Collection;
+ import java.util.Collections;
+ import java.util.Iterator;
+ import java.util.List;
+ import java.util.Map;
+ import java.util.TreeMap;
+ import java.util.UUID;
+import java.util.concurrent.TimeUnit;
+import java.util.function.BiPredicate;
import java.util.function.Function;
import java.util.zip.CRC32;
import com.google.common.annotations.VisibleForTesting;
- import org.apache.cassandra.io.util.File;
+import com.google.common.base.Preconditions;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@@ -43,7 -47,7 +49,8 @@@ import org.apache.cassandra.io.compress
import org.apache.cassandra.io.util.BufferedDataOutputStreamPlus;
import org.apache.cassandra.io.util.DataOutputBuffer;
import org.apache.cassandra.io.util.DataOutputBufferFixed;
-import org.apache.cassandra.io.util.FileUtils;
++import org.apache.cassandra.io.util.File;
+import org.apache.cassandra.io.util.PathUtils;
import org.apache.cassandra.metrics.CommitLogMetrics;
import org.apache.cassandra.net.MessagingService;
import org.apache.cassandra.schema.CompressionParams;