You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by mc...@apache.org on 2022/12/18 02:35:04 UTC

[cassandra] branch cassandra-4.1 updated (af5029d643 -> f869a2bb59)

This is an automated email from the ASF dual-hosted git repository.

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


    from af5029d643 Increment versions to 4.1.1
     new f01d2b4a3c Restore custom param types over messaging system
     new f869a2bb59 Merge branch 'cassandra-4.0' into cassandra-4.1

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:
 CHANGES.txt                                        |  1 +
 .../cassandra/net/CustomParamsSerializer.java      | 73 ++++++++++++++++++++++
 src/java/org/apache/cassandra/net/Message.java     | 17 +++++
 src/java/org/apache/cassandra/net/ParamType.java   |  5 +-
 .../org/apache/cassandra/utils/ByteArrayUtil.java  | 24 +++++++
 .../unit/org/apache/cassandra/net/MessageTest.java | 35 +++++++++++
 6 files changed, 154 insertions(+), 1 deletion(-)
 create mode 100644 src/java/org/apache/cassandra/net/CustomParamsSerializer.java


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


[cassandra] 01/01: Merge branch 'cassandra-4.0' into cassandra-4.1

Posted by mc...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit f869a2bb59ee8267ac7470f1df6d6351e3f21a69
Merge: af5029d643 f01d2b4a3c
Author: Mick Semb Wever <mc...@apache.org>
AuthorDate: Sat Dec 17 15:49:18 2022 -0800

    Merge branch 'cassandra-4.0' into cassandra-4.1
    
    * cassandra-4.0:
      Restore custom param types over messaging system

 CHANGES.txt                                        |  1 +
 .../cassandra/net/CustomParamsSerializer.java      | 73 ++++++++++++++++++++++
 src/java/org/apache/cassandra/net/Message.java     | 17 +++++
 src/java/org/apache/cassandra/net/ParamType.java   |  5 +-
 .../org/apache/cassandra/utils/ByteArrayUtil.java  | 24 +++++++
 .../unit/org/apache/cassandra/net/MessageTest.java | 35 +++++++++++
 6 files changed, 154 insertions(+), 1 deletion(-)

diff --cc CHANGES.txt
index 2721964b2a,fee031d8f5..f87e2f435e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,13 -1,11 +1,14 @@@
 -4.0.8
 +4.1.1
 +Merged from 4.0:
+  * Restore internode custom tracing on 4.0's new messaging system (CASSANDRA-17981)
 - * Harden parsing of boolean values in CQL in PropertyDefinitions (CASSANDRA-17878)
 - * Fix error message about type hints (CASSANDRA-17915)
 - * Fix possible race condition on repair snapshots (CASSANDRA-17955)
 - * Fix ASM bytecode version inconsistency (CASSANDRA-17873)
  Merged from 3.11:
 - * Fix Splitter sometimes creating more splits than requested (CASSANDRA-18013)
 +Merged from 3.0:
 +
 +
 +4.1.0
 + * Fix ContentionStrategy backoff and Clock.waitUntil (CASSANDRA-18086)
 +Merged from 4.0:
 +Merged from 3.11:
  Merged from 3.0:
   * Fix incorrect resource name in LIST PERMISSION output (CASSANDRA-17848)
   * Suppress CVE-2022-41854 and similar (CASSANDRA-18083)
diff --cc src/java/org/apache/cassandra/net/Message.java
index 472c5aacde,bc176bdb86..09e4ba3c93
--- a/src/java/org/apache/cassandra/net/Message.java
+++ b/src/java/org/apache/cassandra/net/Message.java
@@@ -21,7 -21,9 +21,8 @@@ import java.io.IOException
  import java.nio.ByteBuffer;
  import java.util.Collections;
  import java.util.EnumMap;
+ import java.util.HashMap;
  import java.util.Map;
 -import java.util.UUID;
  import java.util.concurrent.TimeUnit;
  import java.util.concurrent.atomic.AtomicInteger;
  
@@@ -496,10 -427,11 +498,16 @@@ public class Message<T
              return (TraceType) params.getOrDefault(ParamType.TRACE_TYPE, TraceType.QUERY);
          }
  
 +        public Map<ParamType, Object> params()
 +        {
 +            return Collections.unmodifiableMap(params);
 +        }
++
+         @Nullable
+         public Map<String,byte[]> customParams()
+         {
+             return (Map<String,byte[]>) params.get(ParamType.CUSTOM_MAP);
+         }
      }
  
      @SuppressWarnings("WeakerAccess")
diff --cc src/java/org/apache/cassandra/net/ParamType.java
index 2f661d2b68,007605b260..37f4bf8aed
--- a/src/java/org/apache/cassandra/net/ParamType.java
+++ b/src/java/org/apache/cassandra/net/ParamType.java
@@@ -24,11 -25,10 +24,12 @@@ import javax.annotation.Nullable
  import org.apache.cassandra.exceptions.RequestFailureReason;
  import org.apache.cassandra.io.IVersionedSerializer;
  import org.apache.cassandra.tracing.Tracing;
 -import org.apache.cassandra.utils.UUIDSerializer;
 +import org.apache.cassandra.utils.Int32Serializer;
 +import org.apache.cassandra.utils.Int64Serializer;
 +import org.apache.cassandra.utils.TimeUUID;
  
  import static java.lang.Math.max;
+ 
  import static org.apache.cassandra.locator.InetAddressAndPort.FwdFrmSerializer.fwdFrmSerializer;
  
  /**
@@@ -57,12 -57,7 +58,14 @@@ public enum ParamTyp
      @Deprecated
      TRACK_REPAIRED_DATA (7, "TrackRepaired", LegacyFlag.serializer),
  
 +    TOMBSTONE_FAIL(8, "TSF", Int32Serializer.serializer),
 +    TOMBSTONE_WARNING(9, "TSW", Int32Serializer.serializer),
 +    LOCAL_READ_SIZE_FAIL(10, "LRSF", Int64Serializer.serializer),
 +    LOCAL_READ_SIZE_WARN(11, "LRSW", Int64Serializer.serializer),
 +    ROW_INDEX_READ_SIZE_FAIL(12, "RIRSF", Int64Serializer.serializer),
-     ROW_INDEX_READ_SIZE_WARN(13, "RIRSW", Int64Serializer.serializer);
++    ROW_INDEX_READ_SIZE_WARN(13, "RIRSW", Int64Serializer.serializer),
++
+     CUSTOM_MAP          (14, "CUSTOM",       CustomParamsSerializer.serializer);
  
      final int id;
      @Deprecated final String legacyAlias; // pre-4.0 we used to serialize entire param name string
diff --cc test/unit/org/apache/cassandra/net/MessageTest.java
index 914b097fa9,d3f56177eb..3850bc4f03
--- a/test/unit/org/apache/cassandra/net/MessageTest.java
+++ b/test/unit/org/apache/cassandra/net/MessageTest.java
@@@ -19,6 -19,9 +19,8 @@@ package org.apache.cassandra.net
  
  import java.io.IOException;
  import java.nio.ByteBuffer;
+ import java.nio.charset.CharacterCodingException;
+ import java.nio.charset.StandardCharsets;
 -import java.util.UUID;
  import java.util.concurrent.TimeUnit;
  import java.util.stream.Stream;
  
@@@ -48,8 -51,8 +50,9 @@@ import static org.apache.cassandra.net.
  import static org.apache.cassandra.net.ParamType.RESPOND_TO;
  import static org.apache.cassandra.net.ParamType.TRACE_SESSION;
  import static org.apache.cassandra.net.ParamType.TRACE_TYPE;
 -import static org.apache.cassandra.utils.MonotonicClock.approxTime;
 +import static org.apache.cassandra.utils.MonotonicClock.Global.approxTime;
 +import static org.apache.cassandra.utils.TimeUUID.Generator.nextTimeUUID;
+ 
  import static org.junit.Assert.*;
  
  public class MessageTest


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