You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pr@cassandra.apache.org by GitBox <gi...@apache.org> on 2022/02/01 06:23:02 UTC

[GitHub] [cassandra] bereng commented on a change in pull request #1380: CASSANDRA-10537: CONTAINS and CONTAINS KEY support for Lightweight Transactions

bereng commented on a change in pull request #1380:
URL: https://github.com/apache/cassandra/pull/1380#discussion_r796290894



##########
File path: src/java/org/apache/cassandra/cql3/conditions/ColumnCondition.java
##########
@@ -531,6 +534,25 @@ private static boolean setOrListAppliesTo(AbstractType<?> type, Iterator<Cell<?>
             return operator == Operator.EQ || operator == Operator.LTE || operator == Operator.GTE;
         }
 
+        private static boolean valueAppliesTo(Iterator<Cell<?>> iter, ByteBuffer value, boolean appliesToSetOrMapKeys)
+        {
+            while(iter.hasNext())
+            {
+                // for lists and map values we use the cell value; for sets and map keys we use the cell name
+                ByteBuffer cellValue = appliesToSetOrMapKeys ? iter.next().path().get(0) : iter.next().buffer();
+                int comparison = BytesType.instance.compare(cellValue, value);

Review comment:
       Hi,
   
   can I ask you to please don't squash on each push? Then I can see what changed exactly from commit to commit. I look at a few PRs at the same time and my memory is not that good to remember the whole code lol.
   
   I see you now use the right type comparator depending on the collection type. I still would call `evaluateComparisonWithOperator()` with an `EQ` operator on each of the iterator's loop. Iiuc that would be the same behavior we have atm. Let's see what other committer thinks when he reviews this.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: pr-unsubscribe@cassandra.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



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