You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2022/03/23 14:29:30 UTC

[cassandra] branch cassandra-4.0 updated: Fix timestamp tz parsing

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

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


The following commit(s) were added to refs/heads/cassandra-4.0 by this push:
     new 4f5feac  Fix timestamp tz parsing
4f5feac is described below

commit 4f5feac0dffe2e8b4ae1cb32670e4902fab11ccc
Author: Brandon Williams <br...@apache.org>
AuthorDate: Tue Mar 22 16:51:28 2022 -0500

    Fix timestamp tz parsing
    
    Patch by brandonwilliams; reviewed by bereng for CASSANDRA-17467
---
 CHANGES.txt                                                          | 1 +
 src/java/org/apache/cassandra/serializers/TimestampSerializer.java   | 5 +++--
 .../org/apache/cassandra/serializers/TimestampSerializerTest.java    | 4 ++++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/CHANGES.txt b/CHANGES.txt
index 5b13f9b..1bdf518 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0.4
+ * Fix timestamp tz parsing (CASSANDRA-17467)
  * Suppress CVE-2021-44521 from driver (CASSANDRA-17459)
  * Upgrade jackson to 2.13.2 (CASSANDRA-17460)
  * Make sstableloader honour native port option (CASSANDRA-17210)
diff --git a/src/java/org/apache/cassandra/serializers/TimestampSerializer.java b/src/java/org/apache/cassandra/serializers/TimestampSerializer.java
index ab048d0..21cac66 100644
--- a/src/java/org/apache/cassandra/serializers/TimestampSerializer.java
+++ b/src/java/org/apache/cassandra/serializers/TimestampSerializer.java
@@ -53,9 +53,10 @@ public class TimestampSerializer extends TypeSerializer<Date>
         final String[] offsetFormats = new String[]
                                          {
                                          " z",
-                                         "X",
                                          " zzzz",
-                                         "XXX"
+                                         " X",
+                                         "X",
+                                         "XXX",
                                          };
 
         for (String dateTimeFormat: dateTimeFormats)
diff --git a/test/unit/org/apache/cassandra/serializers/TimestampSerializerTest.java b/test/unit/org/apache/cassandra/serializers/TimestampSerializerTest.java
index e9ae266..ac63f31 100644
--- a/test/unit/org/apache/cassandra/serializers/TimestampSerializerTest.java
+++ b/test/unit/org/apache/cassandra/serializers/TimestampSerializerTest.java
@@ -127,7 +127,11 @@ public class TimestampSerializerTest
         final long cstOffset = 6 * ONE_HOUR;
         validateStringTimestamp("1970-01-01 00:00:00 Central Standard Time", cstOffset);
         validateStringTimestamp("1970-01-01 00:00:00 CST", cstOffset);
+        validateStringTimestamp("1970-01-01 00:00:00 -0600", cstOffset);
+        validateStringTimestamp("1970-01-01 00:00:00-0600", cstOffset);
         validateStringTimestamp("1970-01-01T00:00:00 GMT-06:00", cstOffset);
+        validateStringTimestamp("1970-01-01T00:00:00 -0600", cstOffset);
+        validateStringTimestamp("1970-01-01T00:00:00-0600", cstOffset);
     }
 
     @Test

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