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

ycai pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra-diff.git


The following commit(s) were added to refs/heads/trunk by this push:
     new c3ce22c  Always quote names in cql queries
c3ce22c is described below

commit c3ce22c97542eaa3b0a450168bc63ce24b4ffeaa
Author: Jyothsna Konisa <[email protected]>
AuthorDate: Fri Jan 29 10:40:35 2021 -0800

    Always quote names in cql queries
    
    Patch by Jyothsna Konisa; reviewed by Marcus Eriksson, Yifan Cai for 
CASSANDRA-16224
---
 .../src/main/java/org/apache/cassandra/diff/DiffCluster.java      | 8 ++++----
 .../src/main/java/org/apache/cassandra/diff/DiffContext.java      | 7 ++++---
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/spark-job/src/main/java/org/apache/cassandra/diff/DiffCluster.java 
b/spark-job/src/main/java/org/apache/cassandra/diff/DiffCluster.java
index da07890..2497f40 100644
--- a/spark-job/src/main/java/org/apache/cassandra/diff/DiffCluster.java
+++ b/spark-job/src/main/java/org/apache/cassandra/diff/DiffCluster.java
@@ -222,7 +222,7 @@ public class DiffCluster implements AutoCloseable
         for (String column : partitionKeyColumns)
             selection = selection.column(column);
 
-        BuiltStatement select = selection.from(tableMetadata)
+        BuiltStatement select = 
selection.from(cqlizedString(tableMetadata.getKeyspace().getName()), 
cqlizedString(tableMetadata.getName()))
                                          .where(gt(token(partitionKeyColumns), 
bindMarker()))
                                          .and(lte(token(partitionKeyColumns), 
bindMarker()));
 
@@ -242,7 +242,7 @@ public class DiffCluster implements AutoCloseable
         for (String column : allColumns)
             selection = selection.column(column);
 
-        Select select = selection.from(tableMetadata);
+        Select select = 
selection.from(cqlizedString(tableMetadata.getKeyspace().getName()), 
cqlizedString(tableMetadata.getName()));
 
         for (String column : partitionKeyColumns)
             select.where().and(eq(column, bindMarker()));
@@ -262,8 +262,8 @@ public class DiffCluster implements AutoCloseable
         Ordering[] reverseOrdering = new Ordering[clusteringColumns.size()];
         for (int i=0; i<clusteringColumns.size(); i++) {
             reverseOrdering[i] = clusteringOrders.get(i) == ClusteringOrder.ASC
-                                 ? desc(clusteringColumns.get(i).getName())
-                                 : asc(clusteringColumns.get(i).getName());
+                                 ? 
desc(columnToString(clusteringColumns.get(i).getName()))
+                                 : 
asc(columnToString(clusteringColumns.get(i).getName()));
         }
 
         select.orderBy(reverseOrdering);
diff --git a/spark-job/src/main/java/org/apache/cassandra/diff/DiffContext.java 
b/spark-job/src/main/java/org/apache/cassandra/diff/DiffContext.java
index 5a1a354..1290ae7 100644
--- a/spark-job/src/main/java/org/apache/cassandra/diff/DiffContext.java
+++ b/spark-job/src/main/java/org/apache/cassandra/diff/DiffContext.java
@@ -61,10 +61,11 @@ public class DiffContext {
     }
 
     public static String cqlizedString(final String str) {
-        if (str.toLowerCase().equals(str)) {
-            return str;
-        } else {
+        boolean shouldQuote = !str.startsWith("\"");
+        if (shouldQuote) {
             return "\"" + str + "\"";
+        } else {
+            return str;
         }
     }
 


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

Reply via email to