(cassandra) branch trunk updated: Fix peers v2 system table behaviour when 2 nodes swap their IP Addresses

2024-04-26 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 38512a469c Fix peers v2 system table behaviour when 2 nodes swap their 
IP Addresses
38512a469c is described below

commit 38512a469cef06770384423d0b30e3e85b511258
Author: Alex Petrov 
AuthorDate: Mon Apr 8 13:04:07 2024 +0200

Fix peers v2 system table behaviour when 2 nodes swap their IP Addresses

Throw if node id has been changed and does not match directory. If, however 
the _ip_ address has changed, issue Startup and correct the IP address. 
Disallow picking over identity of other nodes via hijacking their IPs or via 
overriding local node id with theirs.

Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-19221
---
 .../apache/cassandra/db/virtual/PeersTable.java|  26 ++---
 src/java/org/apache/cassandra/tcm/Startup.java |  13 ++-
 .../tcm/listeners/LegacyStateListener.java |  10 +-
 .../test/log/BounceResetHostIdTest.java| 117 ++---
 4 files changed, 127 insertions(+), 39 deletions(-)

diff --git a/src/java/org/apache/cassandra/db/virtual/PeersTable.java 
b/src/java/org/apache/cassandra/db/virtual/PeersTable.java
index 5b011de604..8d50dd7e90 100644
--- a/src/java/org/apache/cassandra/db/virtual/PeersTable.java
+++ b/src/java/org/apache/cassandra/db/virtual/PeersTable.java
@@ -113,15 +113,6 @@ public class PeersTable extends AbstractVirtualTable
 return result;
 }
 
-public static void initializeLegacyPeerTables(ClusterMetadata prev, 
ClusterMetadata next)
-{
-QueryProcessor.executeInternal(String.format("TRUNCATE %s.%s", 
SYSTEM_KEYSPACE_NAME, PEERS_V2));
-QueryProcessor.executeInternal(String.format("TRUNCATE %s.%s", 
SYSTEM_KEYSPACE_NAME, LEGACY_PEERS));
-
-for (NodeId nodeId : next.directory.peerIds())
-updateLegacyPeerTable(nodeId, prev, next);
-}
-
 private static String peers_v2_query = "INSERT INTO %s.%s ("
 + "peer, peer_port, "
 + "preferred_ip, preferred_port, "
@@ -156,9 +147,7 @@ public class PeersTable extends AbstractVirtualTable
 if (next.directory.peerState(nodeId) == null || 
next.directory.peerState(nodeId) == NodeState.LEFT)
 {
 NodeAddresses addresses = prev.directory.getNodeAddresses(nodeId);
-logger.debug("Purging {} from system.peers_v2 table", addresses);
-QueryProcessor.executeInternal(String.format(peers_delete_query, 
SYSTEM_KEYSPACE_NAME, PEERS_V2), addresses.broadcastAddress.getAddress(), 
addresses.broadcastAddress.getPort());
-
QueryProcessor.executeInternal(String.format(legacy_peers_delete_query, 
SYSTEM_KEYSPACE_NAME, LEGACY_PEERS), addresses.broadcastAddress.getAddress());
+removeFromSystemPeersTables(addresses.broadcastAddress);
 }
 else if (NodeState.isPreJoin(next.directory.peerState(nodeId)))
 {
@@ -169,11 +158,7 @@ public class PeersTable extends AbstractVirtualTable
 NodeAddresses addresses = next.directory.getNodeAddresses(nodeId);
 NodeAddresses oldAddresses = 
prev.directory.getNodeAddresses(nodeId);
 if (oldAddresses != null && !oldAddresses.equals(addresses))
-{
-logger.debug("Purging {} from system.peers_v2 table", 
oldAddresses);
-
QueryProcessor.executeInternal(String.format(peers_delete_query, 
SYSTEM_KEYSPACE_NAME, PEERS_V2), oldAddresses.broadcastAddress.getAddress(), 
oldAddresses.broadcastAddress.getPort());
-
QueryProcessor.executeInternal(String.format(legacy_peers_delete_query, 
SYSTEM_KEYSPACE_NAME, LEGACY_PEERS), 
oldAddresses.broadcastAddress.getAddress());
-}
+removeFromSystemPeersTables(oldAddresses.broadcastAddress);
 
 Location location = next.directory.location(nodeId);
 
@@ -197,4 +182,11 @@ public class PeersTable extends AbstractVirtualTable
tokens);
 }
 }
+
+public static void removeFromSystemPeersTables(InetAddressAndPort addr)
+{
+logger.debug("Purging {} from system.peers_v2 table", addr);
+QueryProcessor.executeInternal(String.format(peers_delete_query, 
SYSTEM_KEYSPACE_NAME, PEERS_V2), addr.getAddress(), addr.getPort());
+
QueryProcessor.executeInternal(String.format(legacy_peers_delete_query, 
SYSTEM_KEYSPACE_NAME, LEGACY_PEERS), addr.getAddress());
+}
 }
\ No newline at end of file
diff --git a/src/java/org/apache/cassandra/tcm/Startup.java 
b/src/java/org/apache/cassandra/tcm/Startup.java
index dfe4df8399..023fcdba77 100644
--- 

(cassandra) branch trunk updated: The result of applying a metadata snapshot via ForceSnapshot should return the correct set of modified keys

2024-04-08 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 7623e4678b The result of applying a metadata snapshot via 
ForceSnapshot should return the correct set of modified keys
7623e4678b is described below

commit 7623e4678b8ef131434f1de3522c6425c092dff9
Author: Alex Petrov 
AuthorDate: Mon Mar 25 10:25:50 2024 +0100

The result of applying a metadata snapshot via ForceSnapshot should return 
the correct set of modified keys

Patch by Alex Petrov; reviewed by Marcus Eriksson for CASSANDRA-19128.
---
 .../org/apache/cassandra/tcm/MetadataKeys.java |  47 +
 .../cassandra/tcm/ownership/PlacementDeltas.java   |  22 +++
 .../tcm/transformations/CustomTransformation.java  |  44 +
 .../tcm/transformations/ForceSnapshot.java |   4 +-
 .../cassandra/tcm/transformations/PrepareMove.java |   6 +
 .../test/log/ClusterMetadataTestHelper.java|   3 +-
 .../distributed/test/log/MetadataKeysTest.java | 220 +
 .../apache/cassandra/harry/gen/EntropySource.java  |   5 +-
 .../org/apache/cassandra/harry/gen/Generators.java |  42 +++-
 .../org/apache/cassandra/tcm/log/LocalLogTest.java |  10 +-
 10 files changed, 388 insertions(+), 15 deletions(-)

diff --git a/src/java/org/apache/cassandra/tcm/MetadataKeys.java 
b/src/java/org/apache/cassandra/tcm/MetadataKeys.java
index fda509186b..8028007815 100644
--- a/src/java/org/apache/cassandra/tcm/MetadataKeys.java
+++ b/src/java/org/apache/cassandra/tcm/MetadataKeys.java
@@ -18,10 +18,17 @@
 
 package org.apache.cassandra.tcm;
 
+import java.util.HashSet;
 import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+import java.util.function.Function;
 
 import com.google.common.collect.ImmutableSet;
 
+import org.apache.cassandra.tcm.extensions.ExtensionKey;
+import org.apache.cassandra.tcm.extensions.ExtensionValue;
+
 public class MetadataKeys
 {
 public static final String CORE_NS = 
MetadataKeys.class.getPackage().getName().toLowerCase(Locale.ROOT);
@@ -52,4 +59,44 @@ public class MetadataKeys
 return new MetadataKey(b.toString());
 }
 
+public static ImmutableSet diffKeys(ClusterMetadata before, 
ClusterMetadata after)
+{
+ImmutableSet.Builder builder = new 
ImmutableSet.Builder<>();
+diffKeys(before, after, builder);
+return builder.build();
+}
+
+private static void diffKeys(ClusterMetadata before, ClusterMetadata 
after, ImmutableSet.Builder builder)
+{
+checkKey(before, after, builder, cm -> cm.schema, MetadataKeys.SCHEMA);
+checkKey(before, after, builder, cm -> cm.directory, 
MetadataKeys.NODE_DIRECTORY);
+checkKey(before, after, builder, cm -> cm.tokenMap, 
MetadataKeys.TOKEN_MAP);
+checkKey(before, after, builder, cm -> cm.placements, 
MetadataKeys.DATA_PLACEMENTS);
+checkKey(before, after, builder, cm -> cm.lockedRanges, 
MetadataKeys.LOCKED_RANGES);
+checkKey(before, after, builder, cm -> cm.inProgressSequences, 
MetadataKeys.IN_PROGRESS_SEQUENCES);
+
+Set> added = new 
HashSet<>(after.extensions.keySet());
+for (Map.Entry, ExtensionValue> entry : 
before.extensions.entrySet())
+{
+ExtensionKey key = entry.getKey();
+added.remove(key);
+
+if (after.extensions.containsKey(key))
+checkKey(before, after, builder, cm -> cm.extensions.get(key), 
key);
+else
+builder.add(key);
+}
+
+for (ExtensionKey key : added)
+builder.add(key);
+}
+
+private static void checkKey(ClusterMetadata before, ClusterMetadata 
after, ImmutableSet.Builder builder, Function> extract, MetadataKey key)
+{
+MetadataValue vBefore = extract.apply(before);
+MetadataValue vAfter = extract.apply(after);
+
+if (!vBefore.equals(vAfter))
+builder.add(key);
+}
 }
diff --git a/src/java/org/apache/cassandra/tcm/ownership/PlacementDeltas.java 
b/src/java/org/apache/cassandra/tcm/ownership/PlacementDeltas.java
index 6b5b817984..6ba80a854b 100644
--- a/src/java/org/apache/cassandra/tcm/ownership/PlacementDeltas.java
+++ b/src/java/org/apache/cassandra/tcm/ownership/PlacementDeltas.java
@@ -77,6 +77,28 @@ public class PlacementDeltas extends 
ReplicationMap e : map.entrySet())
+{
+if (!e.getValue().reads.removals.isEmpty())
+return false;
+if (!e.getValue().reads.additions.isEmpty())
+return false;
+
+if (!e.getValue().writes.removals.isEmpty())
+return false;
+if (!e.getValue().writes.additions.isEmpty())
+return false;
+}
+
+return true;
+}
+
 public static PlacementDeltas 

(cassandra) branch trunk updated: Harry model that supports value overrides: an ability to provide specific values for clustering, regular, and static columns

2024-04-08 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 6b48f8a11d Harry model that supports value overrides: an ability to 
provide specific values for clustering, regular, and static columns
6b48f8a11d is described below

commit 6b48f8a11dbad8c0653309eb8193fa6157bba5d8
Author: Alex Petrov 
AuthorDate: Wed Jan 17 19:12:43 2024 +0100

Harry model that supports value overrides: an ability to provide specific 
values for clustering, regular, and static columns

Patch by Alex Petrov; reviewed by Caleb Rackliffe for CASSANDRA-19284
---
 .../cassandra/distributed/shared/ClusterUtils.java |   2 +
 .../fuzz/harry/examples/RepairBurnTest.java| 138 
 .../dsl/HistoryBuilderIntegrationTest.java | 153 ++---
 .../HistoryBuilderOverridesIntegrationTest.java| 359 +
 .../integration/model/IntegrationTestBase.java |  12 +-
 .../model/ReconcilerIntegrationTest.java   |  23 +-
 .../fuzz/ring/ConsistentBootstrapTest.java |   8 +-
 .../cassandra/fuzz/sai/SingleNodeSAITest.java  |  11 +-
 .../cassandra/fuzz/sai/StaticsTortureTest.java |  20 +-
 .../cassandra/harry/checker/ModelChecker.java  |   1 +
 .../org/apache/cassandra/harry/ddl/ColumnSpec.java |  44 ++-
 .../org/apache/cassandra/harry/ddl/SchemaSpec.java |  36 ++-
 .../apache/cassandra/harry/dsl/ArrayWrapper.java   |  49 +++
 .../cassandra/harry/dsl/BatchVisitBuilder.java |  11 +-
 .../apache/cassandra/harry/dsl/HistoryBuilder.java | 141 +---
 .../cassandra/harry/dsl/OverridingBijection.java   |  84 +
 .../cassandra/harry/dsl/OverridingCkGenerator.java | 153 +
 .../cassandra/harry/dsl/PartitionVisitState.java   |  63 ++--
 .../harry/dsl/PartitionVisitStateImpl.java | 115 +++
 .../harry/dsl/ReplayingHistoryBuilder.java |  13 +-
 .../harry/dsl/SingleOperationBuilder.java  |   5 +-
 .../harry/dsl/SingleOperationVisitBuilder.java |  72 +++--
 .../harry/dsl/ValueDescriptorIndexGenerator.java   |  13 +-
 .../apache/cassandra/harry/dsl/ValueHelper.java|  74 +
 .../apache/cassandra/harry/dsl/ValueOverrides.java |  24 ++
 .../apache/cassandra/harry/gen/DataGenerators.java |  24 +-
 .../apache/cassandra/harry/model/NoOpChecker.java  |  16 +-
 .../cassandra/harry/operations/Relation.java   |   2 +-
 28 files changed, 1445 insertions(+), 221 deletions(-)

diff --git 
a/test/distributed/org/apache/cassandra/distributed/shared/ClusterUtils.java 
b/test/distributed/org/apache/cassandra/distributed/shared/ClusterUtils.java
index 3d3b9f3958..3e60a02523 100644
--- a/test/distributed/org/apache/cassandra/distributed/shared/ClusterUtils.java
+++ b/test/distributed/org/apache/cassandra/distributed/shared/ClusterUtils.java
@@ -545,6 +545,8 @@ public class ClusterUtils
 
 public static void unpauseCommits(IInvokableInstance instance)
 {
+if (instance.isShutdown())
+return;
 instance.runOnInstance(() -> {
 TestProcessor processor = (TestProcessor) 
((ClusterMetadataService.SwitchableProcessor) 
ClusterMetadataService.instance().processor()).delegate();
 processor.unpause();
diff --git 
a/test/distributed/org/apache/cassandra/fuzz/harry/examples/RepairBurnTest.java 
b/test/distributed/org/apache/cassandra/fuzz/harry/examples/RepairBurnTest.java
new file mode 100644
index 00..4092d6a02f
--- /dev/null
+++ 
b/test/distributed/org/apache/cassandra/fuzz/harry/examples/RepairBurnTest.java
@@ -0,0 +1,138 @@
+/*
+ * 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.fuzz.harry.examples;
+
+import java.util.Arrays;
+import java.util.Random;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import org.apache.cassandra.distributed.api.Feature;
+import org.apache.cassandra.fuzz.harry.integration.model.IntegrationTestBase;
+import org.apache.cassandra.harry.checker.ModelChecker;
+import org.apache.cassandra.harry.ddl.ColumnSpec;
+import org.apache.cassandra.harry.

(cassandra) branch trunk updated: TCM: Catch up committing node on rejection

2024-03-19 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 3e6a551dba TCM: Catch up committing node on rejection
3e6a551dba is described below

commit 3e6a551dbab6ecdc97b99f9ec3118316bfaf1802
Author: Alex Petrov 
AuthorDate: Thu Jan 11 14:18:46 2024 +0100

TCM: Catch up committing node on rejection

Patch by Alex Petrov; reviewed by Marcus Eriksson for CASSANDRA-19260
---
 .../cassandra/tcm/AbstractLocalProcessor.java  | 10 +++--
 src/java/org/apache/cassandra/tcm/Commit.java  | 47 +++---
 .../org/apache/cassandra/tcm/RemoteProcessor.java  | 14 +--
 ...ationSmokeTest.java => LogReplicationTest.java} | 38 -
 4 files changed, 94 insertions(+), 15 deletions(-)

diff --git a/src/java/org/apache/cassandra/tcm/AbstractLocalProcessor.java 
b/src/java/org/apache/cassandra/tcm/AbstractLocalProcessor.java
index 2d00085f3d..a72b5b664f 100644
--- a/src/java/org/apache/cassandra/tcm/AbstractLocalProcessor.java
+++ b/src/java/org/apache/cassandra/tcm/AbstractLocalProcessor.java
@@ -18,6 +18,7 @@
 
 package org.apache.cassandra.tcm;
 
+import java.util.concurrent.TimeUnit;
 import java.util.function.Supplier;
 
 import org.slf4j.Logger;
@@ -79,7 +80,7 @@ public abstract class AbstractLocalProcessor implements 
Processor
 {
 return maybeFailure(entryId,
 lastKnown,
-() -> new 
Commit.Result.Failure(result.rejected().code, result.rejected().reason, true));
+() -> 
Commit.Result.rejected(result.rejected().code, result.rejected().reason, 
toLogState(lastKnown)));
 }
 
 continue;
@@ -118,9 +119,10 @@ public abstract class AbstractLocalProcessor implements 
Processor
 retryPolicy.maybeSleep();
 }
 }
-return new Commit.Result.Failure(SERVER_ERROR,
- String.format("Could not perform 
commit using the following retry stategy: %s", retryPolicy.tries),
- false);
+return Commit.Result.failed(SERVER_ERROR,
+String.format("Could not perform commit 
after %d/%d tries. Time remaining: %dms",
+  retryPolicy.tries, 
retryPolicy.maxTries,
+  
TimeUnit.NANOSECONDS.toMillis(retryPolicy.remainingNanos(;
 }
 
 public Commit.Result maybeFailure(Entry.Id entryId, Epoch lastKnown, 
Supplier orElse)
diff --git a/src/java/org/apache/cassandra/tcm/Commit.java 
b/src/java/org/apache/cassandra/tcm/Commit.java
index f0146847f1..8871efa5b2 100644
--- a/src/java/org/apache/cassandra/tcm/Commit.java
+++ b/src/java/org/apache/cassandra/tcm/Commit.java
@@ -119,6 +119,9 @@ public class Commit
 static volatile Result.Serializer resultSerializerCache;
 public interface Result
 {
+IVersionedSerializer defaultMessageSerializer = new 
Serializer(NodeVersion.CURRENT.serializationVersion());
+
+LogState logState();
 boolean isSuccess();
 boolean isFailure();
 
@@ -131,7 +134,6 @@ public class Commit
 {
 return (Failure) this;
 }
-IVersionedSerializer defaultMessageSerializer = new 
Serializer(NodeVersion.CURRENT.serializationVersion());
 
 static IVersionedSerializer messageSerializer(Version version)
 {
@@ -163,6 +165,12 @@ public class Commit
'}';
 }
 
+@Override
+public LogState logState()
+{
+return logState;
+}
+
 public boolean isSuccess()
 {
 return true;
@@ -174,6 +182,16 @@ public class Commit
 }
 }
 
+static Failure rejected(ExceptionCode exceptionCode, String reason, 
LogState logState)
+{
+return new Failure(exceptionCode, reason, logState, true);
+}
+
+static Failure failed(ExceptionCode exceptionCode, String message)
+{
+return new Failure(exceptionCode, message, LogState.EMPTY, false);
+}
+
 final class Failure implements Result
 {
 public final ExceptionCode code;
@@ -181,8 +199,9 @@ public class Commit
 // Rejection means that we were able to linearize the operation,
 // but it was rejected by the internal logic of the transformation.
 public final boolean rejected;
+public final LogState logState;
 
-public Failure(ExceptionCode code, String message, boolean 
rejected)
+private Failure(Excep

(cassandra) branch trunk updated (2924762fa1 -> 061cb88b3c)

2024-03-19 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from 2924762fa1 LocalLog: Cancel signal when unused
 add 061cb88b3c Improve logging for retries in TCM

No new revisions were added by this update.

Summary of changes:
 .../org/apache/cassandra/tcm/AbstractLocalProcessor.java  |  7 ++-
 src/java/org/apache/cassandra/tcm/Retry.java  | 15 +++
 2 files changed, 17 insertions(+), 5 deletions(-)


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



(cassandra) branch trunk updated: LocalLog: Cancel signal when unused

2024-03-19 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 2924762fa1 LocalLog: Cancel signal when unused
2924762fa1 is described below

commit 2924762fa1c29c3658507225e9e5e00853ec58e6
Author: Alex Petrov 
AuthorDate: Tue Jan 30 11:29:09 2024 +0100

LocalLog: Cancel signal when unused

Patch by Alex Petrov; reviewed by Marcus Eriksson and Sam Tunnicliffe for 
CASSANDRA-19353.
---
 src/java/org/apache/cassandra/tcm/log/LocalLog.java | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/java/org/apache/cassandra/tcm/log/LocalLog.java 
b/src/java/org/apache/cassandra/tcm/log/LocalLog.java
index bb878f5b12..cf7e383877 100644
--- a/src/java/org/apache/cassandra/tcm/log/LocalLog.java
+++ b/src/java/org/apache/cassandra/tcm/log/LocalLog.java
@@ -750,20 +750,24 @@ public abstract class LocalLog implements Closeable
 
 public void run(Interruptible.State state) throws 
InterruptedException
 {
+WaitQueue.Signal signal = null;
 try
 {
 if (state != Interruptible.State.SHUTTING_DOWN)
 {
 Condition condition = subscriber.getAndSet(null);
 // Grab a ticket ahead of time, so that we can't get 
into race with the exit from process pending
-WaitQueue.Signal signal = logNotifier.register();
+signal = logNotifier.register();
 processPendingInternal();
 if (condition != null)
 condition.signalAll();
 // if no new threads have subscribed since we started 
running, await
 // otherwise, run again to process whatever work they 
may be waiting on
 if (subscriber.get() == null)
+{
 signal.await();
+signal = null;
+}
 }
 }
 catch (StopProcessingException t)
@@ -780,6 +784,12 @@ public abstract class LocalLog implements Closeable
 // TODO handle properly
 logger.warn("Error in log follower", t);
 }
+finally
+{
+// If signal was not consumed for some reason, cancel it
+if (signal != null)
+signal.cancel();
+}
 }
 }
 


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



(cassandra) branch trunk updated: Handle MIN_TOKEN placement correctly.

2024-01-29 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 1cb6d3568b Handle MIN_TOKEN placement correctly.
1cb6d3568b is described below

commit 1cb6d3568b0ab9c7ea5a90b56e680d5b79c1d216
Author: Alex Petrov 
AuthorDate: Mon Jan 8 17:09:27 2024 +0100

Handle MIN_TOKEN placement correctly.

Patch by Alex Petrov, reviewed by Sam Tunnicliffe for CASSANDRA-19262.
---
 .../apache/cassandra/locator/SimpleStrategy.java   |   9 +-
 .../tcm/compatibility/TokenRingUtils.java  |   5 -
 .../cassandra/tcm/sequences/LockedRanges.java  |   6 +
 .../test/log/MetadataChangeSimulationTest.java | 152 ++---
 .../distributed/test/log/ModelChecker.java |   6 +-
 .../distributed/test/log/PlacementSimulator.java   |  38 ++
 .../test/log/PlacementSimulatorTest.java   |  29 +++-
 .../distributed/test/log/SimulatedOperation.java   |   1 +
 .../cassandra/harry/sut/TokenPlacementModel.java   | 124 +++--
 .../simulator/cluster/KeyspaceActions.java |   4 +-
 10 files changed, 269 insertions(+), 105 deletions(-)

diff --git a/src/java/org/apache/cassandra/locator/SimpleStrategy.java 
b/src/java/org/apache/cassandra/locator/SimpleStrategy.java
index 1e15eab9be..24893e5f1e 100644
--- a/src/java/org/apache/cassandra/locator/SimpleStrategy.java
+++ b/src/java/org/apache/cassandra/locator/SimpleStrategy.java
@@ -17,7 +17,11 @@
  */
 package org.apache.cassandra.locator;
 
-import java.util.*;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -36,9 +40,9 @@ import org.apache.cassandra.tcm.Epoch;
 import org.apache.cassandra.tcm.compatibility.TokenRingUtils;
 import org.apache.cassandra.tcm.membership.Directory;
 import org.apache.cassandra.tcm.membership.NodeId;
-import org.apache.cassandra.tcm.ownership.TokenMap;
 import org.apache.cassandra.tcm.ownership.DataPlacement;
 import org.apache.cassandra.tcm.ownership.PlacementForRange;
+import org.apache.cassandra.tcm.ownership.TokenMap;
 import org.apache.cassandra.tcm.ownership.VersionedEndpoints;
 
 /**
@@ -159,6 +163,7 @@ public class SimpleStrategy extends 
AbstractReplicationStrategy
 return Collections.singleton(REPLICATION_FACTOR);
 }
 
+@SuppressWarnings("unused") // used via reflection
 protected static void prepareOptions(Map options, 
Map previousOptions)
 {
 // When altering from NTS to SS, previousOptions could have multiple 
different RFs for different data centers - so we
diff --git 
a/src/java/org/apache/cassandra/tcm/compatibility/TokenRingUtils.java 
b/src/java/org/apache/cassandra/tcm/compatibility/TokenRingUtils.java
index 3f4802a555..4a15925bb9 100644
--- a/src/java/org/apache/cassandra/tcm/compatibility/TokenRingUtils.java
+++ b/src/java/org/apache/cassandra/tcm/compatibility/TokenRingUtils.java
@@ -63,11 +63,6 @@ public class TokenRingUtils
 return i;
 }
 
-public static Token firstToken(List ring, Token start)
-{
-return ring.get(firstTokenIndex(ring, start, false));
-}
-
 public static Token getPredecessor(List ring, Token start)
 {
 int idx = firstTokenIndex(ring, start, false);
diff --git a/src/java/org/apache/cassandra/tcm/sequences/LockedRanges.java 
b/src/java/org/apache/cassandra/tcm/sequences/LockedRanges.java
index c4890e64ee..8693486edb 100644
--- a/src/java/org/apache/cassandra/tcm/sequences/LockedRanges.java
+++ b/src/java/org/apache/cassandra/tcm/sequences/LockedRanges.java
@@ -338,6 +338,12 @@ public class LockedRanges implements 
MetadataValue
 {
 if (thisRange.intersects(otherRange))
 return true;
+
+// Since we allow ownership of the MIN_TOKEN, we need 
to lock both sides of the
+// wraparound range in case it transitions from 
non-wraparound to wraparound and back.
+if ((thisRange.left.isMinimum() || 
thisRange.right.isMinimum()) &&
+(otherRange.left.isMinimum() || 
otherRange.right.isMinimum()))
+return true;
 }
 }
 }
diff --git 
a/test/distributed/org/apache/cassandra/distributed/test/log/MetadataChangeSimulationTest.java
 
b/test/distributed/org/apache/cassandra/distributed/test/log/MetadataChangeSimulationTest.java
index 036e5fff71..dabe363ca0 100644
--- 
a/test/distributed/org/apache/cassandra/distributed/test/log/MetadataChangeSimulationTest.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/test/log/MetadataChangeSimulationTest.java
@@ -45

(cassandra) branch trunk updated: Change IP address of the CMS node during transition

2024-01-22 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


The following commit(s) were added to refs/heads/trunk by this push:
 new 46b90364da Change IP address of the CMS node during transition
46b90364da is described below

commit 46b90364daecf1880db5eda9899d7353ad81f445
Author: Alex Petrov 
AuthorDate: Thu Dec 21 13:47:22 2023 +0100

Change IP address of the CMS node during transition

Patch by Alex Petrov; reviewed by Sam Tunnicliffe and Marcus Eriksson for 
CASSANDRA-19219
---
 .../cassandra/locator/CMSPlacementStrategy.java|  4 --
 .../cassandra/tcm/transformations/Startup.java | 20 +++
 .../distributed/test/cms/CMSAddressChangeTest.java | 67 ++
 .../test/log/ClusterMetadataTestHelper.java| 13 +
 4 files changed, 100 insertions(+), 4 deletions(-)

diff --git a/src/java/org/apache/cassandra/locator/CMSPlacementStrategy.java 
b/src/java/org/apache/cassandra/locator/CMSPlacementStrategy.java
index ea4f0cbb9a..754687a199 100644
--- a/src/java/org/apache/cassandra/locator/CMSPlacementStrategy.java
+++ b/src/java/org/apache/cassandra/locator/CMSPlacementStrategy.java
@@ -28,7 +28,6 @@ import java.util.stream.Collectors;
 
 import com.google.common.annotations.VisibleForTesting;
 
-import org.apache.cassandra.gms.FailureDetector;
 import org.apache.cassandra.schema.ReplicationParams;
 import org.apache.cassandra.tcm.ClusterMetadata;
 import org.apache.cassandra.tcm.Transformation;
@@ -137,9 +136,6 @@ public interface CMSPlacementStrategy
 
 public Boolean apply(ClusterMetadata metadata, NodeId nodeId)
 {
-if 
(!FailureDetector.instance.isAlive(metadata.directory.endpoint(nodeId)))
-return false;
-
 if (metadata.directory.peerState(nodeId) != NodeState.JOINED)
 return false;
 
diff --git a/src/java/org/apache/cassandra/tcm/transformations/Startup.java 
b/src/java/org/apache/cassandra/tcm/transformations/Startup.java
index b26cc3655c..b4d4007e43 100644
--- a/src/java/org/apache/cassandra/tcm/transformations/Startup.java
+++ b/src/java/org/apache/cassandra/tcm/transformations/Startup.java
@@ -24,7 +24,10 @@ import java.util.Objects;
 
 import org.apache.cassandra.io.util.DataInputPlus;
 import org.apache.cassandra.io.util.DataOutputPlus;
+import org.apache.cassandra.locator.InetAddressAndPort;
+import org.apache.cassandra.locator.Replica;
 import org.apache.cassandra.schema.Keyspaces;
+import org.apache.cassandra.schema.ReplicationParams;
 import org.apache.cassandra.tcm.ClusterMetadata;
 import org.apache.cassandra.tcm.ClusterMetadataService;
 import org.apache.cassandra.tcm.Transformation;
@@ -32,12 +35,14 @@ import org.apache.cassandra.tcm.membership.Directory;
 import org.apache.cassandra.tcm.membership.NodeAddresses;
 import org.apache.cassandra.tcm.membership.NodeId;
 import org.apache.cassandra.tcm.membership.NodeVersion;
+import org.apache.cassandra.tcm.ownership.DataPlacement;
 import org.apache.cassandra.tcm.ownership.DataPlacements;
 import org.apache.cassandra.tcm.sequences.LockedRanges;
 import org.apache.cassandra.tcm.serialization.MetadataSerializer;
 import org.apache.cassandra.tcm.serialization.Version;
 
 import static org.apache.cassandra.exceptions.ExceptionCode.INVALID;
+import static org.apache.cassandra.tcm.ownership.EntireRange.entireRange;
 
 public class Startup implements Transformation
 {
@@ -87,6 +92,21 @@ public class Startup implements Transformation

  next.build().metadata,

  allKeyspaces);
 
+if (prev.isCMSMember(prev.directory.endpoint(nodeId)))
+{
+ReplicationParams metaParams = ReplicationParams.meta(prev);
+InetAddressAndPort endpoint = prev.directory.endpoint(nodeId);
+Replica leavingReplica = new Replica(endpoint, entireRange, 
true);
+Replica joiningReplica = new 
Replica(addresses.broadcastAddress, entireRange, true);
+
+DataPlacement.Builder builder = 
prev.placements.get(metaParams).unbuild();
+builder.reads.withoutReplica(prev.nextEpoch(), leavingReplica);
+builder.writes.withoutReplica(prev.nextEpoch(), 
leavingReplica);
+builder.reads.withReplica(prev.nextEpoch(), joiningReplica);
+builder.writes.withReplica(prev.nextEpoch(), joiningReplica);
+newPlacement = newPlacement.unbuild().with(metaParams, 
builder.build()).build();
+}
+
 next = next.with(newPlacement);
 }
 
diff --git 
a/test/distributed/org/apache/cassandra/distributed/test/cms/CMSAddressChangeTest.java
 
b/test/distributed/org/apache/cassandra/distributed/test/cms

(cassandra) branch trunk updated: Fix Harry Upgrade Test - primodal epoch initialization

2024-01-22 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


The following commit(s) were added to refs/heads/trunk by this push:
 new b10e269344 Fix Harry Upgrade Test - primodal epoch initialization
b10e269344 is described below

commit b10e2693443bb5eb5c9b3d561f8d5e47ac092a8c
Author: Alex Petrov 
AuthorDate: Sat Dec 23 13:30:22 2023 +0100

Fix Harry Upgrade Test - primodal epoch initialization

 Patch by Alex Petrov, reviewed by Sam Tunnicliffe for CASSANDRA-19208.
---
 .../cassandra/schema/DistributedMetadataLogKeyspace.java| 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git 
a/src/java/org/apache/cassandra/schema/DistributedMetadataLogKeyspace.java 
b/src/java/org/apache/cassandra/schema/DistributedMetadataLogKeyspace.java
index 9d16360c18..84fd433a70 100644
--- a/src/java/org/apache/cassandra/schema/DistributedMetadataLogKeyspace.java
+++ b/src/java/org/apache/cassandra/schema/DistributedMetadataLogKeyspace.java
@@ -93,7 +93,18 @@ public final class DistributedMetadataLogKeyspace
  Period.FIRST, 
FIRST.getEpoch(), FIRST.getEpoch(),
  
Transformation.Kind.PRE_INITIALIZE_CMS.toVersionedBytes(PreInitialize.blank()), 
Transformation.Kind.PRE_INITIALIZE_CMS.toString(), Entry.Id.NONE.entryId);
 
-return result.one().getBoolean("[applied]");
+UntypedResultSet.Row row = result.one();
+if (row.getBoolean("[applied]"))
+return true;
+
+if (row.getLong("epoch") == FIRST.getEpoch() &&
+row.getLong("period") == Period.FIRST &&
+row.getLong("current_epoch") == FIRST.getEpoch() &&
+row.getLong("entry_id") == Entry.Id.NONE.entryId &&
+
Transformation.Kind.PRE_INITIALIZE_CMS.toString().equals(row.getString("kind")))
+return true;
+
+throw new IllegalStateException("Could not initialize log.");
 }
 catch (CasWriteTimeoutException t)
 {


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



(cassandra-harry) branch trunk updated: Fix version in run-external.sh

2024-01-17 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new d216a71  Fix version in run-external.sh
d216a71 is described below

commit d216a71049ab52f522e5ed7c64423bfa3f6658e8
Author: Jaydeepkumar Chovatia 
AuthorDate: Tue Jan 16 22:24:12 2024 -0800

Fix version in run-external.sh
---
 run-external.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/run-external.sh b/run-external.sh
index 6263110..d6a2efc 100755
--- a/run-external.sh
+++ b/run-external.sh
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-java -Dlogback.configurationFile=test/conf/logback-dtest.xml -jar 
harry-integration-external/target/harry-integration-external-0.0.1-SNAPSHOT.jar 
conf/external.yaml
+java -Dlogback.configurationFile=test/conf/logback-dtest.xml -jar 
harry-integration-external/target/harry-integration-external-0.0.2-SNAPSHOT.jar 
conf/external.yaml


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



(cassandra) branch cep-15-accord updated (18ce167359 -> 1271f5f778)

2024-01-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cep-15-accord
in repository https://gitbox.apache.org/repos/asf/cassandra.git


 discard 18ce167359 Quick fix for AccordAddTableTest: make rejections catch up
 add 1271f5f778 Quick fix for AccordAddTableTest: make rejections catch up

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (18ce167359)
\
 N -- N -- N   refs/heads/cep-15-accord (1271f5f778)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 src/java/org/apache/cassandra/service/accord/IAccordService.java | 1 -
 src/java/org/apache/cassandra/tcm/RemoteProcessor.java   | 6 +-
 2 files changed, 5 insertions(+), 2 deletions(-)


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



(cassandra) branch cep-15-accord updated (eb1572e9f5 -> 18ce167359)

2024-01-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cep-15-accord
in repository https://gitbox.apache.org/repos/asf/cassandra.git


from eb1572e9f5 (Accord) NPE while trying to serialize FoundKnownMap as 
value is null half the time but unexpected while serializing
 add 18ce167359 Quick fix for AccordAddTableTest: make rejections catch up

No new revisions were added by this update.

Summary of changes:
 src/java/org/apache/cassandra/service/accord/IAccordService.java | 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) branch trunk updated: Ninja: fix checkstyle after cherry-pick.

2023-12-20 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


The following commit(s) were added to refs/heads/trunk by this push:
 new bc0c8f6317 Ninja: fix checkstyle after cherry-pick.
bc0c8f6317 is described below

commit bc0c8f6317c71ac24c25a6bf7cf008ad1305868f
Author: Alex Petrov 
AuthorDate: Wed Dec 20 15:08:12 2023 +0100

Ninja: fix checkstyle after cherry-pick.
---
 .../apache/cassandra/simulator/AlwaysDeliverNetworkScheduler.java| 5 -
 1 file changed, 5 deletions(-)

diff --git 
a/test/simulator/main/org/apache/cassandra/simulator/AlwaysDeliverNetworkScheduler.java
 
b/test/simulator/main/org/apache/cassandra/simulator/AlwaysDeliverNetworkScheduler.java
index 601f308194..f5721f5df6 100644
--- 
a/test/simulator/main/org/apache/cassandra/simulator/AlwaysDeliverNetworkScheduler.java
+++ 
b/test/simulator/main/org/apache/cassandra/simulator/AlwaysDeliverNetworkScheduler.java
@@ -20,12 +20,7 @@ package org.apache.cassandra.simulator;
 
 import java.util.concurrent.TimeUnit;
 
-import org.apache.cassandra.simulator.FutureActionScheduler;
 import org.apache.cassandra.simulator.systems.SimulatedTime;
-import org.apache.cassandra.simulator.utils.LongRange;
-
-import static java.util.concurrent.TimeUnit.MICROSECONDS;
-import static java.util.concurrent.TimeUnit.NANOSECONDS;
 
 /**
  * Action scheduler that simulates ideal networking conditions. Useful to rule 
out


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



(cassandra) 03/03: Remove conf/harry-example.yaml

2023-12-20 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 b7e5675edd06f9d6bb8f22aef41c5c2caa698f7b
Author: Alex Petrov 
AuthorDate: Fri Dec 8 08:26:17 2023 +0100

Remove conf/harry-example.yaml

Patch by Alex Petrov, reviewed by Sam Tunnicliffe for 
CASSANDRA-19081/CASSANDRA-19208
---
 conf/harry-example.yaml| 95 --
 .../upgrade/ClusterMetadataUpgradeHarryTest.java   | 22 +++--
 2 files changed, 13 insertions(+), 104 deletions(-)

diff --git a/conf/harry-example.yaml b/conf/harry-example.yaml
deleted file mode 100644
index 1868ad9959..00
--- a/conf/harry-example.yaml
+++ /dev/null
@@ -1,95 +0,0 @@
-#   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.
-
-seed: 1596731732524
-
-# Default schema provider generates random schema
-schema_provider:
-  fixed:
-keyspace: harry
-table: test_table
-partition_keys:
-  pk1: bigint
-  pk2: ascii
-clustering_keys:
-  ck1: ascii
-  ck2: bigint
-regular_columns:
-  v1: ascii
-  v2: bigint
-  v3: ascii
-  v4: bigint
-static_keys:
-  s1: ascii
-  s2: bigint
-  s3: ascii
-  s4: bigint
-
-# Clock is a component responsible for mapping _logical_ timestamps to 
_real-time_ ones.
-#
-# When reproducing test failures, and for validation purposes, a snapshot of 
such clock can
-# be taken to map a real-time timestamp from the value retrieved from the 
database in order
-# to map it back to the logical timestamp of the operation that wrote this 
value.
-clock:
-  offset:
-offset: 1000
-
-drop_schema: false
-create_schema: true
-truncate_table: true
-
-# Partition descriptor selector controls how partitions is selected based on 
the current logical
-# timestamp. Default implementation is a sliding window of partition 
descriptors that will visit
-# one partition after the other in the window `slide_after_repeats` times. 
After that will
-# retire one partition descriptor, and pick one instead of it.
-partition_descriptor_selector:
-  default:
-window_size: 10
-slide_after_repeats: 100
-
-# Clustering descriptor selector controls how clusterings are picked within 
the partition:
-# how many rows there can be in a partition, how many rows will be visited for 
a logical timestamp,
-# how many operations there will be in batch, what kind of operations there 
will and how often
-# each kind of operation is going to occur.
-clustering_descriptor_selector:
-  default:
-modifications_per_lts:
-  type: "constant"
-  constant: 2
-rows_per_modification:
-  type: "constant"
-  constant: 2
-operation_kind_weights:
-  DELETE_RANGE: 0
-  DELETE_SLICE: 0
-  DELETE_ROW: 0
-  DELETE_COLUMN: 0
-  DELETE_PARTITION: 0
-  DELETE_COLUMN_WITH_STATICS: 0
-  INSERT_WITH_STATICS: 50
-  INSERT: 50
-  UPDATE_WITH_STATICS: 50
-  UPDATE: 50
-column_mask_bitsets: null
-max_partition_size: 1000
-
-metric_reporter:
-  no_op: {}
-
-data_tracker:
-  locking:
-max_seen_lts: -1
-max_complete_lts: -1
diff --git 
a/test/distributed/org/apache/cassandra/distributed/upgrade/ClusterMetadataUpgradeHarryTest.java
 
b/test/distributed/org/apache/cassandra/distributed/upgrade/ClusterMetadataUpgradeHarryTest.java
index ab6955bcc7..776e7b1073 100644
--- 
a/test/distributed/org/apache/cassandra/distributed/upgrade/ClusterMetadataUpgradeHarryTest.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/upgrade/ClusterMetadataUpgradeHarryTest.java
@@ -18,6 +18,7 @@
 
 package org.apache.cassandra.distributed.upgrade;
 
+import java.util.Collections;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
@@ -34,6 +35,8 @@ import harry.visitors.QueryLogger;
 import harry.visitors.RandomPartitionValidator;
 import org.apache.cassandra.distributed.Constants;
 import org.apache.cassandra.distributed.api.Feature;
+import org.apache.cassandra.distributed.fuzz.FixedSchemaProviderConfiguration;
+import org.apache.cassand

(cassandra) 01/03: Fix HarrySimulatorTest.harryTest

2023-12-20 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 0989a219ad1242b9591d2323e9b31a79746503f8
Author: Alex Petrov 
AuthorDate: Mon Dec 4 17:09:38 2023 +0100

Fix HarrySimulatorTest.harryTest

Patch by Alex Petrov, reviewed by Sam Tunnicliffe for CASSANDRA-19094.
---
 .../cassandra/tcm/sequences/ProgressBarrier.java   |  16 +-
 .../simulator/asm/GlobalMethodTransformer.java |   3 +-
 .../cassandra/simulator/ClusterSimulation.java |  45 ++-
 .../cassandra/simulator/SimulationRunner.java  |   4 +-
 .../apache/cassandra/simulator/SimulatorUtils.java |   9 -
 .../simulator/cluster/KeyspaceActions.java |   5 +-
 .../simulator/cluster/OnClusterLeave.java  |   3 +-
 .../simulator/cluster/OnClusterReplace.java|   3 +-
 .../cassandra/simulator/debug/Reconcile.java   |   4 +-
 .../apache/cassandra/simulator/debug/Record.java   |  41 ++-
 .../cassandra/simulator/debug/SelfReconcile.java   |  15 +-
 .../simulator/harry/HarryValidatingQuery.java  |   3 +-
 .../simulator/test/HarrySimulatorTest.java | 384 +++--
 .../simulator/test/ShortPaxosSimulationTest.java   |   4 +-
 .../simulator/test/SimulationTestBase.java |   4 +-
 15 files changed, 371 insertions(+), 172 deletions(-)

diff --git a/src/java/org/apache/cassandra/tcm/sequences/ProgressBarrier.java 
b/src/java/org/apache/cassandra/tcm/sequences/ProgressBarrier.java
index 3bc5db2782..28f94cacf8 100644
--- a/src/java/org/apache/cassandra/tcm/sequences/ProgressBarrier.java
+++ b/src/java/org/apache/cassandra/tcm/sequences/ProgressBarrier.java
@@ -194,6 +194,7 @@ public class ProgressBarrier
 for (InetAddressAndPort peer : superset)
 requests.add(new WatermarkRequest(peer, messagingService, 
waitFor));
 
+long start = Clock.Global.nanoTime();
 Retry.Deadline deadline = 
Retry.Deadline.after(TimeUnit.MILLISECONDS.toNanos(TIMEOUT_MILLIS),
   new 
Retry.Backoff(DatabaseDescriptor.getCmsDefaultRetryMaxTries(),
 (int) 
BACKOFF_MILLIS,
@@ -241,8 +242,8 @@ public class ProgressBarrier
 
 Set remaining = new HashSet<>(superset);
 remaining.removeAll(collected);
-logger.warn("Could not collect {} of nodes for a progress barrier for 
epoch {} to finish within {}ms. Nodes that have not responded: {}",
-cl, waitFor, 
TimeUnit.NANOSECONDS.toMillis(Clock.Global.nanoTime() - 
deadline.deadlineNanos), remaining);
+logger.warn("Could not collect {} of nodes for a progress barrier for 
epoch {} to finish within {}ms. Nodes that have not responded: {}. {}",
+cl, waitFor, 
TimeUnit.NANOSECONDS.toMillis(deadline.deadlineNanos - start), remaining, 
deadline);
 return false;
 }
 
@@ -555,6 +556,17 @@ public class ProgressBarrier
 condition = new AsyncPromise<>();
 
messagingService.sendWithCallback(Message.out(Verb.TCM_CURRENT_EPOCH_REQ, 
ClusterMetadata.current().epoch), to, this);
 }
+
+@Override
+public String toString()
+{
+return "WatermarkRequest{" +
+   "condition=" + condition +
+   ", to=" + to +
+   ", messagingService=" + messagingService +
+   ", waitFor=" + waitFor +
+   '}';
+}
 }
 
 @Override
diff --git 
a/test/simulator/asm/org/apache/cassandra/simulator/asm/GlobalMethodTransformer.java
 
b/test/simulator/asm/org/apache/cassandra/simulator/asm/GlobalMethodTransformer.java
index 67650639e0..883b7a66a3 100644
--- 
a/test/simulator/asm/org/apache/cassandra/simulator/asm/GlobalMethodTransformer.java
+++ 
b/test/simulator/asm/org/apache/cassandra/simulator/asm/GlobalMethodTransformer.java
@@ -92,7 +92,8 @@ class GlobalMethodTransformer extends MethodVisitor
 super.visitMethodInsn(Opcodes.INVOKESTATIC, 
"org/apache/cassandra/simulator/systems/InterceptorOfSystemMethods$Global", 
name, descriptor, false);
 }
 else if ((globalMethods || deterministic) && opcode == 
Opcodes.INVOKESTATIC &&
-owner.equals("java/util/concurrent/ThreadLocalRandom") && 
(name.equals("getProbe") || name.equals("advanceProbe") || 
name.equals("localInit"))
+ ((owner.equals("java/util/concurrent/ThreadLocalRandom") && 
(name.equals("getProbe") || name.equals("advanceProbe") || 
name.equals("localInit")))
+  || (owner.equals("java/util/concurrent/atomic/Striped64") && 
(name.equals("getProbe&q

(cassandra) 02/03: Fix ShortPaxosSimulationTest.simulationTest

2023-12-20 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 9db161f038bfc756614795dc8616bb85572b5eaa
Author: Alex Petrov 
AuthorDate: Thu Dec 7 19:13:19 2023 +0100

Fix ShortPaxosSimulationTest.simulationTest

Patch by Alex Petrov, reviewed by Sam Tunnicliffe for CASSANDRA-19058
---
 .../cassandra/config/CassandraRelevantProperties.java|  2 +-
 .../org/apache/cassandra/config/DatabaseDescriptor.java  |  2 +-
 src/java/org/apache/cassandra/net/MessagingService.java  | 15 ++-
 .../apache/cassandra/repair/messages/PrepareMessage.java |  8 +---
 .../simulator}/AlwaysDeliverNetworkScheduler.java| 10 +++---
 .../apache/cassandra/simulator/ClusterSimulation.java|  1 +
 .../cassandra/simulator}/FixedLossNetworkScheduler.java  |  6 ++
 .../cassandra/simulator/RunnableActionScheduler.java |  2 +-
 .../cassandra/simulator/cluster/KeyspaceActions.java | 16 
 .../simulator/paxos/PaxosClusterSimulation.java  |  1 +
 .../cassandra/simulator/test/HarrySimulatorTest.java | 10 --
 11 files changed, 45 insertions(+), 28 deletions(-)

diff --git 
a/src/java/org/apache/cassandra/config/CassandraRelevantProperties.java 
b/src/java/org/apache/cassandra/config/CassandraRelevantProperties.java
index 2af142a92a..b7330956ff 100644
--- a/src/java/org/apache/cassandra/config/CassandraRelevantProperties.java
+++ b/src/java/org/apache/cassandra/config/CassandraRelevantProperties.java
@@ -320,7 +320,7 @@ public enum CassandraRelevantProperties
  *
  * This is a dev/CI only property. Do not use otherwise.
  */
-
JUNIT_STORAGE_COMPATIBILITY_MODE("cassandra.junit_storage_compatibility_mode", 
StorageCompatibilityMode.CASSANDRA_4.toString()),
+
JUNIT_STORAGE_COMPATIBILITY_MODE("cassandra.junit_storage_compatibility_mode", 
StorageCompatibilityMode.NONE.toString()),
 /** startup checks properties */
 LIBJEMALLOC("cassandra.libjemalloc"),
 /** Line separator ("\n" on UNIX). */
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 4b0f036914..940fd2d733 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -5023,7 +5023,7 @@ public class DatabaseDescriptor
 {
 // Config is null for junits that don't load the config. Get from env 
var that CI/build.xml sets
 if (conf == null)
-return 
CassandraRelevantProperties.JUNIT_STORAGE_COMPATIBILITY_MODE.getEnum(StorageCompatibilityMode.CASSANDRA_4);
+return 
CassandraRelevantProperties.JUNIT_STORAGE_COMPATIBILITY_MODE.getEnum(StorageCompatibilityMode.NONE);
 else
 return conf.storage_compatibility_mode;
 }
diff --git a/src/java/org/apache/cassandra/net/MessagingService.java 
b/src/java/org/apache/cassandra/net/MessagingService.java
index a0f40d3126..d8512103da 100644
--- a/src/java/org/apache/cassandra/net/MessagingService.java
+++ b/src/java/org/apache/cassandra/net/MessagingService.java
@@ -224,7 +224,20 @@ public class MessagingService extends 
MessagingServiceMBeanImpl implements Messa
 VERSION_50(13),
 VERSION_51(14);
 
-public static final Version CURRENT = 
DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5) ? VERSION_40 : 
VERSION_51;
+public static final Version CURRENT;
+
+static
+{
+ if (DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5))
+ {
+ logger.warn("Starting in storage compatibility mode " + 
DatabaseDescriptor.getStorageCompatibilityMode());
+ CURRENT = VERSION_40;
+ }
+ else
+ {
+ CURRENT = VERSION_51;
+ }
+}
 
 public final int value;
 
diff --git a/src/java/org/apache/cassandra/repair/messages/PrepareMessage.java 
b/src/java/org/apache/cassandra/repair/messages/PrepareMessage.java
index bf76190fc3..a2951ef304 100644
--- a/src/java/org/apache/cassandra/repair/messages/PrepareMessage.java
+++ b/src/java/org/apache/cassandra/repair/messages/PrepareMessage.java
@@ -89,13 +89,14 @@ public class PrepareMessage extends RepairMessage
 }
 
 private static final String MIXED_MODE_ERROR = "Some nodes involved in 
repair are on an incompatible major version. " +
-   "Repair is not supported in 
mixed major version clusters.";
+   "Repair is not supported in 
mixed major version clusters (%d vs %d).";
 
 public static final IVersionedSerializer serializer = new 
IVersionedSerializer()
 {
 public void serial

(cassandra) branch trunk updated (6fb2de3c95 -> b7e5675edd)

2023-12-20 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from 6fb2de3c95 Merge branch 'cassandra-5.0' into trunk
 new 0989a219ad Fix HarrySimulatorTest.harryTest
 new 9db161f038 Fix ShortPaxosSimulationTest.simulationTest
 new b7e5675edd Remove conf/harry-example.yaml

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 conf/harry-example.yaml|  95 -
 .../config/CassandraRelevantProperties.java|   2 +-
 .../cassandra/config/DatabaseDescriptor.java   |   2 +-
 .../org/apache/cassandra/net/MessagingService.java |  15 +-
 .../cassandra/repair/messages/PrepareMessage.java  |   8 +-
 .../cassandra/tcm/sequences/ProgressBarrier.java   |  16 +-
 .../upgrade/ClusterMetadataUpgradeHarryTest.java   |  22 +-
 .../simulator/asm/GlobalMethodTransformer.java |   3 +-
 .../simulator}/AlwaysDeliverNetworkScheduler.java  |  10 +-
 .../cassandra/simulator/ClusterSimulation.java |  46 +--
 .../simulator}/FixedLossNetworkScheduler.java  |   6 +-
 .../simulator/RunnableActionScheduler.java |   2 +-
 .../cassandra/simulator/SimulationRunner.java  |   4 +-
 .../apache/cassandra/simulator/SimulatorUtils.java |   9 -
 .../simulator/cluster/KeyspaceActions.java |  21 +-
 .../simulator/cluster/OnClusterLeave.java  |   3 +-
 .../simulator/cluster/OnClusterReplace.java|   3 +-
 .../cassandra/simulator/debug/Reconcile.java   |   4 +-
 .../apache/cassandra/simulator/debug/Record.java   |  41 ++-
 .../cassandra/simulator/debug/SelfReconcile.java   |  15 +-
 .../simulator/harry/HarryValidatingQuery.java  |   3 +-
 .../simulator/paxos/PaxosClusterSimulation.java|   1 +
 .../simulator/test/HarrySimulatorTest.java | 390 +++--
 .../simulator/test/ShortPaxosSimulationTest.java   |   4 +-
 .../simulator/test/SimulationTestBase.java |   4 +-
 25 files changed, 427 insertions(+), 302 deletions(-)
 delete mode 100644 conf/harry-example.yaml
 rename test/simulator/{test/org/apache/cassandra/simulator/test => 
main/org/apache/cassandra/simulator}/AlwaysDeliverNetworkScheduler.java (82%)
 rename test/simulator/{test/org/apache/cassandra/simulator/test => 
main/org/apache/cassandra/simulator}/FixedLossNetworkScheduler.java (95%)


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



(cassandra-harry) branch trunk updated (490286c -> e314bf4)

2023-12-07 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from 490286c  Remove notion of Modification
 add e314bf4  History Builder API 2.0

No new revisions were added by this update.

Summary of changes:
 Makefile   |   6 +-
 README.md  |   6 +-
 harry-core/src/harry/checker/ModelChecker.java | 230 ++
 harry-core/src/harry/core/Configuration.java   |  62 +-
 harry-core/src/harry/core/Run.java |  12 +-
 .../src/harry/corruptor/AddExtraRowCorruptor.java  |   4 +-
 .../src/harry/corruptor/ChangeValueCorruptor.java  |   8 +-
 .../src/harry/corruptor/HideRowCorruptor.java  |   4 +-
 .../src/harry/corruptor/HideValueCorruptor.java|  26 +-
 .../harry/corruptor/QueryResponseCorruptor.java|   4 +-
 harry-core/src/harry/corruptor/RowCorruptor.java   |   2 +-
 .../src/harry/corruptor/ShowValueCorruptor.java|   8 +-
 harry-core/src/harry/data/ResultSetRow.java|  59 +-
 harry-core/src/harry/ddl/ColumnSpec.java   |  15 +
 harry-core/src/harry/ddl/SchemaSpec.java   |  26 +-
 .../src/harry/dsl/BatchOperationBuilder.java   |  14 +
 harry-core/src/harry/dsl/BatchVisitBuilder.java| 138 
 harry-core/src/harry/dsl/HistoryBuilder.java   | 849 ++---
 .../PartitionVisitState.java}  |  16 +-
 .../src/harry/dsl/ReplayingHistoryBuilder.java | 118 +++
 .../src/harry/dsl/SingleOperationBuilder.java  |  53 ++
 .../src/harry/dsl/SingleOperationVisitBuilder.java | 295 +++
 .../harry/dsl/ValueDescriptorIndexGenerator.java   |  77 ++
 .../src/harry/generators/BooleanGenerator.java |   2 +-
 harry-core/src/harry/generators/EntropySource.java |  94 +++
 harry-core/src/harry/generators/Generator.java |   8 +-
 .../harry/generators/JdkRandomEntropySource.java   |  81 ++
 harry-core/src/harry/generators/PcgRSUFast.java|  52 +-
 .../src/harry/generators/RandomGenerator.java  |  86 ---
 harry-core/src/harry/generators/Surjections.java   |  11 +-
 harry-core/src/harry/model/AgainstSutChecker.java  |  98 +++
 .../harry/model/AlwaysSamePartitionSelector.java   |   2 +-
 harry-core/src/harry/model/OpSelectors.java|  53 +-
 harry-core/src/harry/model/QuiescentChecker.java   |  31 +-
 harry-core/src/harry/model/SelectHelper.java   |  39 +-
 ...teMonotonicClock.java => ApproximateClock.java} |  39 +-
 harry-core/src/harry/model/clock/OffsetClock.java  |   6 +-
 .../sut/{PrintlnSut.java => DoubleWritingSut.java} |  49 +-
 .../src/harry/model/sut/QueryModifyingSut.java |  78 ++
 .../src/harry/model/sut/injvm/InJvmSutBase.java|   1 +
 .../src/harry/operations/CompiledStatement.java|   9 +-
 harry-core/src/harry/operations/Query.java |  15 +-
 .../src/harry/operations/QueryGenerator.java   |  28 +-
 harry-core/src/harry/operations/WriteHelper.java   |   1 -
 .../src/harry/reconciler/PartitionState.java   |  38 +-
 harry-core/src/harry/reconciler/Reconciler.java| 100 ++-
 .../src/harry/runner/LockingDataTracker.java   |   8 +-
 harry-core/src/harry/util/Ranges.java  |  13 -
 harry-core/src/harry/util/TestRunner.java  |   4 +-
 .../src/harry/visitors/AllPartitionsValidator.java |   3 +-
 .../harry/visitors/DoubleWriteVisitExecutor.java   |  56 ++
 .../src/harry/visitors/GeneratingVisitor.java  | 179 -
 harry-core/src/harry/visitors/LoggingVisitor.java  |  10 +-
 harry-core/src/harry/visitors/LtsVisitor.java  |   6 +-
 .../src/harry/visitors/MutatingRowVisitor.java |  62 +-
 harry-core/src/harry/visitors/MutatingVisitor.java |  80 +-
 .../src/harry/visitors/OperationExecutor.java  |  48 +-
 harry-core/src/harry/visitors/RecentValidator.java |   2 +-
 .../src/harry/visitors/ReplayingVisitor.java   |  27 +-
 harry-core/src/harry/visitors/Sampler.java |   2 +-
 harry-core/src/harry/visitors/VisitExecutor.java   |  92 ++-
 .../test/harry/generators/DataGeneratorsTest.java  |   2 +-
 ...omGeneratorTest.java => EntropySourceTest.java} |   8 +-
 .../test/harry/generators/ExtensionsTest.java  |   2 +-
 .../test/harry/generators/SurjectionsTest.java |   7 +-
 .../test/harry/model/ApproximateClockTest.java |   6 +-
 harry-core/test/harry/model/OpSelectorsTest.java   |  51 +-
 harry-core/test/harry/operations/RelationTest.java |   9 +-
 .../test/harry/runner/LockingDataTrackerTest.java  |  95 ++-
 .../test/harry/QuickTheoriesAdapter.java   |  39 +-
 .../harry/dsl/HistoryBuilderIntegrationTest.java   | 142 
 .../harry/examples/RangeTombstoneBurnTest.java | 142 
 .../generators/DataGeneratorsIntegrationTest.java  |  22 +-
 .../harry/model/HistoryBuilderIntegrationTest.java | 191 -
 .../test/harry/model/HistoryBuilderTest.java   | 184 -
 harry-integration/test/ha

(cassandra-harry) branch trunk updated: Remove notion of Modification

2023-12-05 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new 490286c  Remove notion of Modification
490286c is described below

commit 490286ce44f2494cf8c38751c16768c952440d8b
Author: Alex Petrov 
AuthorDate: Wed Nov 29 17:54:10 2023 +0100

Remove notion of Modification

Patch for CASSANDRA-19117 by Alex Petrov; reviewed by Abe Ratnofsky
---
 README.md  |  16 ++-
 conf/default.yaml  |   5 +-
 conf/example.yaml  |   5 +-
 conf/external.yaml |   5 +-
 .../src/harry/concurrent/Uninterruptibles.java |  31 ++
 harry-core/src/harry/core/Configuration.java   |  39 +++-
 harry-core/src/harry/dsl/HistoryBuilder.java   |  60 
 .../src/harry/model/DescriptorSelectorBuilder.java | 104 
 harry-core/src/harry/model/OpSelectors.java|  57 +++
 .../sut/injvm/InJVMTokenAwareVisitExecutor.java|  65 ++--
 harry-core/src/harry/reconciler/Reconciler.java|  11 +--
 .../src/harry/visitors/GeneratingVisitor.java  |  20 +---
 harry-core/src/harry/visitors/LoggingVisitor.java  |   8 +-
 harry-core/src/harry/visitors/LtsVisitor.java  |  16 +--
 harry-core/src/harry/visitors/MutatingVisitor.java | 109 ++---
 .../src/harry/visitors/ReplayingVisitor.java   |  36 +--
 harry-core/src/harry/visitors/VisitExecutor.java   |   6 +-
 harry-core/test/harry/model/OpSelectorsTest.java   |  31 +++---
 harry-core/test/harry/operations/RelationTest.java |  24 +
 .../generators/DataGeneratorsIntegrationTest.java  |   1 -
 .../harry/model/HistoryBuilderIntegrationTest.java |   3 +-
 .../test/harry/model/HistoryBuilderTest.java   |   7 +-
 .../test/harry/model/IntegrationTestBase.java  |   5 +-
 .../harry/model/QuerySelectorNegativeTest.java |   3 +-
 .../model/QuiescentCheckerIntegrationTest.java |   3 +-
 .../test/harry/op/RowVisitorTest.java  |   3 +-
 .../test/resources/single_partition_test.yml   |   5 +-
 27 files changed, 195 insertions(+), 483 deletions(-)

diff --git a/README.md b/README.md
index 2daaa37..1cf3a6f 100644
--- a/README.md
+++ b/README.md
@@ -396,7 +396,7 @@ combo: visitor knows about internals of the cluster it is 
dealing with.
 
 Generally, visitor has to follow the rules specified by DescriptorSelector and 
PdSelector: (it can only visit issue
 mutations against the partition that PdSelector has picked for this LTS), and 
DescriptorSelector (it can visit exactly
-DescriptorSelector#numberOfModifications rows within this partition, 
operations have to have a type specified by
+DescriptorSelector#operationsPerLts rows within this partition, operations 
have to have a type specified by
 #operationKind, clustering and value descriptors have to be in accordance with 
DescriptorSelector#cd and
 DescriptorSelector#vds). The reason for these limitations is because model has 
to be able to reproduce the exact
 sequence of events that was applied to system under test.
@@ -436,7 +436,6 @@ by `-1` can be done in 64 steps.
 Let's introduce some definitions:
 
 * `lts` is a *logical timestamp*, an entity (number in our case), given by the 
clock, on which some action occurs
-* `m` is a *modification id*, a sequential number of the modification that 
occurs on `lts`
 * `rts` is an approximate real-time as of clock for this run
 * `pid` is a partition position, a number between `0` and N, for `N` unique 
generated partitions
 * `pd` is a partition descriptor, a unique descriptor identifying the partition
@@ -447,12 +446,11 @@ entities. Hierarchically, the generation process looks as 
follows:
 
 * `lts` is an entry point, from which the decision process starts
 * `pd` is picked from `lts`, and determines which partition is going to be 
visited
-* for `(pd, lts)` combination, `#mods` (the number of modification batches) 
and `#rows` (the number of rows per
-  modification batch) is determined. `m` is an index of the modification 
batch, and `i` is an index of the operation in
-  the modification batch.
-* `cd` is picked based on `(pd, lts)`, and `n`, a sequential number of the 
operation among all modification batches
+* for `(pd, lts)` combination, `#rows` (the number of rows per modification 
batch) is determined. There can be at most
+one modification batch per LTS.
+* `cd` is picked based on `(pd, lts)`, and `n`, a sequential number of the 
operation in the batch
 * operation type (whether we're going to perform a write, delete, range 
delete, etc), columns involved in this
-  operation, and values for the modification are picked depending on the `pd`, 
`lts`, `m`, and `i`
+  operation, and values for the modification are picked depending

(cassandra) branch trunk updated: Fix rejectSubsequentInProgressSequence test: cap message sizes for commit failures

2023-12-04 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


The following commit(s) were added to refs/heads/trunk by this push:
 new e0766e95bc Fix rejectSubsequentInProgressSequence test: cap message 
sizes for commit failures
e0766e95bc is described below

commit e0766e95bc39358dcd771f1eead6fba5e0b8593c
Author: Alex Petrov 
AuthorDate: Thu Nov 23 21:28:29 2023 +0100

Fix rejectSubsequentInProgressSequence test: cap message sizes for commit 
failures

Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-19076.
---
 src/java/org/apache/cassandra/tcm/Commit.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/java/org/apache/cassandra/tcm/Commit.java 
b/src/java/org/apache/cassandra/tcm/Commit.java
index 8376e55ca4..499cd08a74 100644
--- a/src/java/org/apache/cassandra/tcm/Commit.java
+++ b/src/java/org/apache/cassandra/tcm/Commit.java
@@ -187,7 +187,8 @@ public class Commit
 if (message == null)
 message = "";
 this.code = code;
-this.message = message;
+// TypeSizes#sizeOf encoder only allows strings that are up to 
Short.MAX_VALUE bytes large
+this.message =  message.substring(0, 
Math.min(message.length(), Short.MAX_VALUE));
 this.rejected = rejected;
 }
 


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



(cassandra) branch trunk updated (a98a5a1d9d -> f36a518208)

2023-12-01 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from a98a5a1d9d Reduce time the tests run to avoid timeouts
 new e182744cd0 Introduce 5.1 messaging format that brings in Epoch
 new f36a518208 Fix test Failure: 
MixedModeFrom3LoggedBatchTest.testSimpleStrategy

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/cassandra/db/CounterMutation.java   |   6 +
 src/java/org/apache/cassandra/db/Mutation.java |   7 +-
 src/java/org/apache/cassandra/db/ReadCommand.java  |   8 +++---
 .../db/commitlog/CommitLogDescriptor.java  |   5 +++-
 .../cassandra/db/partitions/PartitionUpdate.java   |   8 +++---
 .../apache/cassandra/hints/HintsDescriptor.java|   5 +++-
 src/java/org/apache/cassandra/net/Message.java |  27 +++--
 .../org/apache/cassandra/net/MessagingService.java |   6 +++--
 .../apache/cassandra/tcm/membership/Directory.java |   6 ++---
 .../{5.0 => 5.1}/gms.EndpointState.bin | Bin
 .../data/serialization/{4.0 => 5.1}/gms.Gossip.bin | Bin
 .../{5.0 => 5.1}/service.SyncComplete.bin  | Bin
 .../{4.0 => 5.1}/service.SyncRequest.bin   | Bin
 .../{5.0 => 5.1}/service.ValidationComplete.bin| Bin
 .../{4.0 => 5.1}/service.ValidationRequest.bin | Bin
 .../{4.0 => 5.1}/utils.EstimatedHistogram.bin  | Bin
 .../cassandra/AbstractSerializationsTester.java|   3 ++-
 17 files changed, 56 insertions(+), 25 deletions(-)
 copy test/data/serialization/{5.0 => 5.1}/gms.EndpointState.bin (100%)
 copy test/data/serialization/{4.0 => 5.1}/gms.Gossip.bin (100%)
 copy test/data/serialization/{5.0 => 5.1}/service.SyncComplete.bin (100%)
 copy test/data/serialization/{4.0 => 5.1}/service.SyncRequest.bin (100%)
 copy test/data/serialization/{5.0 => 5.1}/service.ValidationComplete.bin (100%)
 copy test/data/serialization/{4.0 => 5.1}/service.ValidationRequest.bin (100%)
 copy test/data/serialization/{4.0 => 5.1}/utils.EstimatedHistogram.bin (100%)


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



(cassandra) 02/02: Fix test Failure: MixedModeFrom3LoggedBatchTest.testSimpleStrategy

2023-12-01 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 f36a518208fae1ca3af914f4a74ef4987238c14a
Author: Alex Petrov 
AuthorDate: Fri Dec 1 13:03:12 2023 +0100

Fix test Failure: MixedModeFrom3LoggedBatchTest.testSimpleStrategy

The problem was that read command is deserialising serialisedAt epoch as 
null by default and not as Empty, causing NPE.

Patch by Alex Petrov; reviewed by Sam Tunnicliffe CASSANDRA-19066.
---
 src/java/org/apache/cassandra/db/ReadCommand.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java 
b/src/java/org/apache/cassandra/db/ReadCommand.java
index 0f78bf8150..bb2b856d12 100644
--- a/src/java/org/apache/cassandra/db/ReadCommand.java
+++ b/src/java/org/apache/cassandra/db/ReadCommand.java
@@ -1132,8 +1132,8 @@ public abstract class ReadCommand extends 
AbstractReadQuery
 int digestVersion = isDigest ? (int)in.readUnsignedVInt() : 0;
 TableId tableId = TableId.deserialize(in);
 
-Epoch schemaVersion = null;
-if (version >= MessagingService.VERSION_50)
+Epoch schemaVersion = Epoch.EMPTY;
+if (version >= MessagingService.VERSION_51)
 schemaVersion = Epoch.serializer.deserialize(in);
 TableMetadata tableMetadata;
 try


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



(cassandra) 01/02: Introduce 5.1 messaging format that brings in Epoch

2023-12-01 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 e182744cd0f0f1cd3be1e1b396946913de2bc7c8
Author: Alex Petrov 
AuthorDate: Fri Nov 24 17:39:43 2023 +0100

Introduce 5.1 messaging format that brings in Epoch

Patch by Alex Petrov; reviewed by Sam Tunnicliffe CASSANDRA-19066.
---
 .../org/apache/cassandra/db/CounterMutation.java   |   6 +
 src/java/org/apache/cassandra/db/Mutation.java |   7 +-
 src/java/org/apache/cassandra/db/ReadCommand.java  |   4 +--
 .../db/commitlog/CommitLogDescriptor.java  |   5 +++-
 .../cassandra/db/partitions/PartitionUpdate.java   |   8 +++---
 .../apache/cassandra/hints/HintsDescriptor.java|   5 +++-
 src/java/org/apache/cassandra/net/Message.java |  27 +++--
 .../org/apache/cassandra/net/MessagingService.java |   6 +++--
 .../apache/cassandra/tcm/membership/Directory.java |   6 ++---
 test/data/serialization/5.1/gms.EndpointState.bin  | Bin 0 -> 73 bytes
 test/data/serialization/5.1/gms.Gossip.bin | Bin 0 -> 166 bytes
 .../serialization/5.1/service.SyncComplete.bin | Bin 0 -> 256 bytes
 .../data/serialization/5.1/service.SyncRequest.bin | Bin 0 -> 111 bytes
 .../5.1/service.ValidationComplete.bin | Bin 0 -> 597 bytes
 .../5.1/service.ValidationRequest.bin  | Bin 0 -> 74 bytes
 .../serialization/5.1/utils.EstimatedHistogram.bin | Bin 0 -> 97500 bytes
 .../cassandra/AbstractSerializationsTester.java|   3 ++-
 17 files changed, 54 insertions(+), 23 deletions(-)

diff --git a/src/java/org/apache/cassandra/db/CounterMutation.java 
b/src/java/org/apache/cassandra/db/CounterMutation.java
index ed64e0aad7..14d7a010ff 100644
--- a/src/java/org/apache/cassandra/db/CounterMutation.java
+++ b/src/java/org/apache/cassandra/db/CounterMutation.java
@@ -50,6 +50,7 @@ import org.apache.cassandra.utils.btree.BTreeSet;
 import static java.util.concurrent.TimeUnit.*;
 import static org.apache.cassandra.net.MessagingService.VERSION_40;
 import static org.apache.cassandra.net.MessagingService.VERSION_50;
+import static org.apache.cassandra.net.MessagingService.VERSION_51;
 import static org.apache.cassandra.utils.Clock.Global.nanoTime;
 
 public class CounterMutation implements IMutation
@@ -332,6 +333,7 @@ public class CounterMutation implements IMutation
 
 private int serializedSize40;
 private int serializedSize50;
+private int serializedSize51;
 
 public int serializedSize(int version)
 {
@@ -345,6 +347,10 @@ public class CounterMutation implements IMutation
 if (serializedSize50 == 0)
 serializedSize50 = (int) serializer.serializedSize(this, 
VERSION_50);
 return serializedSize50;
+case VERSION_51:
+if (serializedSize51 == 0)
+serializedSize51 = (int) serializer.serializedSize(this, 
VERSION_51);
+return serializedSize51;
 default:
 throw new IllegalStateException("Unknown serialization 
version: " + version);
 }
diff --git a/src/java/org/apache/cassandra/db/Mutation.java 
b/src/java/org/apache/cassandra/db/Mutation.java
index cceb8ea510..5a41271474 100644
--- a/src/java/org/apache/cassandra/db/Mutation.java
+++ b/src/java/org/apache/cassandra/db/Mutation.java
@@ -50,6 +50,7 @@ import org.apache.cassandra.utils.concurrent.Future;
 
 import static org.apache.cassandra.net.MessagingService.VERSION_40;
 import static org.apache.cassandra.net.MessagingService.VERSION_50;
+import static org.apache.cassandra.net.MessagingService.VERSION_51;
 import static org.apache.cassandra.utils.MonotonicClock.Global.approxTime;
 
 public class Mutation implements IMutation, Supplier
@@ -317,6 +318,7 @@ public class Mutation implements IMutation, 
Supplier
 
 private int serializedSize40;
 private int serializedSize50;
+private int serializedSize51;
 
 public int serializedSize(int version)
 {
@@ -330,7 +332,10 @@ public class Mutation implements IMutation, 
Supplier
 if (serializedSize50 == 0)
 serializedSize50 = (int) serializer.serializedSize(this, 
VERSION_50);
 return serializedSize50;
-
+case VERSION_51:
+if (serializedSize51 == 0)
+serializedSize51 = (int) serializer.serializedSize(this, 
VERSION_51);
+return serializedSize51;
 default:
 throw new IllegalStateException("Unknown serialization 
version: " + version);
 }
diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java 
b/src/java/org/apache/cassandra/db/ReadCommand.java
index 84cc9bfa24..0f78bf8150 100644
--- a/src/java/org/apache/cassandra/db/ReadCommand.java
+++ b/src/java/org/apache/cassandra/db/ReadCommand.java
@@ -1099,7 +1099,7 @@ 

(cassandra) 02/03: Improve the situation with timeouts of all fuzz tests.

2023-12-01 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 179711eab6907fe3e67f485599df23a82f6dc207
Author: Alex Petrov 
AuthorDate: Thu Nov 30 14:06:08 2023 +0100

Improve the situation with timeouts of all fuzz tests.

Since we would wait for request timeout, even if one progress barrier 
message gets lost,
we would fail the test, since we would wait for 10 minutes of timeout. But 
since _commit_
is paused, we could just attempt to retry, and only one of the attempts 
will succeed.

Patch by Alex Petrov; reviewed by Marcus Eriksson for CASSANDRA-19123
---
 .../org/apache/cassandra/distributed/test/log/FuzzTestBase.java   | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/test/distributed/org/apache/cassandra/distributed/test/log/FuzzTestBase.java 
b/test/distributed/org/apache/cassandra/distributed/test/log/FuzzTestBase.java
index 02f6b3eb91..f1fb862ed0 100644
--- 
a/test/distributed/org/apache/cassandra/distributed/test/log/FuzzTestBase.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/test/log/FuzzTestBase.java
@@ -58,9 +58,11 @@ public class FuzzTestBase extends TestBaseImpl
 public Cluster.Builder builder() {
 return super.builder()
 .withConfig(cfg -> cfg.with(GOSSIP, NETWORK)
+  .set("cms_default_max_retries", 
Integer.MAX_VALUE)
+  .set("cms_default_retry_backoff", 
"1000ms")
   // Since we'll be pausing the commit 
request, it may happen that it won't get
   // unpaused before event expiration.
-   .set("request_timeout", String.format("%dms", 
TimeUnit.MINUTES.toMillis(10;
+  .set("cms_await_timeout", 
String.format("%dms", TimeUnit.MINUTES.toMillis(10;
 }
 
 public static IIsolatedExecutor.SerializableRunnable 
toRunnable(ExecUtil.ThrowingSerializableRunnable runnable)


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



(cassandra) 01/03: Fix ConsistentMoveTest: nodes were getting stuck in assertGossipStatus, since we would log the message, but never change the actual gossip status.

2023-12-01 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 5f0359b22947613d99a473042424a69ea8cc4ab9
Author: Alex Petrov 
AuthorDate: Thu Nov 30 14:04:02 2023 +0100

Fix ConsistentMoveTest: nodes were getting stuck in assertGossipStatus, 
since we would log the message, but never change the actual gossip status.

Patch by Alex Petrov; reviewed by Marcus Eriksson for CASSANDRA-19123
---
 src/java/org/apache/cassandra/tcm/listeners/LegacyStateListener.java | 2 ++
 1 file changed, 2 insertions(+)

diff --git 
a/src/java/org/apache/cassandra/tcm/listeners/LegacyStateListener.java 
b/src/java/org/apache/cassandra/tcm/listeners/LegacyStateListener.java
index fef54d36cc..c2199040d3 100644
--- a/src/java/org/apache/cassandra/tcm/listeners/LegacyStateListener.java
+++ b/src/java/org/apache/cassandra/tcm/listeners/LegacyStateListener.java
@@ -129,6 +129,8 @@ public class LegacyStateListener implements 
ChangeListener.Async
 {
 // legacy log messages for tests
 logger.debug("Node {} state MOVING, tokens {}", 
next.directory.endpoint(change), prev.tokenMap.tokens(change));
+Gossiper.instance.mergeNodeToGossip(change, next);
+PeersTable.updateLegacyPeerTable(change, prev, next);
 }
 else if (NodeState.isBootstrap(next.directory.peerState(change)))
 {


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



(cassandra) branch trunk updated (ac201d2f04 -> a98a5a1d9d)

2023-12-01 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from ac201d2f04 Make nodetool tablestats use number of significant digits 
for time and average values consistently
 new 5f0359b229 Fix ConsistentMoveTest: nodes were getting stuck in 
assertGossipStatus, since we would log the message, but never change the actual 
gossip status.
 new 179711eab6 Improve the situation with timeouts of all fuzz tests.
 new a98a5a1d9d Reduce time the tests run to avoid timeouts

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../tcm/listeners/LegacyStateListener.java |  2 ++
 ...=> ReadRepairEmptyRangeTombstonesTestBase.java} | 27 +-
 ...RepairEmptyRangeTombstonesWithFlushesTest.java} |  8 +++
 ...airEmptyRangeTombstonesWithoutFlushesTest.java} |  6 ++---
 .../distributed/test/log/ConsistentLeaveTest.java  |  2 +-
 .../distributed/test/log/ConsistentMoveTest.java   |  2 +-
 .../distributed/test/log/FailedLeaveTest.java  |  2 +-
 .../distributed/test/log/FuzzTestBase.java |  4 +++-
 .../distributed/test/log/ResumableStartupTest.java |  2 +-
 .../test/ring/ConsistentBootstrapTest.java |  2 +-
 10 files changed, 28 insertions(+), 29 deletions(-)
 rename 
test/distributed/org/apache/cassandra/distributed/test/{ReadRepairEmptyRangeTombstonesTest.java
 => ReadRepairEmptyRangeTombstonesTestBase.java} (95%)
 copy test/{unit/org/apache/cassandra/db/tries/InMemoryTrieApplyTest.java => 
distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesWithFlushesTest.java}
 (80%)
 copy test/{unit/org/apache/cassandra/db/tries/InMemoryTrieApplyTest.java => 
distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesWithoutFlushesTest.java}
 (82%)


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



(cassandra) 03/03: Reduce time the tests run to avoid timeouts

2023-12-01 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 a98a5a1d9d40ee3b2952af4e09bd4cc6080fc3fc
Author: Alex Petrov 
AuthorDate: Thu Nov 30 10:33:06 2023 +0100

Reduce time the tests run to avoid timeouts

Patch by Alex Petrov; reviewed by Marcus Eriksson for CASSANDRA-19123
---
 ...=> ReadRepairEmptyRangeTombstonesTestBase.java} | 27 +
 ...dRepairEmptyRangeTombstonesWithFlushesTest.java | 28 ++
 ...pairEmptyRangeTombstonesWithoutFlushesTest.java | 28 ++
 .../distributed/test/log/ConsistentLeaveTest.java  |  2 +-
 .../distributed/test/log/ConsistentMoveTest.java   |  2 +-
 .../distributed/test/log/FailedLeaveTest.java  |  2 +-
 .../distributed/test/log/ResumableStartupTest.java |  2 +-
 .../test/ring/ConsistentBootstrapTest.java |  2 +-
 8 files changed, 72 insertions(+), 21 deletions(-)

diff --git 
a/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTest.java
 
b/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTestBase.java
similarity index 95%
rename from 
test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTest.java
rename to 
test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTestBase.java
index 6cdea9b5b0..fa066e8b37 100644
--- 
a/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTest.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesTestBase.java
@@ -42,7 +42,7 @@ import static 
org.apache.cassandra.distributed.shared.AssertUtils.row;
  * See CASSANDRA-15924.
  */
 @RunWith(Parameterized.class)
-public class ReadRepairEmptyRangeTombstonesTest extends TestBaseImpl
+public abstract class ReadRepairEmptyRangeTombstonesTestBase extends 
TestBaseImpl
 {
 private static final int NUM_NODES = 2;
 
@@ -58,39 +58,34 @@ public class ReadRepairEmptyRangeTombstonesTest extends 
TestBaseImpl
 @Parameterized.Parameter(1)
 public int coordinator;
 
-/**
- * Whether to flush data after mutations
- */
-@Parameterized.Parameter(2)
-public boolean flush;
-
 /**
  * Whether paging is used for the distributed queries
  */
-@Parameterized.Parameter(3)
+@Parameterized.Parameter(2)
 public boolean paging;
 
 /**
  * Whether the clustering order is reverse
  */
-@Parameterized.Parameter(4)
+@Parameterized.Parameter(3)
 public boolean reverse;
 
-@Parameterized.Parameters(name = "{index}: strategy={0} coordinator={1} 
flush={2} paging={3} reverse={4}")
+@Parameterized.Parameters(name = "{index}: strategy={0} coordinator={1} 
paging={2} reverse={3}")
 public static Collection data()
 {
 List result = new ArrayList<>();
 for (int coordinator = 1; coordinator <= NUM_NODES; coordinator++)
-for (boolean flush : BOOLEANS)
-for (boolean paging : BOOLEANS)
-for (boolean reverse : BOOLEANS)
-result.add(new Object[]{ ReadRepairStrategy.BLOCKING, 
coordinator, flush, paging, reverse });
-result.add(new Object[]{ ReadRepairStrategy.NONE, 1, false, false, 
false });
+for (boolean paging : BOOLEANS)
+for (boolean reverse : BOOLEANS)
+result.add(new Object[]{ ReadRepairStrategy.BLOCKING, 
coordinator, paging, reverse });
+result.add(new Object[]{ ReadRepairStrategy.NONE, 1, false, false });
 return result;
 }
 
 private static Cluster cluster;
 
+protected abstract boolean flush();
+
 @BeforeClass
 public static void setupCluster() throws IOException
 {
@@ -255,7 +250,7 @@ public class ReadRepairEmptyRangeTombstonesTest extends 
TestBaseImpl
 
 private Tester tester()
 {
-return new Tester(cluster, strategy, coordinator, flush, paging, 
reverse);
+return new Tester(cluster, strategy, coordinator, flush(), paging, 
reverse);
 }
 
 private static class Tester extends ReadRepairTester
diff --git 
a/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesWithFlushesTest.java
 
b/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesWithFlushesTest.java
new file mode 100644
index 00..3447f82372
--- /dev/null
+++ 
b/test/distributed/org/apache/cassandra/distributed/test/ReadRepairEmptyRangeTombstonesWithFlushesTest.java
@@ -0,0 +1,28 @@
+/*
+ * 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

(cassandra) branch trunk updated: Remove dependency on bundled Harry jar

2023-12-01 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


The following commit(s) were added to refs/heads/trunk by this push:
 new b45a0e0145 Remove dependency on bundled Harry jar
b45a0e0145 is described below

commit b45a0e0145f1779e872047ab83b2991ffb8ed199
Author: Alex Petrov 
AuthorDate: Thu Nov 30 13:12:46 2023 +0100

Remove dependency on bundled Harry jar

Patch by Alex Petrov; reviewed by Marcus Eriksson and Sam Tunnicliffe for 
CASSANDRA-19083
---
 .build/build-resolver.xml|   4 
 .build/parent-pom-template.xml   |   5 ++---
 lib/harry-core-0.0.2-CASSANDRA-18768.jar | Bin 458194 -> 0 bytes
 3 files changed, 2 insertions(+), 7 deletions(-)

diff --git a/.build/build-resolver.xml b/.build/build-resolver.xml
index 889dc11bde..b5509da443 100644
--- a/.build/build-resolver.xml
+++ b/.build/build-resolver.xml
@@ -267,10 +267,6 @@
 
 
 
-
-
-
-   
 
 
 
diff --git a/.build/parent-pom-template.xml b/.build/parent-pom-template.xml
index 070bf18d8d..c2b23a4ca9 100644
--- a/.build/parent-pom-template.xml
+++ b/.build/parent-pom-template.xml
@@ -516,9 +516,8 @@
   
 org.apache.cassandra
 harry-core
-harry-core-0.0.2-CASSANDRA-18768
-system
-
${test.lib}/harry-core-0.0.2-CASSANDRA-18768.jar
+0.0.2
+test
   
   
 org.reflections
diff --git a/lib/harry-core-0.0.2-CASSANDRA-18768.jar 
b/lib/harry-core-0.0.2-CASSANDRA-18768.jar
deleted file mode 100644
index 292db01f06..00
Binary files a/lib/harry-core-0.0.2-CASSANDRA-18768.jar and /dev/null differ


-
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-5.0' into trunk

2023-11-30 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 5f2ff4f932c5a810e1fb4f6266d4ca76a9899c56
Merge: cbabfd39b1 f46444b628
Author: Alex Petrov 
AuthorDate: Thu Nov 30 12:43:49 2023 +0100

Merge branch 'cassandra-5.0' into trunk

 src/java/org/apache/cassandra/config/CassandraRelevantProperties.java | 1 -
 .../org/apache/cassandra/distributed/fuzz/HarryHelper.java| 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)



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



(cassandra) branch trunk updated (cbabfd39b1 -> 5f2ff4f932)

2023-11-30 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from cbabfd39b1 Merge branch 'cassandra-5.0' into trunk
 add f46444b628 Remove relocated.shadedad.io.netty.transport.noNative prop
 new 5f2ff4f932 Merge branch 'cassandra-5.0' into trunk

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/java/org/apache/cassandra/config/CassandraRelevantProperties.java | 1 -
 .../org/apache/cassandra/distributed/fuzz/HarryHelper.java| 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)


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



(cassandra) branch cassandra-5.0 updated (9dc0378c2f -> f46444b628)

2023-11-30 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cassandra-5.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


from 9dc0378c2f Merge branch 'cassandra-4.1' into cassandra-5.0
 add f46444b628 Remove relocated.shadedad.io.netty.transport.noNative prop

No new revisions were added by this update.

Summary of changes:
 src/java/org/apache/cassandra/config/CassandraRelevantProperties.java | 1 -
 .../org/apache/cassandra/distributed/fuzz/HarryHelper.java| 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)


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



(cassandra-harry) branch release updated: [maven-release-plugin] prepare for next development iteration

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


The following commit(s) were added to refs/heads/release by this push:
 new ef3d46d  [maven-release-plugin] prepare for next development iteration
ef3d46d is described below

commit ef3d46de3270e80420f5896828c21ae50a22b885
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:59:52 2023 +0100

[maven-release-plugin] prepare for next development iteration
---
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/harry-core/pom.xml b/harry-core/pom.xml
index ef11eab..7b3299b 100755
--- a/harry-core/pom.xml
+++ b/harry-core/pom.xml
@@ -25,7 +25,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2
+0.0.3-SNAPSHOT
 
 
 harry-core
diff --git a/harry-examples/pom.xml b/harry-examples/pom.xml
index d557032..c2190a1 100644
--- a/harry-examples/pom.xml
+++ b/harry-examples/pom.xml
@@ -19,7 +19,7 @@
 http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
 
 org.apache.cassandra
-0.0.2
+0.0.3-SNAPSHOT
 harry-parent
 
 
@@ -29,30 +29,30 @@
 
 org.apache.cassandra
 harry-core
-0.0.2
+0.0.3-SNAPSHOT
 compile
 
 
 org.apache.cassandra
 harry-integration-external
-0.0.2
+0.0.3-SNAPSHOT
 compile
 
 
 org.apache.cassandra
 harry-integration
-0.0.2
+0.0.3-SNAPSHOT
 compile
 
 
 Harry Examples
 harry-examples
-0.0.2
+0.0.3-SNAPSHOT
 
 
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.2
+0.0.1
 
 
diff --git a/harry-integration-external/pom.xml 
b/harry-integration-external/pom.xml
index c7ca8ad..ea10317 100755
--- a/harry-integration-external/pom.xml
+++ b/harry-integration-external/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2
+0.0.3-SNAPSHOT
 harry-parent
 
 
diff --git a/harry-integration/pom.xml b/harry-integration/pom.xml
index 967e935..b93b7bb 100755
--- a/harry-integration/pom.xml
+++ b/harry-integration/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2
+0.0.3-SNAPSHOT
 harry-parent
 
 
diff --git a/pom.xml b/pom.xml
index 855078c..62ed639 100755
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2
+0.0.3-SNAPSHOT
 
 Harry
 
@@ -272,6 +272,6 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.2
+0.0.1
 
 


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



(cassandra-harry) annotated tag 0.0.2 created (now 08f3003)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.2
in repository https://gitbox.apache.org/repos/asf/cassandra-harry.git


  at 08f3003  (tag)
 tagging 37761ce599242a34b027baff520e1185b7a7c3af (commit)
 replaces 0.0.1
  by Alex Petrov
  on Wed Nov 29 11:59:41 2023 +0100

- Log -
[maven-release-plugin] copy for tag 0.0.2
---

No new revisions were added by this update.


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



(cassandra-harry) 01/01: [maven-release-plugin] prepare release 0.0.2

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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

commit 37761ce599242a34b027baff520e1185b7a7c3af
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:59:25 2023 +0100

[maven-release-plugin] prepare release 0.0.2
---
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/harry-core/pom.xml b/harry-core/pom.xml
index a65fe5e..ef11eab 100755
--- a/harry-core/pom.xml
+++ b/harry-core/pom.xml
@@ -25,7 +25,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 
 harry-core
diff --git a/harry-examples/pom.xml b/harry-examples/pom.xml
index 9cba720..d557032 100644
--- a/harry-examples/pom.xml
+++ b/harry-examples/pom.xml
@@ -19,7 +19,7 @@
 http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
@@ -29,30 +29,30 @@
 
 org.apache.cassandra
 harry-core
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration-external
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 Harry Examples
 harry-examples
-0.0.2-SNAPSHOT
+0.0.2
 
 
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 
diff --git a/harry-integration-external/pom.xml 
b/harry-integration-external/pom.xml
index e0d4528..c7ca8ad 100755
--- a/harry-integration-external/pom.xml
+++ b/harry-integration-external/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/harry-integration/pom.xml b/harry-integration/pom.xml
index 03daedc..967e935 100755
--- a/harry-integration/pom.xml
+++ b/harry-integration/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/pom.xml b/pom.xml
index c023367..855078c 100755
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 Harry
 
@@ -272,6 +272,6 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 


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



(cassandra-harry) branch release created (now 37761ce)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-harry.git


  at 37761ce  [maven-release-plugin] prepare release 0.0.2

This branch includes the following new commits:

 new 37761ce  [maven-release-plugin] prepare release 0.0.2

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



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



(cassandra-harry) annotated tag 0.0.2 deleted (was ff8839c)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.2
in repository https://gitbox.apache.org/repos/asf/cassandra-harry.git


*** WARNING: tag 0.0.2 was deleted! ***

   tag was  ff8839c

This change permanently discards the following revisions:

 discard 94ec942  [maven-release-plugin] prepare release 0.0.2


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



(cassandra-harry) branch release deleted (was 5570c25)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-harry.git


 was 5570c25  [maven-release-plugin] prepare for next development iteration

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.


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



(cassandra-harry) branch trunk updated: [maven-release-plugin] prepare release 0.0.2

2023-11-29 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new f2640d9  [maven-release-plugin] prepare release 0.0.2
f2640d9 is described below

commit f2640d9d7f9adaac30fae08831ffdd28d9adfe1b
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:56:57 2023 +0100

[maven-release-plugin] prepare release 0.0.2
---
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/harry-core/pom.xml b/harry-core/pom.xml
index a65fe5e..ef11eab 100755
--- a/harry-core/pom.xml
+++ b/harry-core/pom.xml
@@ -25,7 +25,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 
 harry-core
diff --git a/harry-examples/pom.xml b/harry-examples/pom.xml
index 9cba720..d557032 100644
--- a/harry-examples/pom.xml
+++ b/harry-examples/pom.xml
@@ -19,7 +19,7 @@
 http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
@@ -29,30 +29,30 @@
 
 org.apache.cassandra
 harry-core
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration-external
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 Harry Examples
 harry-examples
-0.0.2-SNAPSHOT
+0.0.2
 
 
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 
diff --git a/harry-integration-external/pom.xml 
b/harry-integration-external/pom.xml
index e0d4528..c7ca8ad 100755
--- a/harry-integration-external/pom.xml
+++ b/harry-integration-external/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/harry-integration/pom.xml b/harry-integration/pom.xml
index 03daedc..967e935 100755
--- a/harry-integration/pom.xml
+++ b/harry-integration/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/pom.xml b/pom.xml
index c023367..855078c 100755
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 Harry
 
@@ -272,6 +272,6 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 


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



(cassandra-harry) branch trunk updated (f2640d9 -> 4a8e4e9)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


 discard f2640d9  [maven-release-plugin] prepare release 0.0.2

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/trunk (4a8e4e9)
\
 O -- O -- O   (f2640d9)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)


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



(cassandra-harry) branch trunk updated (4bda518 -> 4a8e4e9)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


 discard 4bda518  [maven-release-plugin] prepare release 0.0.2

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/trunk (4a8e4e9)
\
 O -- O -- O   (4bda518)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)


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



(cassandra-harry) branch trunk updated (2e78e3f -> 4bda518)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


 discard 2e78e3f  [maven-release-plugin] prepare for next development iteration
omit 94ec942  [maven-release-plugin] prepare release 0.0.2
 new 4a8e4e9  Fix typos found by Maven plugin
 new 4bda518  [maven-release-plugin] prepare release 0.0.2

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (2e78e3f)
\
 N -- N -- N   refs/heads/trunk (4bda518)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 harry-core/pom.xml   |  2 +-
 harry-core/src/harry/concurrent/ExecutorFactory.java |  3 +--
 harry-core/src/harry/concurrent/WaitQueue.java   |  4 +++-
 harry-core/src/harry/generators/PCGFastPure.java |  2 +-
 harry-examples/pom.xml   | 12 ++--
 harry-integration-external/pom.xml   |  2 +-
 harry-integration/pom.xml|  2 +-
 pom.xml  |  4 ++--
 8 files changed, 16 insertions(+), 15 deletions(-)


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



(cassandra-harry) 02/02: [maven-release-plugin] prepare release 0.0.2

2023-11-29 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-harry.git

commit 4bda5185de4fd33b77cbf7b13157ba013d1263b8
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:53:40 2023 +0100

[maven-release-plugin] prepare release 0.0.2
---
 harry-core/pom.xml |  2 +-
 harry-examples/pom.xml | 12 ++--
 harry-integration-external/pom.xml |  2 +-
 harry-integration/pom.xml  |  2 +-
 pom.xml|  4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/harry-core/pom.xml b/harry-core/pom.xml
index a65fe5e..ef11eab 100755
--- a/harry-core/pom.xml
+++ b/harry-core/pom.xml
@@ -25,7 +25,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 
 harry-core
diff --git a/harry-examples/pom.xml b/harry-examples/pom.xml
index 9cba720..d557032 100644
--- a/harry-examples/pom.xml
+++ b/harry-examples/pom.xml
@@ -19,7 +19,7 @@
 http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
@@ -29,30 +29,30 @@
 
 org.apache.cassandra
 harry-core
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration-external
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 org.apache.cassandra
 harry-integration
-0.0.2-SNAPSHOT
+0.0.2
 compile
 
 
 Harry Examples
 harry-examples
-0.0.2-SNAPSHOT
+0.0.2
 
 
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 
diff --git a/harry-integration-external/pom.xml 
b/harry-integration-external/pom.xml
index e0d4528..c7ca8ad 100755
--- a/harry-integration-external/pom.xml
+++ b/harry-integration-external/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/harry-integration/pom.xml b/harry-integration/pom.xml
index 03daedc..967e935 100755
--- a/harry-integration/pom.xml
+++ b/harry-integration/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.2
 harry-parent
 
 
diff --git a/pom.xml b/pom.xml
index c023367..855078c 100755
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.2
 
 Harry
 
@@ -272,6 +272,6 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
 https://gitbox.apache.org/repos/asf/cassandra-harry.git
-0.0.1
+0.0.2
 
 


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



(cassandra-harry) 01/02: Fix typos found by Maven plugin

2023-11-29 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-harry.git

commit 4a8e4e9077906bc14f6ac19a1aabf4b9ecdefd82
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:48:37 2023 +0100

Fix typos found by Maven plugin
---
 harry-core/src/harry/concurrent/ExecutorFactory.java | 3 +--
 harry-core/src/harry/concurrent/WaitQueue.java   | 4 +++-
 harry-core/src/harry/generators/PCGFastPure.java | 2 +-
 pom.xml  | 1 +
 4 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/harry-core/src/harry/concurrent/ExecutorFactory.java 
b/harry-core/src/harry/concurrent/ExecutorFactory.java
index 834d511..1581c17 100644
--- a/harry-core/src/harry/concurrent/ExecutorFactory.java
+++ b/harry-core/src/harry/concurrent/ExecutorFactory.java
@@ -68,7 +68,6 @@ public interface ExecutorFactory
  * @param interrupts flag to indicate whether to synchronize interrupts of 
the task execution thread
  *   using the task's monitor this can be used to prevent 
interruption while performing
  *   IO operations which forbid interrupted threads.
- *   See: {@link 
org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager::start}
  * @return the new thread
  */
 Interruptible infiniteLoop(String name, Interruptible.Task task, 
InfiniteLoopExecutor.SimulatorSafe simulatorSafe, InfiniteLoopExecutor.Daemon 
daemon, InfiniteLoopExecutor.Interrupts interrupts);
@@ -152,4 +151,4 @@ public interface ExecutorFactory
 return threadGroup == null ? null : new ThreadGroup(threadGroup, 
name);
 }
 }
-}
\ No newline at end of file
+}
diff --git a/harry-core/src/harry/concurrent/WaitQueue.java 
b/harry-core/src/harry/concurrent/WaitQueue.java
index ab96dc5..75592a7 100644
--- a/harry-core/src/harry/concurrent/WaitQueue.java
+++ b/harry-core/src/harry/concurrent/WaitQueue.java
@@ -98,7 +98,9 @@ public interface WaitQueue
  */
 public void signalAll();
 
-/** getWaiting() > 0 */
+/**
+ *  getWaiting() GT 0
+ *  */
 public boolean hasWaiters();
 
 /** Return how many threads are waiting */
diff --git a/harry-core/src/harry/generators/PCGFastPure.java 
b/harry-core/src/harry/generators/PCGFastPure.java
index 9e438dc..caed276 100644
--- a/harry-core/src/harry/generators/PCGFastPure.java
+++ b/harry-core/src/harry/generators/PCGFastPure.java
@@ -25,7 +25,7 @@ package harry.generators;
  * https://github.com/imneme/pcg-c
  * https://github.com/imneme/pcg-cpp
  * 
- * Original library developed by Melissa O'Neill 
+ * Original library developed by Melissa O'Neill (one...@pcg-random.org)
  */
 public class PCGFastPure
 {
diff --git a/pom.xml b/pom.xml
index be18760..c023367 100755
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,7 @@
 
 
 
+true
 1.8
 0.0.1-SNAPSHOT
 2.11.3


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



(cassandra-harry) branch trunk updated: [maven-release-plugin] prepare for next development iteration

2023-11-29 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new 2e78e3f  [maven-release-plugin] prepare for next development iteration
2e78e3f is described below

commit 2e78e3f60f31ca5a8063ed07e99c01864c1cba2f
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:49:09 2023 +0100

[maven-release-plugin] prepare for next development iteration
---
 harry-core/pom.xml | 2 +-
 harry-examples/pom.xml | 4 ++--
 harry-integration-external/pom.xml | 2 +-
 harry-integration/pom.xml  | 2 +-
 pom.xml| 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/harry-core/pom.xml b/harry-core/pom.xml
index a65fe5e..7b3299b 100755
--- a/harry-core/pom.xml
+++ b/harry-core/pom.xml
@@ -25,7 +25,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 
 
 harry-core
diff --git a/harry-examples/pom.xml b/harry-examples/pom.xml
index 9cba720..b9d16b4 100644
--- a/harry-examples/pom.xml
+++ b/harry-examples/pom.xml
@@ -19,7 +19,7 @@
 http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 harry-parent
 
 
@@ -47,7 +47,7 @@
 
 Harry Examples
 harry-examples
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 
 
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-harry.git
diff --git a/harry-integration-external/pom.xml 
b/harry-integration-external/pom.xml
index e0d4528..ea10317 100755
--- a/harry-integration-external/pom.xml
+++ b/harry-integration-external/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 harry-parent
 
 
diff --git a/harry-integration/pom.xml b/harry-integration/pom.xml
index 03daedc..b93b7bb 100755
--- a/harry-integration/pom.xml
+++ b/harry-integration/pom.xml
@@ -24,7 +24,7 @@
 
 
 org.apache.cassandra
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 harry-parent
 
 
diff --git a/pom.xml b/pom.xml
index c023367..62ed639 100755
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 
 org.apache.cassandra
 harry-parent
-0.0.2-SNAPSHOT
+0.0.3-SNAPSHOT
 
 Harry
 


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



(cassandra-harry) annotated tag 0.0.2 created (now ff8839c)

2023-11-29 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.2
in repository https://gitbox.apache.org/repos/asf/cassandra-harry.git


  at ff8839c  (tag)
 tagging 94ec942416e23fce352091b03812d870ddb8cf8c (commit)
 replaces 0.0.1
  by Alex Petrov
  on Wed Nov 29 11:48:54 2023 +0100

- Log -
[maven-release-plugin] copy for tag 0.0.2
---

No new revisions were added by this update.


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



(cassandra-harry) branch trunk updated: [maven-release-plugin] prepare release 0.0.2

2023-11-29 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new 94ec942  [maven-release-plugin] prepare release 0.0.2
94ec942 is described below

commit 94ec942416e23fce352091b03812d870ddb8cf8c
Author: Alex Petrov 
AuthorDate: Wed Nov 29 11:48:37 2023 +0100

[maven-release-plugin] prepare release 0.0.2
---
 pom.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pom.xml b/pom.xml
index be18760..c023367 100755
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,7 @@
 
 
 
+true
 1.8
 0.0.1-SNAPSHOT
 2.11.3


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



[cassandra] branch cep-21-tcm updated: Use pinned Harry version

2023-10-20 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch cep-21-tcm
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/cep-21-tcm by this push:
 new 97bf0f167b Use pinned Harry version
97bf0f167b is described below

commit 97bf0f167b0ef4b0d4492b62472b455d8f6d0a4a
Author: Alex Petrov 
AuthorDate: Thu Oct 19 14:47:29 2023 +0200

Use pinned Harry version
---
 .build/build-resolver.xml |   4 
 .build/parent-pom-template.xml|   5 +++--
 lib/harry-0.0.2-internal-20221121.14211-2.jar | Bin 435204 -> 0 bytes
 lib/harry-core-0.0.2-CASSANDRA-18768.jar  | Bin 0 -> 458194 bytes
 4 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/.build/build-resolver.xml b/.build/build-resolver.xml
index b5509da443..889dc11bde 100644
--- a/.build/build-resolver.xml
+++ b/.build/build-resolver.xml
@@ -267,6 +267,10 @@
 
 
 
+
+
+
+   
 
 
 
diff --git a/.build/parent-pom-template.xml b/.build/parent-pom-template.xml
index 49878c3a42..eb9c86e65f 100644
--- a/.build/parent-pom-template.xml
+++ b/.build/parent-pom-template.xml
@@ -522,8 +522,9 @@
   
 org.apache.cassandra
 harry-core
-0.0.2-SNAPSHOT
-test
+harry-core-0.0.2-CASSANDRA-18768
+system
+
${test.lib}/harry-core-0.0.2-CASSANDRA-18768.jar
   
   
 org.reflections
diff --git a/lib/harry-0.0.2-internal-20221121.14211-2.jar 
b/lib/harry-0.0.2-internal-20221121.14211-2.jar
deleted file mode 100644
index 44bf1be4a3..00
Binary files a/lib/harry-0.0.2-internal-20221121.14211-2.jar and /dev/null 
differ
diff --git a/lib/harry-core-0.0.2-CASSANDRA-18768.jar 
b/lib/harry-core-0.0.2-CASSANDRA-18768.jar
new file mode 100644
index 00..292db01f06
Binary files /dev/null and b/lib/harry-core-0.0.2-CASSANDRA-18768.jar differ


-
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-5.0' into trunk

2023-10-10 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 4b84c4332c3043b31fd33c4d8dc2d7f2771c90da
Merge: c40e0778b3 8b941a6bdc
Author: Alex Petrov 
AuthorDate: Tue Oct 10 10:52:11 2023 +0200

Merge branch 'cassandra-5.0' into trunk

 .../sstable/CQLSSTableWriterConcurrencyTest.java   | 135 +
 1 file changed, 135 insertions(+)


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



[cassandra] branch cassandra-4.1 updated (ea6461b870 -> e562d6a3a9)

2023-10-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cassandra-4.1
in repository https://gitbox.apache.org/repos/asf/cassandra.git


from ea6461b870 Merge branch 'cassandra-4.0' into cassandra-4.1
 add 26c374da4f Synchronize CQLSSTableWriter#build on the Schema.instance 
object
 add e562d6a3a9 Merge branch 'cassandra-4.0' into cassandra-4.1

No new revisions were added by this update.

Summary of changes:
 .../sstable/CQLSSTableWriterConcurrencyTest.java   | 135 +
 1 file changed, 135 insertions(+)
 create mode 100644 
test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterConcurrencyTest.java


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



[cassandra] branch cassandra-4.0 updated (b57c13603a -> 26c374da4f)

2023-10-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cassandra-4.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


from b57c13603a Remove byteman-related files from production sources
 add 26c374da4f Synchronize CQLSSTableWriter#build on the Schema.instance 
object

No new revisions were added by this update.

Summary of changes:
 CHANGES.txt|   1 +
 .../cassandra/io/sstable/CQLSSTableWriter.java |   2 +-
 .../sstable/CQLSSTableWriterConcurrencyTest.java   | 135 +
 3 files changed, 137 insertions(+), 1 deletion(-)
 create mode 100644 
test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterConcurrencyTest.java


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



[cassandra] branch trunk updated (c40e0778b3 -> 4b84c4332c)

2023-10-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from c40e0778b3 Merge branch 'cassandra-5.0' into trunk
 add 26c374da4f Synchronize CQLSSTableWriter#build on the Schema.instance 
object
 add e562d6a3a9 Merge branch 'cassandra-4.0' into cassandra-4.1
 add 8b941a6bdc Merge branch 'cassandra-4.1' into cassandra-5.0
 new 4b84c4332c Merge branch 'cassandra-5.0' into trunk

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../sstable/CQLSSTableWriterConcurrencyTest.java   | 135 +
 1 file changed, 135 insertions(+)
 create mode 100644 
test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterConcurrencyTest.java


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



[cassandra] branch cassandra-5.0 updated (5a02e532d4 -> 8b941a6bdc)

2023-10-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch cassandra-5.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


from 5a02e532d4 Merge branch 'cassandra-4.1' into cassandra-5.0
 add 26c374da4f Synchronize CQLSSTableWriter#build on the Schema.instance 
object
 add e562d6a3a9 Merge branch 'cassandra-4.0' into cassandra-4.1
 add 8b941a6bdc Merge branch 'cassandra-4.1' into cassandra-5.0

No new revisions were added by this update.

Summary of changes:
 .../sstable/CQLSSTableWriterConcurrencyTest.java   | 135 +
 1 file changed, 135 insertions(+)
 create mode 100644 
test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterConcurrencyTest.java


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



[cassandra-in-jvm-dtest-api] tag 0.0.16 created (now 1ba6ef9)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 1ba6ef9  (commit)
No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 deleted (was 5353ed6)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was deleted! ***

   tag was  5353ed6

The revisions that were on this annotated tag are still contained in
other references; therefore, this change does not discard any commits
from the repository.


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 created (now 5353ed6)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 5353ed6  (tag)
 tagging fa95ce3fc2cd272cc1109a73e493a2057f5efbac (commit)
 replaces 0.0.15
  by Alex Petrov
  on Wed Aug 16 23:12:17 2023 +0200

- Log -
[maven-release-plugin] copy for tag 0.0.16
---

No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new fa95ce3  [maven-release-plugin] prepare release 0.0.16
fa95ce3 is described below

commit fa95ce3fc2cd272cc1109a73e493a2057f5efbac
Author: Alex Petrov 
AuthorDate: Wed Aug 16 23:12:13 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare for next development iteration

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new ebd40f9  [maven-release-plugin] prepare for next development iteration
ebd40f9 is described below

commit ebd40f951995efc255c42fb5f728bf8b6c6885ac
Author: Alex Petrov 
AuthorDate: Wed Aug 16 23:12:20 2023 +0200

[maven-release-plugin] prepare for next development iteration
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index ed2641a..518f7ef 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16
+-SNAPSHOT
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.16
+0.0.15
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated (0395af6 -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard 0395af6  [maven-release-plugin] prepare for next development iteration
 discard 80a98f7  [maven-release-plugin] prepare release 0.0.16
 discard b15bb00  Temporarily disable log action test as it seems to fail on 
jdk11

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (0395af6)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../cassandra/distributed/api/LogActionTest.java   | 242 +
 1 file changed, 242 insertions(+)
 create mode 100644 
src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java


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



[cassandra-in-jvm-dtest-api] tag 0.0.16 deleted (was 80a98f7)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was deleted! ***

 was 80a98f7  [maven-release-plugin] prepare release 0.0.16

The revisions that were on this tag are still contained in
other references; therefore, this change does not discard any commits
from the repository.


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



[cassandra-in-jvm-dtest-api] tag 0.0.16 updated (eb60f14 -> 80a98f7)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was modified! ***

from eb60f14  (tag)
  to 80a98f7  (commit)
omit 1ba6ef9  [maven-release-plugin] prepare release 0.0.16
 add b15bb00  Temporarily disable log action test as it seems to fail on 
jdk11
 add 80a98f7  [maven-release-plugin] prepare release 0.0.16

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
tag are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (eb60f14)
\
 N -- N -- N   refs/tags/0.0.16 (80a98f7)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../cassandra/distributed/api/LogActionTest.java   | 242 -
 1 file changed, 242 deletions(-)
 delete mode 100644 
src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java


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



[cassandra-in-jvm-dtest-api] 01/03: Temporarily disable log action test as it seems to fail on jdk11

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git

commit b15bb00d6ad4f9349a8ea56df45fa4fc04d56f4a
Author: Alex Petrov 
AuthorDate: Wed Aug 16 22:59:08 2023 +0200

Temporarily disable log action test as it seems to fail on jdk11
---
 .../cassandra/distributed/api/LogActionTest.java   | 242 -
 1 file changed, 242 deletions(-)

diff --git 
a/src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java 
b/src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java
deleted file mode 100644
index bc2100e..000
--- a/src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * 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.distributed.api;
-
-import org.assertj.core.api.Assertions;
-import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
-import org.mockito.stubbing.Answer;
-
-import java.time.Duration;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.concurrent.TimeoutException;
-import java.util.function.Predicate;
-
-class LogActionTest
-{
-@Test
-public void watchForTimeout() {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "a", "b", "c", 
"d"));
-
-Duration duration = Duration.ofSeconds(1);
-long startNanos = System.nanoTime();
-Assertions.assertThatThrownBy(() -> logs.watchFor(duration, "^ERROR"))
-.isInstanceOf(TimeoutException.class);
-Assertions.assertThat(System.nanoTime())
-.as("duration was smaller than expected timeout")
-.isGreaterThanOrEqualTo(startNanos + duration.toNanos());
-}
-
-@Test
-public void watchForAndFindFirstAttempt() throws TimeoutException {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "a", "b", "ERROR 
match", "d"));
-
-List matches = logs.watchFor("^ERROR").getResult();
-Assertions.assertThat(matches).isEqualTo(Arrays.asList("ERROR match"));
-}
-
-@Test
-public void watchForAndFindThirdAttempt() throws TimeoutException {
-class Counter
-{
-int count;
-}
-Counter counter = new Counter();
-LogAction logs = mockLogAction(fn -> {
-if (++counter.count == 3) {
-return lineIterator(fn, "a", "b", "ERROR match", "d");
-} else {
-return lineIterator(fn, "a", "b", "c", "d");
-}
-});
-
-List matches = logs.watchFor("^ERROR").getResult();
-Assertions.assertThat(matches).isEqualTo(Arrays.asList("ERROR match"));
-Assertions.assertThat(counter.count).isEqualTo(3);
-}
-
-@Test
-public void grepNoMatch() {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "a", "b", "c", 
"d"));
-
-List matches = logs.grep("^ERROR").getResult();
-Assertions.assertThat(matches).isEmpty();
-}
-
-@Test
-public void grepMatch() {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "a", "b", "ERROR 
match", "d"));
-
-List matches = logs.grep("^ERROR").getResult();
-Assertions.assertThat(matches).isEqualTo(Arrays.asList("ERROR match"));
-}
-
-@Test
-public void grepForErrorsNoMatch() {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "a", "b", "c", 
"d"));
-
-List matches = logs.grepForErrors().getResult();
-Assertions.assertThat(matches).isEmpty();
-}
-
-@Test
-public void grepForErrorsNoStacktrace() {
-LogAction logs = mockLogAction(fn -> lineIterator(fn, "INFO a&quo

[cassandra-in-jvm-dtest-api] 02/03: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git

commit 80a98f759c45a60925d63f2d4659e2fedc24d322
Author: Alex Petrov 
AuthorDate: Wed Aug 16 19:06:15 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated (1e93a27 -> 0395af6)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard 1e93a27  [maven-release-plugin] prepare for next development iteration
 discard 296f2a7  [maven-release-plugin] prepare release 0.0.16
 new b15bb00  Temporarily disable log action test as it seems to fail on 
jdk11
 new 80a98f7  [maven-release-plugin] prepare release 0.0.16
 new 0395af6  [maven-release-plugin] prepare for next development iteration

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (1e93a27)
\
 N -- N -- N   refs/heads/release (0395af6)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../cassandra/distributed/api/LogActionTest.java   | 242 -
 1 file changed, 242 deletions(-)
 delete mode 100644 
src/test/java/org/apache/cassandra/distributed/api/LogActionTest.java


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



[cassandra-in-jvm-dtest-api] 03/03: [maven-release-plugin] prepare for next development iteration

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git

commit 0395af65a8c529c7c252c03142e97a7be7351b53
Author: Alex Petrov 
AuthorDate: Wed Aug 16 19:06:29 2023 +0200

[maven-release-plugin] prepare for next development iteration
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index ed2641a..daadc91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16
+0.0.16-SNAPSHOT
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.16
+0.0.15
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare for next development iteration

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new 1e93a27  [maven-release-plugin] prepare for next development iteration
1e93a27 is described below

commit 1e93a271d5da7a00e7fb57c1dd4f3c15e6f2f0bc
Author: Alex Petrov 
AuthorDate: Wed Aug 16 19:06:29 2023 +0200

[maven-release-plugin] prepare for next development iteration
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index ed2641a..daadc91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16
+0.0.16-SNAPSHOT
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.16
+0.0.15
   
 
 


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 created (now 45dfcf0)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 45dfcf0  (tag)
 tagging 296f2a7c32ae4e035f488a4a3eb68d1627dc4e73 (commit)
 replaces 0.0.15
  by Alex Petrov
  on Wed Aug 16 19:06:22 2023 +0200

- Log -
[maven-release-plugin] copy for tag 0.0.16
---

No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new 296f2a7  [maven-release-plugin] prepare release 0.0.16
296f2a7 is described below

commit 296f2a7c32ae4e035f488a4a3eb68d1627dc4e73
Author: Alex Petrov 
AuthorDate: Wed Aug 16 19:06:15 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated (00cba75 -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard 00cba75  [maven-release-plugin] prepare release 0.0.16

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (00cba75)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new 00cba75  [maven-release-plugin] prepare release 0.0.16
00cba75 is described below

commit 00cba752aa5791f2d2edf40d9a3c2decfba21c16
Author: Alex Petrov 
AuthorDate: Wed Aug 16 19:04:36 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated (edd9f74 -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard edd9f74  [maven-release-plugin] prepare for next development iteration
 discard d913dee  [maven-release-plugin] prepare release 0.0.16

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (edd9f74)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 deleted (was 668bade)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was deleted! ***

   tag was  668bade

The revisions that were on this annotated tag are still contained in
other references; therefore, this change does not discard any commits
from the repository.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare for next development iteration

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new edd9f74  [maven-release-plugin] prepare for next development iteration
edd9f74 is described below

commit edd9f7425cb4de15274c7796b0ed771f76207af2
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:51:21 2023 +0200

[maven-release-plugin] prepare for next development iteration
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index ed2641a..daadc91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16
+0.0.16-SNAPSHOT
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.16
+0.0.15
   
 
 


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 created (now 668bade)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 668bade  (tag)
 tagging d913dee5b6379ebe9ebeb57faff9e6221754e939 (commit)
 replaces 0.0.15
  by Alex Petrov
  on Wed Aug 16 18:51:15 2023 +0200

- Log -
[maven-release-plugin] copy for tag 0.0.16
---

No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new d913dee  [maven-release-plugin] prepare release 0.0.16
d913dee is described below

commit d913dee5b6379ebe9ebeb57faff9e6221754e939
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:51:07 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 deleted (was 58929e1)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was deleted! ***

   tag was  58929e1

This change permanently discards the following revisions:

 discard 11072ef  [maven-release-plugin] prepare release 0.0.16


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



[cassandra-in-jvm-dtest-api] branch release updated (06c1241 -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard 06c1241  [maven-release-plugin] prepare for next development iteration
omit 11072ef  [maven-release-plugin] prepare release 0.0.16

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (06c1241)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare for next development iteration

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new 06c1241  [maven-release-plugin] prepare for next development iteration
06c1241 is described below

commit 06c1241643a518b9050a7140d8b4eb39254a5c1f
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:44:01 2023 +0200

[maven-release-plugin] prepare for next development iteration
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index ed2641a..daadc91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16
+0.0.16-SNAPSHOT
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.16
+0.0.15
   
 
 


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 created (now 58929e1)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 58929e1  (tag)
 tagging 11072efbf922518bcc539b82042785699b2b3a7c (commit)
 replaces 0.0.15
  by Alex Petrov
  on Wed Aug 16 18:43:54 2023 +0200

- Log -
[maven-release-plugin] copy for tag 0.0.16
---

No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new 11072ef  [maven-release-plugin] prepare release 0.0.16
11072ef is described below

commit 11072efbf922518bcc539b82042785699b2b3a7c
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:43:47 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] branch release updated (a3cc424 -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard a3cc424  [maven-release-plugin] prepare release 0.0.16

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (a3cc424)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 deleted (was 00b05fa)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


*** WARNING: tag 0.0.16 was deleted! ***

   tag was  00b05fa

The revisions that were on this annotated tag are still contained in
other references; therefore, this change does not discard any commits
from the repository.


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



[cassandra-in-jvm-dtest-api] branch release updated: [maven-release-plugin] prepare release 0.0.16

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/release by this push:
 new a3cc424  [maven-release-plugin] prepare release 0.0.16
a3cc424 is described below

commit a3cc424ce254d74f1a599b16e4c044b2413de0e9
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:39:56 2023 +0200

[maven-release-plugin] prepare release 0.0.16
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ed2641a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.16
 In JVM Test API
 In JVM Test API
 
@@ -164,7 +164,7 @@
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
scm:git:https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
 
https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git
-0.0.15
+0.0.16
   
 
 


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



[cassandra-in-jvm-dtest-api] annotated tag 0.0.16 created (now 00b05fa)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to annotated tag 0.0.16
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


  at 00b05fa  (tag)
 tagging f3a3b982227602ec0752a5d0d4d780dc62ac3f6d (commit)
 replaces 0.0.15
  by Alex Petrov
  on Wed Aug 16 18:36:32 2023 +0200

- Log -
[maven-release-plugin] copy for tag 0.0.16
---

No new revisions were added by this update.


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



[cassandra-in-jvm-dtest-api] branch release updated (e973f5b -> f3a3b98)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard e973f5b  [maven-release-plugin] prepare release 0.0.15

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/release (f3a3b98)
\
 O -- O -- O   (e973f5b)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 pom.xml | 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-in-jvm-dtest-api] branch release updated (05f4990 -> e973f5b)

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


from 05f4990  [maven-release-plugin] prepare for next development iteration
 add acaabaf  Add support for JMX
 add dadade5  Updated setting newVersion to look up the current version
 add 369355a  Update CHANGES.txt
 add ea4b44e  [maven-release-plugin] prepare release 0.0.14
 add 07cb6fe  [maven-release-plugin] prepare for next development iteration
 add 1e3bc4c  Add JMX utility class to in-jvm dtest to ease development of 
new tests using JMX
 add 48af78d  [maven-release-plugin] prepare release 0.0.15
 add 695ef5e  [maven-release-plugin] prepare for next development iteration
 add f3a3b98  CASSANDRA-18727 - JMXUtil.getJmxConnector should retry 
connection attempts (#37)
 new e973f5b  [maven-release-plugin] prepare release 0.0.15

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 CHANGES.txt|   4 +
 README.md  |   4 +-
 pom.xml|   4 +-
 .../apache/cassandra/distributed/api/Feature.java  |   2 +-
 .../cassandra/distributed/api/IInstanceConfig.java |   2 +
 .../cassandra/distributed/api/LogAction.java   |  30 +
 .../distributed/shared/InstanceClassLoader.java|  61 +-
 .../cassandra/distributed/shared/JMXUtil.java  | 127 +
 ...ThrowingRunnable.java => Uninterruptibles.java} |  36 +++---
 9 files changed, 225 insertions(+), 45 deletions(-)
 create mode 100644 
src/main/java/org/apache/cassandra/distributed/shared/JMXUtil.java
 copy 
src/main/java/org/apache/cassandra/distributed/shared/{ThrowingRunnable.java => 
Uninterruptibles.java} (52%)


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



[cassandra-in-jvm-dtest-api] 01/01: [maven-release-plugin] prepare release 0.0.15

2023-08-16 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch release
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git

commit e973f5b70acd92cd5485aec5c207251273610286
Author: Alex Petrov 
AuthorDate: Wed Aug 16 18:33:24 2023 +0200

[maven-release-plugin] prepare release 0.0.15
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index daadc91..ace94f1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 4.0.0
 org.apache.cassandra
 dtest-api
-0.0.16-SNAPSHOT
+0.0.15
 In JVM Test API
 In JVM Test API
 


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



[cassandra-in-jvm-dtest-api] branch trunk updated: CASSANDRA-18727 - JMXUtil.getJmxConnector should retry connection attempts (#37)

2023-08-11 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-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/trunk by this push:
 new f3a3b98  CASSANDRA-18727 - JMXUtil.getJmxConnector should retry 
connection attempts (#37)
f3a3b98 is described below

commit f3a3b982227602ec0752a5d0d4d780dc62ac3f6d
Author: Doug Rohrer <682821+jeetkund...@users.noreply.github.com>
AuthorDate: Fri Aug 11 10:46:44 2023 -0400

CASSANDRA-18727 - JMXUtil.getJmxConnector should retry connection attempts 
(#37)

JMXUtil.getJmxConnector should retry connection attempts

Patch by Doug Roher for CASSANDRA-18727. Reviewed by Jon Meredith and 
Francisco Guerrero.
---
 .../cassandra/distributed/api/LogAction.java   | 30 +---
 .../cassandra/distributed/shared/JMXUtil.java  | 90 --
 .../distributed/shared/Uninterruptibles.java   | 48 
 3 files changed, 134 insertions(+), 34 deletions(-)

diff --git a/src/main/java/org/apache/cassandra/distributed/api/LogAction.java 
b/src/main/java/org/apache/cassandra/distributed/api/LogAction.java
index 8f9e693..7b90ffc 100644
--- a/src/main/java/org/apache/cassandra/distributed/api/LogAction.java
+++ b/src/main/java/org/apache/cassandra/distributed/api/LogAction.java
@@ -30,6 +30,8 @@ import java.util.function.Predicate;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import org.apache.cassandra.distributed.shared.Uninterruptibles;
+
 public interface LogAction
 {
 /**
@@ -56,7 +58,7 @@ public interface LogAction
 if (previousPosition == mark())
 {
 // still matching... wait a bit
-Internal.sleepUninterruptibly(1, TimeUnit.SECONDS);
+Uninterruptibles.sleepUninterruptibly(1, TimeUnit.SECONDS);
 continue;
 }
 // position not matching, try to read
@@ -340,7 +342,7 @@ public interface LogAction
 '}';
 }
 }
-
+
 class Internal
 {
 private static final int DEFAULT_START_POSITION = -1;
@@ -388,29 +390,5 @@ public interface LogAction
 {
 return regexPredicate(Pattern.compile(pattern));
 }
-
-private static void sleepUninterruptibly(long sleepFor, TimeUnit unit) 
{
-// copied from guava since dtest can't depend on guava
-boolean interrupted = false;
-
-try {
-long remainingNanos = unit.toNanos(sleepFor);
-long end = System.nanoTime() + remainingNanos;
-
-while(true) {
-try {
-TimeUnit.NANOSECONDS.sleep(remainingNanos);
-return;
-} catch (InterruptedException var12) {
-interrupted = true;
-remainingNanos = end - System.nanoTime();
-}
-}
-} finally {
-if (interrupted) {
-Thread.currentThread().interrupt();
-}
-}
-}
 }
 }
diff --git a/src/main/java/org/apache/cassandra/distributed/shared/JMXUtil.java 
b/src/main/java/org/apache/cassandra/distributed/shared/JMXUtil.java
index 183397e..c505201 100644
--- a/src/main/java/org/apache/cassandra/distributed/shared/JMXUtil.java
+++ b/src/main/java/org/apache/cassandra/distributed/shared/JMXUtil.java
@@ -18,11 +18,16 @@
 
 package org.apache.cassandra.distributed.shared;
 
-import java.io.IOException;
+import java.net.MalformedURLException;
+import java.util.Map;
+import java.util.concurrent.TimeUnit;
 import javax.management.remote.JMXConnector;
 import javax.management.remote.JMXConnectorFactory;
 import javax.management.remote.JMXServiceURL;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import org.apache.cassandra.distributed.api.IInstanceConfig;
 
 public final class JMXUtil
@@ -31,23 +36,92 @@ public final class JMXUtil
 {
 }
 
+private final static Logger LOGGER = 
LoggerFactory.getLogger(JMXUtil.class);
+
 public static final String JMX_SERVICE_URL_FMT = 
"service:jmx:rmi:///jndi/rmi://%s:%d/jmxrmi";
 
+/**
+ * Create an instance of a {@link JMXConnector} to an in-jvm instance 
based on the input configuration.
+ * This overload uses 5 as the default number of retries which has been 
shown to be adequate in testing,
+ * and passes a null environment map to the connect call.
+ * @param config The instance configuration to use to get the necessary 
parameters to connect
+ * @return A JMXConnector instance which can communicate with the 
specified instance via JMX
+ */
 public static JMXConnector getJmxConnector(IInstanceConfig config) {
+return getJmxConnector(config, 5, null);
+}
+
+/**
+ * Create an inst

[cassandra-in-jvm-dtest-api] branch trunk updated: Updated setting newVersion to look up the current version

2023-05-12 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-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/trunk by this push:
 new dadade5  Updated setting newVersion to look up the current version
dadade5 is described below

commit dadade5dd5b23156fa9aa90d90f5ecafd5453d8c
Author: dcapwell 
AuthorDate: Wed Mar 30 08:57:44 2022 -0700

Updated setting newVersion to look up the current version
---
 README.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 236e137..eb0bde5 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@ Shared API package for in-JVM distributed tests.
 # Publishing snapshot
 
 ```
-mvn versions:set -DnewVersion=0.0.2-`git rev-parse --short HEAD`-SNAPSHOT
+mvn versions:set -DnewVersion=`xpath -n -q -e '/project/version/text()' 
pom.xml | awk -F- '{print $1}'`-`git rev-parse --short HEAD`-SNAPSHOT
 mvn deploy
 ```
 
@@ -56,4 +56,4 @@ gpg --verbose --recv-keys --keyserver 
hkps://hkps.pool.sks-keyservers.net https://dist.apache.org/repos/dist/release/cassandra/ 
release
 (gpg --list-sigs "" && gpg --armor --export "") >> KEYS
 svn commit KEYS -m "Add 's key for releases" # or ask some PMC to 
do this for you by opening CASSANDRA jira, like this one: 
https://issues.apache.org/jira/browse/CASSANDRA-15534
-```
\ No newline at end of file
+```


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



[cassandra-in-jvm-dtest-api] branch trunk updated: Add support for JMX

2023-05-11 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-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/trunk by this push:
 new acaabaf  Add support for JMX
acaabaf is described below

commit acaabaf87928442c9d8a8741deac11b5a590f1d8
Author: Doug Rohrer 
AuthorDate: Tue May 9 11:21:54 2023 -0400

Add support for JMX

Additionally, adds some code to help clean up the InstanceClassLoader
more efficiently and may be helpful for future features, even though it
is not necessary for this set of changes.
---
 .../apache/cassandra/distributed/api/Feature.java  |  2 +-
 .../cassandra/distributed/api/IInstanceConfig.java |  2 +
 .../distributed/shared/InstanceClassLoader.java| 61 +-
 3 files changed, 63 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/cassandra/distributed/api/Feature.java 
b/src/main/java/org/apache/cassandra/distributed/api/Feature.java
index 6ba4a43..ad53355 100644
--- a/src/main/java/org/apache/cassandra/distributed/api/Feature.java
+++ b/src/main/java/org/apache/cassandra/distributed/api/Feature.java
@@ -20,5 +20,5 @@ package org.apache.cassandra.distributed.api;
 
 public enum Feature
 {
-NETWORK, GOSSIP, NATIVE_PROTOCOL, BLANK_GOSSIP
+NETWORK, GOSSIP, NATIVE_PROTOCOL, BLANK_GOSSIP, JMX
 }
diff --git 
a/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java 
b/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
index f88e761..36c741a 100644
--- a/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
+++ b/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
@@ -47,6 +47,8 @@ public interface IInstanceConfig
 
 String localDatacenter();
 
+int jmxPort();
+
 /**
  * write the specified parameters to the Config object; we do not specify 
Config as the type to support a Config
  * from any ClassLoader; the implementation must not directly access any 
fields of the Object, or cast it, but
diff --git 
a/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
 
b/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
index 7420f5e..e41b6cc 100644
--- 
a/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
+++ 
b/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
@@ -22,6 +22,8 @@ import org.apache.cassandra.distributed.api.IClassTransformer;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.net.JarURLConnection;
 import java.net.URL;
 import java.net.URLClassLoader;
@@ -29,7 +31,8 @@ import java.net.URLConnection;
 import java.security.CodeSigner;
 import java.security.CodeSource;
 import java.util.Arrays;
-import java.util.function.BiFunction;
+import java.util.List;
+import java.util.Map;
 import java.util.function.Predicate;
 import java.util.jar.Manifest;
 
@@ -217,5 +220,61 @@ public class InstanceClassLoader extends URLClassLoader
 {
 isClosed = true;
 super.close();
+try
+{
+// The JVM really wants to prevent Class instances from being GCed 
until the
+// classloader which loaded them is GCed. It therefore maintains a 
list
+// of Class instances for the sole purpose of providing a GC root 
for them.
+// Here, we actually want the class instances to be GCed even if 
this classloader
+// somehow gets stuck with a GC root, so we clear the class list 
via reflection.
+// The current features implemented technically work without this, 
but the Garbage
+// Collector works more efficiently with it here, and it may 
provide value to new
+// feature developers.
+Field f = getField(ClassLoader.class, "classes");
+f.setAccessible(true);
+List> classes = (List>) f.get(this);
+classes.clear();
+// Same problem with packages - without clearing this,
+// the instance classloader can't unload
+f = getField(ClassLoader.class, "packages");
+f.setAccessible(true);
+Map packageMap = (Map) f.get(this);
+packageMap.clear();
+}
+catch (Throwable e)
+{
+throw new RuntimeException(e);
+}
+}
+
+public static Field getField(Class clazz, String fieldName) throws 
NoSuchFieldException
+{
+// below code works before Java 12
+try
+{
+return clazz.getDeclaredField(fieldName);
+}
+catch (NoSuchFieldException e)
+{
+// this is mitigation for JDK 17 
(https://bugs.openjdk.org/browse/JDK-8210522)
+try
+   

[cassandra-in-jvm-dtest-api] branch trunk updated (c8a223d -> 05f4990)

2023-05-10 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a change to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra-in-jvm-dtest-api.git


 discard c8a223d  Add support for JMX

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/trunk (05f4990)
\
 O -- O -- O   (c8a223d)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../apache/cassandra/distributed/api/Feature.java  |  2 +-
 .../cassandra/distributed/api/IInstanceConfig.java |  2 -
 .../distributed/shared/InstanceClassLoader.java| 61 +-
 3 files changed, 2 insertions(+), 63 deletions(-)


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



[cassandra-in-jvm-dtest-api] branch trunk updated: Add support for JMX

2023-05-10 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-in-jvm-dtest-api.git


The following commit(s) were added to refs/heads/trunk by this push:
 new c8a223d  Add support for JMX
c8a223d is described below

commit c8a223dc28f036307ae0a50755b2623a9017f200
Author: Doug Rohrer 
AuthorDate: Tue May 9 11:21:54 2023 -0400

Add support for JMX

Additionally, adds some code to help clean up the InstanceClassLoader
more efficiently and may be helpful for future features, even though it
is not necessary for this set of changes.
---
 .../apache/cassandra/distributed/api/Feature.java  |  2 +-
 .../cassandra/distributed/api/IInstanceConfig.java |  2 +
 .../distributed/shared/InstanceClassLoader.java| 61 +-
 3 files changed, 63 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/cassandra/distributed/api/Feature.java 
b/src/main/java/org/apache/cassandra/distributed/api/Feature.java
index 6ba4a43..ad53355 100644
--- a/src/main/java/org/apache/cassandra/distributed/api/Feature.java
+++ b/src/main/java/org/apache/cassandra/distributed/api/Feature.java
@@ -20,5 +20,5 @@ package org.apache.cassandra.distributed.api;
 
 public enum Feature
 {
-NETWORK, GOSSIP, NATIVE_PROTOCOL, BLANK_GOSSIP
+NETWORK, GOSSIP, NATIVE_PROTOCOL, BLANK_GOSSIP, JMX
 }
diff --git 
a/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java 
b/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
index f88e761..36c741a 100644
--- a/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
+++ b/src/main/java/org/apache/cassandra/distributed/api/IInstanceConfig.java
@@ -47,6 +47,8 @@ public interface IInstanceConfig
 
 String localDatacenter();
 
+int jmxPort();
+
 /**
  * write the specified parameters to the Config object; we do not specify 
Config as the type to support a Config
  * from any ClassLoader; the implementation must not directly access any 
fields of the Object, or cast it, but
diff --git 
a/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
 
b/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
index 7420f5e..e41b6cc 100644
--- 
a/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
+++ 
b/src/main/java/org/apache/cassandra/distributed/shared/InstanceClassLoader.java
@@ -22,6 +22,8 @@ import org.apache.cassandra.distributed.api.IClassTransformer;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.net.JarURLConnection;
 import java.net.URL;
 import java.net.URLClassLoader;
@@ -29,7 +31,8 @@ import java.net.URLConnection;
 import java.security.CodeSigner;
 import java.security.CodeSource;
 import java.util.Arrays;
-import java.util.function.BiFunction;
+import java.util.List;
+import java.util.Map;
 import java.util.function.Predicate;
 import java.util.jar.Manifest;
 
@@ -217,5 +220,61 @@ public class InstanceClassLoader extends URLClassLoader
 {
 isClosed = true;
 super.close();
+try
+{
+// The JVM really wants to prevent Class instances from being GCed 
until the
+// classloader which loaded them is GCed. It therefore maintains a 
list
+// of Class instances for the sole purpose of providing a GC root 
for them.
+// Here, we actually want the class instances to be GCed even if 
this classloader
+// somehow gets stuck with a GC root, so we clear the class list 
via reflection.
+// The current features implemented technically work without this, 
but the Garbage
+// Collector works more efficiently with it here, and it may 
provide value to new
+// feature developers.
+Field f = getField(ClassLoader.class, "classes");
+f.setAccessible(true);
+List> classes = (List>) f.get(this);
+classes.clear();
+// Same problem with packages - without clearing this,
+// the instance classloader can't unload
+f = getField(ClassLoader.class, "packages");
+f.setAccessible(true);
+Map packageMap = (Map) f.get(this);
+packageMap.clear();
+}
+catch (Throwable e)
+{
+throw new RuntimeException(e);
+}
+}
+
+public static Field getField(Class clazz, String fieldName) throws 
NoSuchFieldException
+{
+// below code works before Java 12
+try
+{
+return clazz.getDeclaredField(fieldName);
+}
+catch (NoSuchFieldException e)
+{
+// this is mitigation for JDK 17 
(https://bugs.openjdk.org/browse/JDK-8210522)
+try
+   

[cassandra-harry] branch trunk updated: Ninja: readme

2023-03-14 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-harry.git


The following commit(s) were added to refs/heads/trunk by this push:
 new b3f713e  Ninja: readme
b3f713e is described below

commit b3f713e43f2081f96f0682b55d94c7351a8f1448
Author: Alex Petrov 
AuthorDate: Tue Mar 14 21:34:19 2023 +0100

Ninja: readme
---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index a09a345..ff5f808 100644
--- a/README.md
+++ b/README.md
@@ -744,7 +744,7 @@ have to build it manually:
 make package
 mvn dependency:copy-dependencies
 java -cp harry-core/target/harry-core-0.0.2-SNAPSHOT.jar:$(find 
harrry-core/target/dependency/*.jar | tr -s '\n' ':'). harry.runner.HarryRunner
-
+```
 
 `4.2` is a version of Cassandra which you can find in `build.xml`, and
 `4.2-SNAPSHOT` is a version of dtest jar that'll be installed under


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



[cassandra-harry] branch trunk updated (42a50b4 -> 2b7563f)

2023-03-14 Thread ifesdjeen
This is an automated email from the ASF dual-hosted git repository.

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


from 42a50b4  Fix conf/external.yaml to have run_time in the right place
 new d4ecaf8  Improvements:
 new 6ed308d  Pull in Cassandra concurrent utils until there is a common 
shared library
 new 6e0b450  Pull in token util from Cassandra to avoid circular dependency
 new 796cfd4  Implement concurrent quiescent checker
 new c0e749e  Make it possible to run multiple Harry runners concurrently 
against the same keyspace
 new a8b9869  Allow selecting subsets of columns and wilcard queries. Open 
API for hand-crafting both mutation and read queries Improve errors Fix a 
problem with corruptor sorting
 new 8a3748c  Minor API improvements
 new 6ae2209  Trigger exception if we run out of partitions
 new 2b7563f  Implement parsing schema provider

The 9 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 Makefile   |  18 +-
 README.md  | 104 -
 bin/build-shaded-dtest-for-harry.sh|  51 +++
 bin/relocate-dependencies-harry.pom| 154 
 conf/default.yaml  |   6 -
 conf/external.yaml |  44 ++-
 harry-core/pom.xml |  10 +
 harry-core/src/harry/concurrent/Awaitable.java | 399 +++
 harry-core/src/harry/concurrent/Clock.java | 103 +
 harry-core/src/harry/concurrent/Condition.java |  99 +
 .../src/harry/concurrent/CountDownLatch.java   | 107 ++
 .../src/harry/concurrent/ExecutorFactory.java  | 155 
 .../src/harry/concurrent/InfiniteLoopExecutor.java | 178 +
 .../Model.java => concurrent/Interruptible.java}   |  38 +-
 .../src/harry/concurrent/NamedThreadFactory.java   | 195 ++
 .../Shutdownable.java} |  36 +-
 .../UncheckedInterruptedException.java}|  25 +-
 harry-core/src/harry/concurrent/WaitQueue.java | 390 +++
 harry-core/src/harry/core/Configuration.java   | 335 +++-
 harry-core/src/harry/core/Run.java |   2 -
 .../src/harry/corruptor/AddExtraRowCorruptor.java  |  11 +-
 .../src/harry/corruptor/ChangeValueCorruptor.java  |   2 +-
 .../harry/corruptor/QueryResponseCorruptor.java|  16 +-
 harry-core/src/harry/data/ResultSetRow.java|  37 +-
 harry-core/src/harry/ddl/ColumnSpec.java   |  16 +
 harry-core/src/harry/ddl/SchemaGenerators.java |  44 ++-
 harry-core/src/harry/ddl/SchemaSpec.java   |   8 +-
 harry-core/src/harry/dsl/HistoryBuilder.java   |   5 +
 harry-core/src/harry/generators/Bijections.java|  35 +-
 .../src/harry/generators/DataGenerators.java   |   2 +
 harry-core/src/harry/generators/PCGFastPure.java   |   2 +-
 harry-core/src/harry/generators/RngUtils.java  |  12 +
 .../harry/model/AlwaysSamePartitionSelector.java   |   5 +
 harry-core/src/harry/model/OpSelectors.java|  76 +++-
 .../src/harry/model/QueryingNoOpValidator.java |  21 +-
 harry-core/src/harry/model/QuiescentChecker.java   | 131 +--
 .../model/QuiescentLocalStateCheckerBase.java  | 110 ++
 .../harry/model/RepairingLocalStateValidator.java  |  93 +
 harry-core/src/harry/model/SelectHelper.java   | 144 ++-
 harry-core/src/harry/model/clock/OffsetClock.java  |  17 +-
 .../src/harry/model/sut/SystemUnderTest.java   |  12 +-
 .../src/harry/model/sut/TokenPlacementModel.java   | 218 +++
 .../sut/injvm}/InJVMTokenAwareVisitExecutor.java   |  85 +++-
 .../src/harry/model/sut/injvm/InJvmSut.java|  19 +-
 .../src/harry/model/sut/injvm}/InJvmSutBase.java   |  74 ++--
 .../model/sut/injvm/MixedVersionInJvmSut.java  |  74 
 .../sut/injvm/QuiescentLocalStateChecker.java  |  76 
 harry-core/src/harry/operations/Query.java | 233 ++-
 .../src/harry/operations/QueryGenerator.java   | 241 ++--
 .../src/harry/reconciler/PartitionState.java   | 266 +
 harry-core/src/harry/reconciler/Reconciler.java| 272 ++---
 harry-core/src/harry/runner/DataTracker.java   |  69 ++--
 .../src/harry/runner/DefaultDataTracker.java   | 146 ---
 harry-core/src/harry/runner/HarryRunner.java   |  58 +--
 .../src/harry/runner/LockingDataTracker.java   | 257 +
 harry-core/src/harry/runner/Runner.java| 426 -
 harry-core/src/harry/runner/StagedRunner.java  | 133 +--
 .../src/harry/runner/TrivialShrinker.java  |   4 +-
 harr

[cassandra-harry] 09/09: Implement parsing schema provider

2023-03-14 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-harry.git

commit 2b7563f40317b5d232af1a2d97e62aacc9b135a9
Author: Alex Petrov 
AuthorDate: Fri Mar 10 13:00:39 2023 +0100

Implement parsing schema provider

Patch by Alex Petrov; reviewed by Abe Ratnofsky for CASSANDRA-18318
---
 .../model/sut/external/ExternalClusterSut.java |  5 ++
 .../src/harry/schema/ParsingSchemaProvider.java| 69 
 .../src/harry/schema/SchemaHelper.java | 91 ++
 3 files changed, 165 insertions(+)

diff --git 
a/harry-integration-external/src/harry/model/sut/external/ExternalClusterSut.java
 
b/harry-integration-external/src/harry/model/sut/external/ExternalClusterSut.java
index ae2808c..d141be1 100644
--- 
a/harry-integration-external/src/harry/model/sut/external/ExternalClusterSut.java
+++ 
b/harry-integration-external/src/harry/model/sut/external/ExternalClusterSut.java
@@ -62,6 +62,11 @@ public class ExternalClusterSut implements SystemUnderTest
 return session;
 }
 
+public Metadata metadata()
+{
+return this.session.getCluster().getMetadata();
+}
+
 public static ExternalClusterSut create(ExternalSutConfiguration config)
 {
 // TODO: close Cluster and Session!
diff --git 
a/harry-integration-external/src/harry/schema/ParsingSchemaProvider.java 
b/harry-integration-external/src/harry/schema/ParsingSchemaProvider.java
new file mode 100644
index 000..0661f6f
--- /dev/null
+++ b/harry-integration-external/src/harry/schema/ParsingSchemaProvider.java
@@ -0,0 +1,69 @@
+/*
+ *  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 harry.schema;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import harry.core.Configuration;
+import harry.ddl.SchemaSpec;
+import harry.model.sut.SystemUnderTest;
+import harry.model.sut.external.ExternalClusterSut;
+
+@JsonTypeName("parsing")
+public class ParsingSchemaProvider implements 
Configuration.SchemaProviderConfiguration
+{
+private static final Logger logger = 
LoggerFactory.getLogger(ParsingSchemaProvider.class);
+
+public static void init()
+{
+Configuration.registerSubtypes(ParsingSchemaProvider.class);
+}
+
+public final String keyspace;
+public final String table;
+public final String ddl;
+public final boolean ignore_unknown_types;
+
+@JsonCreator
+public ParsingSchemaProvider(@JsonProperty("keyspace") String keyspace,
+ @JsonProperty("table") String table,
+ @JsonProperty("ddl") String ddl,
+ @JsonProperty("ignore_unknown_types") Boolean 
ignoreUnknown)
+{
+this.keyspace = keyspace;
+this.table = table;
+this.ddl = ddl;
+this.ignore_unknown_types = ignoreUnknown != null && ignoreUnknown;
+}
+public SchemaSpec make(long seed, SystemUnderTest sut)
+{
+assert sut instanceof ExternalClusterSut;
+if (ddl != null)
+sut.schemaChange(ddl);
+
+ExternalClusterSut externalSut = (ExternalClusterSut) sut;
+SchemaSpec schemaSpec = 
SchemaHelper.createSchemaSpec(externalSut.metadata(), keyspace, table, 
ignore_unknown_types);
+logger.info("Using schema: " + schemaSpec.compile().cql());
+return schemaSpec;
+}
+}
diff --git a/harry-integration-external/src/harry/schema/SchemaHelper.java 
b/harry-integration-external/src/harry/schema/SchemaHelper.java
new file mode 100644
index 000..24ad5a8
--- /dev/null
+++ b/harry-integration-external/src/harry/schema/SchemaHelper.java
@@ -0,0 +1,91 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional infor

[cassandra-harry] 08/09: Trigger exception if we run out of partitions

2023-03-14 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-harry.git

commit 6ae22097767359a27ed33f6b1fcca79be99c3f39
Author: Alex Petrov 
AuthorDate: Mon Mar 13 10:57:51 2023 +0100

Trigger exception if we run out of partitions

Patch by Alex Petrov; reviewed by Abe Ratnofsky for CASSANDRA-18315
---
 harry-core/src/harry/core/Configuration.java   | 15 +++-
 harry-core/src/harry/model/OpSelectors.java| 47 ---
 .../src/harry/visitors/CorruptingVisitor.java  |  5 +-
 .../harry/visitors/ParallelRecentValidator.java|  8 +-
 harry-core/src/harry/visitors/Sampler.java |  2 +-
 harry-core/test/harry/model/OpSelectorsTest.java   | 93 +++---
 .../test/harry/model/IntegrationTestBase.java  |  2 +-
 7 files changed, 104 insertions(+), 68 deletions(-)

diff --git a/harry-core/src/harry/core/Configuration.java 
b/harry-core/src/harry/core/Configuration.java
index 9427c89..e1fb52b 100644
--- a/harry-core/src/harry/core/Configuration.java
+++ b/harry-core/src/harry/core/Configuration.java
@@ -283,7 +283,7 @@ public class Configuration
 DataTrackerConfiguration data_tracker = new 
DefaultDataTrackerConfiguration();
 RunnerConfiguration runner;
 SutConfiguration system_under_test;
-PDSelectorConfiguration partition_descriptor_selector = new 
Configuration.DefaultPDSelectorConfiguration(10, 100, 0);
+PDSelectorConfiguration partition_descriptor_selector = new 
Configuration.DefaultPDSelectorConfiguration(10, 100);
 CDSelectorConfiguration clustering_descriptor_selector; // TODO: 
sensible default value
 
 public ConfigurationBuilder setSeed(long seed)
@@ -710,6 +710,7 @@ public class Configuration
 public final int window_size;
 public final int slide_after_repeats;
 public final long position_offset;
+public final long position_window_size;
 
 @Deprecated
 public DefaultPDSelectorConfiguration(int window_size,
@@ -718,21 +719,27 @@ public class Configuration
 this.window_size = window_size;
 this.slide_after_repeats = slide_after_repeats;
 this.position_offset = 0L;
+this.position_window_size = Long.MAX_VALUE;
 }
 
 @JsonCreator
 public DefaultPDSelectorConfiguration(@JsonProperty(value = 
"window_size", defaultValue = "10") int window_size,
   @JsonProperty(value = 
"slide_after_repeats", defaultValue = "100") int slide_after_repeats,
-  @JsonProperty(value = 
"position_offset", defaultValue = "0") long position_offset)
+  @JsonProperty(value = 
"position_offset") Long position_offset,
+  @JsonProperty(value = 
"position_window_size") Long position_window_size)
 {
 this.window_size = window_size;
 this.slide_after_repeats = slide_after_repeats;
-this.position_offset = position_offset;
+this.position_offset = position_offset == null ? 0 : 
position_offset;
+if (position_window_size == null)
+this.position_window_size = Long.MAX_VALUE - 
this.position_offset;
+else
+this.position_window_size = position_window_size;
 }
 
 public OpSelectors.PdSelector make(OpSelectors.Rng rng)
 {
-return new OpSelectors.DefaultPdSelector(rng, window_size, 
slide_after_repeats, position_offset);
+return new OpSelectors.DefaultPdSelector(rng, window_size, 
slide_after_repeats, position_offset, position_window_size);
 }
 }
 
diff --git a/harry-core/src/harry/model/OpSelectors.java 
b/harry-core/src/harry/model/OpSelectors.java
index cbbdeca..c15a172 100644
--- a/harry-core/src/harry/model/OpSelectors.java
+++ b/harry-core/src/harry/model/OpSelectors.java
@@ -119,9 +119,6 @@ public interface OpSelectors
 public abstract long minLtsAt(long position);
 
 public abstract long minLtsFor(long pd);
-
-// TODO: right now, we can only calculate a position for 64-bit (in 
other words, full entropy) pds
-public abstract long positionFor(long lts);
 public abstract long maxPosition(long maxLts);
 }
 
@@ -274,24 +271,26 @@ public interface OpSelectors
 private final long windowSize;
 
 private final long positionOffset;
+private final long positionWindowSize;
 
 public DefaultPdSelector(OpSelectors.Rng rng, long windowSize, long 
slideAfterRepeats)
 {
-this(rng, windowSize, slideAfterRepeats, 0L);
+this(rng, windowSize, slideAfterRepeats, 0L, Long.MAX_VALUE);
 

[cassandra-harry] 02/09: Pull in Cassandra concurrent utils until there is a common shared library

2023-03-14 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-harry.git

commit 6ed308d6a814826be145f6ba30304ea474bf263e
Author: Alex Petrov 
AuthorDate: Thu Mar 9 17:13:18 2023 +0100

Pull in Cassandra concurrent utils until there is a common shared library

Patch by Alex Petrov; reviewed by Caleb Rackliffe and Abe Ratnofsky for 
CASSANDRA-18315
---
 harry-core/src/harry/concurrent/Awaitable.java | 399 +
 harry-core/src/harry/concurrent/Clock.java | 103 ++
 harry-core/src/harry/concurrent/Condition.java |  99 +
 .../src/harry/concurrent/CountDownLatch.java   | 107 ++
 .../src/harry/concurrent/ExecutorFactory.java  | 155 
 .../src/harry/concurrent/InfiniteLoopExecutor.java | 178 +
 harry-core/src/harry/concurrent/Interruptible.java |  50 +++
 .../src/harry/concurrent/NamedThreadFactory.java   | 195 ++
 harry-core/src/harry/concurrent/Shutdownable.java  |  44 +++
 .../concurrent/UncheckedInterruptedException.java  |  35 ++
 harry-core/src/harry/concurrent/WaitQueue.java | 390 
 11 files changed, 1755 insertions(+)

diff --git a/harry-core/src/harry/concurrent/Awaitable.java 
b/harry-core/src/harry/concurrent/Awaitable.java
new file mode 100644
index 000..3781e78
--- /dev/null
+++ b/harry-core/src/harry/concurrent/Awaitable.java
@@ -0,0 +1,399 @@
+/*
+ *  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 harry.concurrent;
+
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicReferenceFieldUpdater;
+import java.util.function.Predicate;
+
+import static harry.concurrent.Clock.Global.nanoTime;
+import static harry.concurrent.WaitQueue.newWaitQueue;
+
+/**
+ * A generic signal consumer, supporting all of the typical patterns used in 
Cassandra.
+ * All of the methods defined in {@link Awaitable} may be waited on without a 
loop,
+ * as this interface declares that there are no spurious wake-ups.
+ *
+ * This class was borrowed from Apache Cassandra, 
org.cassandra.utils.concurrent, until there's a shared concurrency lib.
+ */
+public interface Awaitable
+{
+/**
+ * Await until the deadline (in nanoTime), throwing any interrupt.
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the deadline elapsed
+ * @throws InterruptedException if interrupted
+ */
+boolean awaitUntil(long nanoTimeDeadline) throws InterruptedException;
+
+/**
+ * Await until the deadline (in nanoTime), throwing any interrupt as an 
unchecked exception.
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the deadline elapsed
+ * @throws UncheckedInterruptedException if interrupted
+ */
+boolean awaitUntilThrowUncheckedOnInterrupt(long nanoTimeDeadline) throws 
UncheckedInterruptedException;
+
+/**
+ * Await until the deadline (in nanoTime), ignoring interrupts (but 
maintaining the interrupt flag on exit).
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the deadline elapsed
+ */
+boolean awaitUntilUninterruptibly(long nanoTimeDeadline);
+
+/**
+ * Await for the specified period, throwing any interrupt.
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the timeout elapses
+ * @throws InterruptedException if interrupted
+ */
+boolean await(long time, TimeUnit units) throws InterruptedException;
+
+/**
+ * Await for the specified period, throwing any interrupt as an unchecked 
exception.
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the timeout elapses
+ * @throws UncheckedInterruptedException if interrupted
+ */
+boolean awaitThrowUncheckedOnInterrupt(long time, TimeUnit units) throws 
UncheckedInterruptedException;
+
+/**
+ * Await until the deadline (in nanoTime), ignoring interrupts (but 
maintaining the interrupt flag on exit).
+ * No spurious wakeups.
+ * @return true if we were signalled, false if the timeout elapses
+

[cassandra-harry] 07/09: Minor API improvements

2023-03-14 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-harry.git

commit 8a3748c29048b8005dab098ad031b8f75efd942e
Author: Alex Petrov 
AuthorDate: Tue Mar 14 13:08:04 2023 +0100

Minor API improvements

Patch by Alex Petrov; reviewed by Abe Ratnofsky for CASSANDRA-18315
---
 conf/default.yaml  |  3 -
 conf/external.yaml |  3 -
 harry-core/src/harry/core/Configuration.java   | 79 --
 .../harry/model/RepairingLocalStateValidator.java  | 43 +-
 harry-core/src/harry/runner/Runner.java|  4 -
 .../src/harry/visitors/AllPartitionsValidator.java | 44 +-
 .../src/harry/visitors/CorruptingVisitor.java  |  3 +-
 .../harry/visitors/ParallelRecentValidator.java| 55 +++-
 .../src/harry/visitors/ParallelValidator.java  | 24 ++
 harry-core/src/harry/visitors/QueryLogger.java | 97 ++
 .../harry/visitors/RandomPartitionValidator.java   | 10 +--
 harry-core/src/harry/visitors/RandomValidator.java | 71 +---
 harry-core/src/harry/visitors/RecentValidator.java | 48 ++-
 harry-core/src/harry/visitors/Sampler.java | 56 +
 .../src/harry/runner/external/MiniStress.java  |  5 +-
 .../ConcurrentQuiescentCheckerIntegrationTest.java |  3 +-
 .../harry/model/InJVMTokenAwareExecutorTest.java   |  2 +-
 .../model/QuiescentCheckerIntegrationTest.java |  7 +-
 .../QuiescentLocalStateCheckerIntegrationTest.java |  2 +-
 19 files changed, 273 insertions(+), 286 deletions(-)

diff --git a/conf/default.yaml b/conf/default.yaml
index a004747..4a20782 100644
--- a/conf/default.yaml
+++ b/conf/default.yaml
@@ -87,18 +87,15 @@ runner:
   row_visitor:
 mutating: {}
   - sampler:
-  trigger_after: 1000
   sample_partitions: 10
   - parallel_validate_recent_partitions:
   partition_count: 100
   queries_per_partition: 2
   concurrency: 20
-  trigger_after: 1
   model:
 quiescent_checker: {}
   - validate_all_partitions:
   concurrency: 20
-  trigger_after: 10
   model:
 quiescent_checker: {}
 
diff --git a/conf/external.yaml b/conf/external.yaml
index b75547e..ae5fda2 100644
--- a/conf/external.yaml
+++ b/conf/external.yaml
@@ -109,18 +109,15 @@ runner:
   row_visitor:
 mutating: {}
   - sampler:
-  trigger_after: 1000
   sample_partitions: 10
   - parallel_validate_recent_partitions:
   partition_count: 100
   queries_per_partition: 2
   concurrency: 20
-  trigger_after: 1
   model:
 quiescent_checker: {}
   - validate_all_partitions:
   concurrency: 20
-  trigger_after: 10
   model:
 quiescent_checker: {}
 
diff --git a/harry-core/src/harry/core/Configuration.java 
b/harry-core/src/harry/core/Configuration.java
index 0c0e3f5..9427c89 100644
--- a/harry-core/src/harry/core/Configuration.java
+++ b/harry-core/src/harry/core/Configuration.java
@@ -34,7 +34,6 @@ import java.util.Objects;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Consumer;
-import java.util.stream.Collectors;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
@@ -53,17 +52,9 @@ import harry.model.QuiescentChecker;
 import harry.model.clock.ApproximateMonotonicClock;
 import harry.model.sut.SystemUnderTest;
 import harry.runner.LockingDataTracker;
-import harry.visitors.AllPartitionsValidator;
-import harry.visitors.CorruptingVisitor;
+import harry.visitors.*;
 import harry.runner.DataTracker;
 import harry.runner.DefaultDataTracker;
-import harry.visitors.LoggingVisitor;
-import harry.visitors.MutatingVisitor;
-import harry.visitors.MutatingRowVisitor;
-import harry.visitors.OperationExecutor;
-import harry.visitors.RecentValidator;
-import harry.visitors.Visitor;
-import harry.visitors.RandomValidator;
 import harry.runner.Runner;
 import harry.util.BitSet;
 import org.reflections.Reflections;
@@ -500,8 +491,6 @@ public class Configuration
 }
 }
 
-
-
 @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = 
JsonTypeInfo.As.WRAPPER_OBJECT)
 public interface ClockConfiguration extends 
OpSelectors.MonotonicClockFactory
 {
@@ -1054,24 +1043,22 @@ public class Configuration
 public static class AllPartitionsValidatorConfiguration implements 
VisitorConfiguration
 {
 public final int concurrency;
-public final int trigger_after;
-
-@JsonProperty("model")
-public final Configuration.ModelConfiguration modelConfiguration;
+public final QueryLoggerConfiguration query_logger;
+pu

[cassandra-harry] 03/09: Pull in token util from Cassandra to avoid circular dependency

2023-03-14 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-harry.git

commit 6e0b450d9df3596d2eb79bfca92edd434cca7035
Author: Alex Petrov 
AuthorDate: Thu Mar 9 17:17:41 2023 +0100

Pull in token util from Cassandra to avoid circular dependency

Patch by Alex Petrov; reviewed by Caleb Rackliffe and Abe Ratnofsky for 
CASSANDRA-18315
---
 harry-core/src/harry/util/TokenUtil.java | 150 +++
 1 file changed, 150 insertions(+)

diff --git a/harry-core/src/harry/util/TokenUtil.java 
b/harry-core/src/harry/util/TokenUtil.java
new file mode 100644
index 000..db210b6
--- /dev/null
+++ b/harry-core/src/harry/util/TokenUtil.java
@@ -0,0 +1,150 @@
+/*
+ *  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 harry.util;
+
+import java.nio.ByteBuffer;
+
+/**
+ * Copied verbatim from Apache Cassandra codebase to avoid having a dependency 
on Cassandra.
+ */
+public class TokenUtil
+{
+public static long token(ByteBuffer key)
+{
+if (key.remaining() == 0)
+return Long.MIN_VALUE;
+
+return normalize(getHash(key)[0]);
+}
+
+private static long normalize(long v)
+{
+// We exclude the MINIMUM value; see getToken()
+return v == Long.MIN_VALUE ? Long.MAX_VALUE : v;
+}
+
+private static long[] getHash(ByteBuffer key)
+{
+long[] hash = new long[2];
+hash3_x64_128(key, key.position(), key.remaining(), 0, hash);
+return hash;
+}
+
+public static void hash3_x64_128(ByteBuffer key, int offset, int length, 
long seed, long[] result)
+{
+final int nblocks = length >> 4; // Process as 128-bit blocks.
+
+long h1 = seed;
+long h2 = seed;
+
+long c1 = 0x87c37b91114253d5L;
+long c2 = 0x4cf5ad432745937fL;
+
+//--
+// body
+
+for(int i = 0; i < nblocks; i++)
+{
+long k1 = getBlock(key, offset, i * 2 + 0);
+long k2 = getBlock(key, offset, i * 2 + 1);
+
+k1 *= c1; k1 = rotl64(k1,31); k1 *= c2; h1 ^= k1;
+
+h1 = rotl64(h1,27); h1 += h2; h1 = h1*5+0x52dce729;
+
+k2 *= c2; k2  = rotl64(k2,33); k2 *= c1; h2 ^= k2;
+
+h2 = rotl64(h2,31); h2 += h1; h2 = h2*5+0x38495ab5;
+}
+
+//--
+// tail
+
+// Advance offset to the unprocessed tail of the data.
+offset += nblocks * 16;
+
+long k1 = 0;
+long k2 = 0;
+
+switch(length & 15)
+{
+case 15: k2 ^= ((long) key.get(offset+14)) << 48;
+case 14: k2 ^= ((long) key.get(offset+13)) << 40;
+case 13: k2 ^= ((long) key.get(offset+12)) << 32;
+case 12: k2 ^= ((long) key.get(offset+11)) << 24;
+case 11: k2 ^= ((long) key.get(offset+10)) << 16;
+case 10: k2 ^= ((long) key.get(offset+9)) << 8;
+case  9: k2 ^= ((long) key.get(offset+8)) << 0;
+k2 *= c2; k2  = rotl64(k2,33); k2 *= c1; h2 ^= k2;
+
+case  8: k1 ^= ((long) key.get(offset+7)) << 56;
+case  7: k1 ^= ((long) key.get(offset+6)) << 48;
+case  6: k1 ^= ((long) key.get(offset+5)) << 40;
+case  5: k1 ^= ((long) key.get(offset+4)) << 32;
+case  4: k1 ^= ((long) key.get(offset+3)) << 24;
+case  3: k1 ^= ((long) key.get(offset+2)) << 16;
+case  2: k1 ^= ((long) key.get(offset+1)) << 8;
+case  1: k1 ^= ((long) key.get(offset));
+k1 *= c1; k1  = rotl64(k1,31); k1 *= c2; h1 ^= k1;
+};
+
+//--
+// finalization
+
+h1 ^= length; h2 ^= length;
+
+h1 += h2;
+h2 += h1;
+
+h1 = fmix(h1);
+h2 = fmix(h2);
+
+h1 += h2;
+h2 += h1;
+
+result[0] = h1;
+result[1] = h2;
+}
+
+protected static long getBlock(ByteBuffer key, int offset, int index)
+{
+int i_8 = index <&l

[cassandra-harry] 01/09: Improvements:

2023-03-14 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-harry.git

commit d4ecaf80e69ea3bd3d8a9538ae3f70851997b6cf
Author: Abe Ratnofsky 
AuthorDate: Mon Oct 17 12:54:44 2022 +0200

Improvements:

  * formatting
  * thread shutdown on failed run creation
  * idempotent query execution
  * retry delay

Patch by Abe Ratnofsky; reviewed by Alex Petrov for CASSANDRA-18315.
---
 harry-core/src/harry/core/Configuration.java   | 56 ++
 harry-core/src/harry/ddl/ColumnSpec.java   | 16 +++
 harry-core/src/harry/ddl/SchemaGenerators.java | 41 ++--
 harry-core/src/harry/generators/Bijections.java| 35 +-
 harry-core/src/harry/generators/PCGFastPure.java   |  2 +-
 harry-core/src/harry/model/SelectHelper.java   |  2 +-
 .../src/harry/model/sut/SystemUnderTest.java   | 12 -
 harry-core/src/harry/runner/HarryRunner.java   |  6 +++
 harry-core/src/harry/runner/Runner.java|  9 +++-
 harry-core/src/harry/visitors/MutatingVisitor.java |  6 ++-
 .../harry/visitors/ParallelRecentValidator.java|  4 +-
 harry-core/src/harry/visitors/RecentValidator.java |  2 +-
 12 files changed, 145 insertions(+), 46 deletions(-)

diff --git a/harry-core/src/harry/core/Configuration.java 
b/harry-core/src/harry/core/Configuration.java
index 3545e18..7cd8f72 100644
--- a/harry-core/src/harry/core/Configuration.java
+++ b/harry-core/src/harry/core/Configuration.java
@@ -65,6 +65,8 @@ public class Configuration
 {
 private static final ObjectMapper mapper;
 
+private static final String DEFAULT_KEYSPACE = "harry";
+
 static
 {
 mapper = new ObjectMapper(new YAMLFactory()
@@ -220,34 +222,46 @@ public class Configuration
 
 public static Run createRun(Configuration snapshot)
 {
-validate(snapshot);
+SystemUnderTest sut = null;
+try
+{
+validate(snapshot);
 
-long seed = snapshot.seed;
+long seed = snapshot.seed;
 
-DataTracker tracker = snapshot.data_tracker == null ? new 
DefaultDataTrackerConfiguration().make() : snapshot.data_tracker.make();
-OpSelectors.Rng rng = new OpSelectors.PCGFast(seed);
+DataTracker tracker = snapshot.data_tracker == null ? new 
DefaultDataTrackerConfiguration().make() : snapshot.data_tracker.make();
+OpSelectors.Rng rng = new OpSelectors.PCGFast(seed);
 
-OpSelectors.MonotonicClock clock = snapshot.clock.make();
+OpSelectors.MonotonicClock clock = snapshot.clock.make();
 
-MetricReporter metricReporter = snapshot.metric_reporter.make();
+MetricReporter metricReporter = snapshot.metric_reporter.make();
 
-// TODO: validate that operation kind is compatible with schema, due 
to statics etc
-SystemUnderTest sut = snapshot.system_under_test.make();
+// TODO: validate that operation kind is compatible with schema, 
due to statics etc
+sut = snapshot.system_under_test.make();
 
-SchemaSpec schemaSpec = snapshot.schema_provider.make(seed, sut);
-schemaSpec.validate();
+SchemaSpec schemaSpec = snapshot.schema_provider.make(seed, sut);
+schemaSpec.validate();
 
-OpSelectors.PdSelector pdSelector = 
snapshot.partition_descriptor_selector.make(rng);
-OpSelectors.DescriptorSelector descriptorSelector = 
snapshot.clustering_descriptor_selector.make(rng, schemaSpec);
+OpSelectors.PdSelector pdSelector = 
snapshot.partition_descriptor_selector.make(rng);
+OpSelectors.DescriptorSelector descriptorSelector = 
snapshot.clustering_descriptor_selector.make(rng, schemaSpec);
 
-return new Run(rng,
-   clock,
-   pdSelector,
-   descriptorSelector,
-   schemaSpec,
-   tracker,
-   sut,
-   metricReporter);
+return new Run(rng,
+   clock,
+   pdSelector,
+   descriptorSelector,
+   schemaSpec,
+   tracker,
+   sut,
+   metricReporter);
+}
+catch (Throwable t)
+{
+// Make sure to shut down all SUT threads if it has been started
+if (sut != null) {
+sut.shutdown();
+}
+throw t;
+}
 }
 
 public static Runner createRunner(Configuration config)
@@ -1058,7 +1072,7 @@ public class Configuration
 {
 public SchemaSpec make(long seed, SystemUnderTest sut)
 {
-return SchemaGenerators.defaultSchemaSpecGen("harry", "tab

[cassandra-harry] 05/09: Make it possible to run multiple Harry runners concurrently against the same keyspace

2023-03-14 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-harry.git

commit c0e749ee4f00d20df44cc9a243dac3e747bdd601
Author: Alex Petrov 
AuthorDate: Thu Mar 9 17:28:44 2023 +0100

Make it possible to run multiple Harry runners concurrently against the 
same keyspace

Patch by Alex Petrov; reviewed by Abe Ratnofsky for CASSANDRA-18315
---
 harry-core/src/harry/core/Configuration.java   | 51 +++---
 harry-core/src/harry/generators/RngUtils.java  | 12 +
 harry-core/src/harry/model/OpSelectors.java| 19 +--
 harry-core/src/harry/runner/Runner.java|  5 ++
 .../{RecentValidator.java => RandomValidator.java} | 62 +++---
 harry-core/src/harry/visitors/RecentValidator.java | 26 ++---
 .../test/harry/model/IntegrationTestBase.java  |  2 +-
 .../model/QuiescentCheckerIntegrationTest.java |  4 +-
 8 files changed, 102 insertions(+), 79 deletions(-)

diff --git a/harry-core/src/harry/core/Configuration.java 
b/harry-core/src/harry/core/Configuration.java
index 88474b9..0c0e3f5 100644
--- a/harry-core/src/harry/core/Configuration.java
+++ b/harry-core/src/harry/core/Configuration.java
@@ -61,8 +61,9 @@ import harry.visitors.LoggingVisitor;
 import harry.visitors.MutatingVisitor;
 import harry.visitors.MutatingRowVisitor;
 import harry.visitors.OperationExecutor;
-import harry.visitors.Visitor;
 import harry.visitors.RecentValidator;
+import harry.visitors.Visitor;
+import harry.visitors.RandomValidator;
 import harry.runner.Runner;
 import harry.util.BitSet;
 import org.reflections.Reflections;
@@ -291,7 +292,7 @@ public class Configuration
 DataTrackerConfiguration data_tracker = new 
DefaultDataTrackerConfiguration();
 RunnerConfiguration runner;
 SutConfiguration system_under_test;
-PDSelectorConfiguration partition_descriptor_selector = new 
Configuration.DefaultPDSelectorConfiguration(10, 100);
+PDSelectorConfiguration partition_descriptor_selector = new 
Configuration.DefaultPDSelectorConfiguration(10, 100, 0);
 CDSelectorConfiguration clustering_descriptor_selector; // TODO: 
sensible default value
 
 public ConfigurationBuilder setSeed(long seed)
@@ -719,18 +720,30 @@ public class Configuration
 {
 public final int window_size;
 public final int slide_after_repeats;
+public final long position_offset;
+
+@Deprecated
+public DefaultPDSelectorConfiguration(int window_size,
+  int slide_after_repeats)
+{
+this.window_size = window_size;
+this.slide_after_repeats = slide_after_repeats;
+this.position_offset = 0L;
+}
 
 @JsonCreator
 public DefaultPDSelectorConfiguration(@JsonProperty(value = 
"window_size", defaultValue = "10") int window_size,
-  @JsonProperty(value = 
"slide_after_repeats", defaultValue = "100") int slide_after_repeats)
+  @JsonProperty(value = 
"slide_after_repeats", defaultValue = "100") int slide_after_repeats,
+  @JsonProperty(value = 
"position_offset", defaultValue = "0") long position_offset)
 {
 this.window_size = window_size;
 this.slide_after_repeats = slide_after_repeats;
+this.position_offset = position_offset;
 }
 
 public OpSelectors.PdSelector make(OpSelectors.Rng rng)
 {
-return new OpSelectors.DefaultPdSelector(rng, window_size, 
slide_after_repeats);
+return new OpSelectors.DefaultPdSelector(rng, window_size, 
slide_after_repeats, position_offset);
 }
 }
 
@@ -1083,27 +1096,49 @@ public class Configuration
 public static class RecentPartitionsValidatorConfiguration implements 
VisitorConfiguration
 {
 public final int partition_count;
-public final int trigger_after;
 public final int queries;
 public final Configuration.ModelConfiguration modelConfiguration;
 
 // TODO: make query selector configurable
 @JsonCreator
 public 
RecentPartitionsValidatorConfiguration(@JsonProperty("partition_count") int 
partition_count,
-  
@JsonProperty("trigger_after") int trigger_after,
   
@JsonProperty("queries_per_partition") int queries,
   @JsonProperty("model") 
Configuration.ModelConfiguration model)
 {
 this.partition_count = partition_count;
 this.queries = queries;
-  

  1   2   3   4   5   6   7   8   9   >