[jira] [Commented] (CASSANDRA-18813) Simplify the bind marker and Term logic

2024-01-22 Thread Jira


[ 
https://issues.apache.org/jira/browse/CASSANDRA-18813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17809565#comment-17809565
 ] 

Andres de la Peña commented on CASSANDRA-18813:
---

The last changes look good to me, +1.

Regarding the failure of {{{}SnapshotsTest{}}}, I haven't been able to 
reproduce it with the multiplexer, neither [in the base 
branch|https://app.circleci.com/pipelines/github/adelapena/cassandra/3398/workflows/cd28d535-15c5-4ad6-9012-782d5fa9583f]
 nor [in the patched 
branch|https://app.circleci.com/pipelines/github/adelapena/cassandra/3399/workflows/f3dc74ed-9796-4cc3-95bc-d2edc026af52].
 I cannot see how it could be related to the changes, so I'd say we merge this 
and keep an eye on it.

> Simplify the bind marker and Term logic
> ---
>
> Key: CASSANDRA-18813
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18813
> Project: Cassandra
>  Issue Type: Improvement
>  Components: CQL/Interpreter
>Reporter: Benjamin Lerer
>Assignee: Benjamin Lerer
>Priority: Normal
> Fix For: 5.x
>
>  Time Spent: 8.5h
>  Remaining Estimate: 0h
>
> The current logic around {{Term}} and {{Terms}} classes is confusing 
> specially with {{MultiItemTerminal}} and {{MultiColumnRaw}} that are used to 
> handle different use cases that could be handled simply with the {{Term}} 
> interface.
> On top of that IN marker add to the confusion because the are represented as 
> single Term where in practice they are a set of terms. Representing them as a 
> {{Terms}} could simplify  the way we handle IN restrictions.
> The goal of this ticket is:
> *  to refactor the {{Term}} and {{Terms}} interfaces to simplify the logic
> * Represents IN bind marker as {{Terms}} instead of having 2 different 
> representations (a list of terms and a single {{MultiItemTerminal}}.
> * Simplify the {{AbstractMarker}} hierachy 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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



[jira] [Commented] (CASSANDRA-18813) Simplify the bind marker and Term logic

2024-01-19 Thread Ekaterina Dimitrova (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-18813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17808823#comment-17808823
 ] 

Ekaterina Dimitrova commented on CASSANDRA-18813:
-

I just made a final pass, focused on whether any changes affected the patch 
after the big rebases. I did not find any conflicts which would have changed 
the code and required attention. If I haven't missed anything that you may 
point out to me to check - +1
I also looked into the CI results:
I haven't found anything about this failure - 
org.apache.cassandra.distributed.test.SnapshotsTest, but I do not think it can 
relate to the patch. I suggest we do a repeated run against trunk and open a 
ticket for the community to check this one. 

- test-cassandra.testtag_IS_UNDEFINED - CASSANDRA-19279
- jvm tests failing with OOM - CASSANDRA-19279
- testDropListAndAddListWithSameName-oa_jdk17 - CASSANDRA-18360


> Simplify the bind marker and Term logic
> ---
>
> Key: CASSANDRA-18813
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18813
> Project: Cassandra
>  Issue Type: Improvement
>  Components: CQL/Interpreter
>Reporter: Benjamin Lerer
>Assignee: Benjamin Lerer
>Priority: Normal
> Fix For: 5.x
>
>  Time Spent: 8.5h
>  Remaining Estimate: 0h
>
> The current logic around {{Term}} and {{Terms}} classes is confusing 
> specially with {{MultiItemTerminal}} and {{MultiColumnRaw}} that are used to 
> handle different use cases that could be handled simply with the {{Term}} 
> interface.
> On top of that IN marker add to the confusion because the are represented as 
> single Term where in practice they are a set of terms. Representing them as a 
> {{Terms}} could simplify  the way we handle IN restrictions.
> The goal of this ticket is:
> *  to refactor the {{Term}} and {{Terms}} interfaces to simplify the logic
> * Represents IN bind marker as {{Terms}} instead of having 2 different 
> representations (a list of terms and a single {{MultiItemTerminal}}.
> * Simplify the {{AbstractMarker}} hierachy 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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



[jira] [Commented] (CASSANDRA-18813) Simplify the bind marker and Term logic

2023-09-18 Thread Ekaterina Dimitrova (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-18813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17766385#comment-17766385
 ] 

Ekaterina Dimitrova commented on CASSANDRA-18813:
-

The correct CI links are these, confirmed with [~blerer]:

[Java11|https://app.circleci.com/pipelines/github/blerer/cassandra/359/workflows/8a5c3201-3b8e-4c45-b953-f06860ed925e]

*org.apache.cassandra.distributed.test.FailingRepairTest-.jdk11* - I did not 
find a ticket for this one, but I've seen something similar. Let's loop it on 
the current trunk and open another ticket when it confirms it is unrelated to 
what we do here. 

*testDropListAndAddListWithSameName-.jdk11* - CASSANDRA-18360

I would also recommend running the upgrade tests before committing.

I am still reviewing it, though. 

> Simplify the bind marker and Term logic
> ---
>
> Key: CASSANDRA-18813
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18813
> Project: Cassandra
>  Issue Type: Improvement
>  Components: CQL/Interpreter
>Reporter: Benjamin Lerer
>Assignee: Benjamin Lerer
>Priority: Normal
> Fix For: 5.x
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> The current logic around {{Term}} and {{Terms}} classes is confusing 
> specially with {{MultiItemTerminal}} and {{MultiColumnRaw}} that are used to 
> handle different use cases that could be handled simply with the {{Term}} 
> interface.
> On top of that IN marker add to the confusion because the are represented as 
> single Term where in practice they are a set of terms. Representing them as a 
> {{Terms}} could simplify  the way we handle IN restrictions.
> The goal of this ticket is:
> *  to refactor the {{Term}} and {{Terms}} interfaces to simplify the logic
> * Represents IN bind marker as {{Terms}} instead of having 2 different 
> representations (a list of terms and a single {{MultiItemTerminal}}.
> * Simplify the {{AbstractMarker}} hierachy 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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



[jira] [Commented] (CASSANDRA-18813) Simplify the bind marker and Term logic

2023-09-15 Thread Benjamin Lerer (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-18813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17765520#comment-17765520
 ] 

Benjamin Lerer commented on CASSANDRA-18813:


I updated the patch which now:
* removes the {{MultiItemTerminal}} and {{MultiColumnRaw}} interfaces
* represents IN bind marker as {{Terms}} instead of having 2 different 
representations (a list of terms and a single {{MultiItemTerminal}}).
* replaces the {{AbstractMarker}} hierachy by the {{Marker}} class
* introduces a new {{MultiElementType}} that becomes a super class of all the 
{{CollectionTypes}}, {{TupleType}}, {{UserType}} and {{VectorType}} 
(standardizing the {{pack}} and {{unpack}} method names and their modifiers)
* It replaces the {{Value}} and {{DelayedValue}} implementations for the 
{{Lists}}, {{Sets}}, {{Maps}}, {{Tuples}}, {{UserTypes}} and {{Vectors}} 
classes by the {{MultiElements}} Value and {{DelayedValue}} classes.

CI [Java 
11|https://app.circleci.com/pipelines/github/blerer/cassandra/358/workflows/efc7db24-d110-4f45-a273-c71e685b39a5]
 and [Java 
17|https://app.circleci.com/pipelines/github/blerer/cassandra/358/workflows/deec9a8e-132c-484c-b8dc-496d4a837072]

> Simplify the bind marker and Term logic
> ---
>
> Key: CASSANDRA-18813
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18813
> Project: Cassandra
>  Issue Type: Improvement
>  Components: CQL/Interpreter
>Reporter: Benjamin Lerer
>Assignee: Benjamin Lerer
>Priority: Normal
> Fix For: 5.x
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> The current logic around {{Term}} and {{Terms}} classes is confusing 
> specially with {{MultiItemTerminal}} and {{MultiColumnRaw}} that are used to 
> handle different use cases that could be handled simply with the {{Term}} 
> interface.
> On top of that IN marker add to the confusion because the are represented as 
> single Term where in practice they are a set of terms. Representing them as a 
> {{Terms}} could simplify  the way we handle IN restrictions.
> The goal of this ticket is:
> *  to refactor the {{Term}} and {{Terms}} interfaces to simplify the logic
> * Represents IN bind marker as {{Terms}} instead of having 2 different 
> representations (a list of terms and a single {{MultiItemTerminal}}.
> * Simplify the {{AbstractMarker}} hierachy 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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



[jira] [Commented] (CASSANDRA-18813) Simplify the bind marker and Term logic

2023-08-31 Thread Benjamin Lerer (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-18813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17760915#comment-17760915
 ] 

Benjamin Lerer commented on CASSANDRA-18813:


PR: 
[https://github.com/apache/cassandra/pull/2655|https://github.com/apache/cassandra/pull/2655]
CI [Java 
11|https://app.circleci.com/pipelines/github/blerer/cassandra/350/workflows/cfab461e-8d9c-4f1e-acc1-00d03f11cd53]
 and [Java 
17|https://app.circleci.com/pipelines/github/blerer/cassandra/350/workflows/311ea931-f109-419c-a358-98fdcb612575]

> Simplify the bind marker and Term logic
> ---
>
> Key: CASSANDRA-18813
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18813
> Project: Cassandra
>  Issue Type: Improvement
>  Components: CQL/Interpreter
>Reporter: Benjamin Lerer
>Assignee: Benjamin Lerer
>Priority: Normal
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The current logic around {{Term}} and {{Terms}} classes is confusing 
> specially with {{MultiItemTerminal}} and {{MultiColumnRaw}} that are used to 
> handle different use cases that could be handled simply with the {{Term}} 
> interface.
> On top of that IN marker add to the confusion because the are represented as 
> single Term where in practice they are a set of terms. Representing them as a 
> {{Terms}} could simplify  the way we handle IN restrictions.
> The goal of this ticket is:
> *  to refactor the {{Term}} and {{Terms}} interfaces to simplify the logic
> * Represents IN bind marker as {{Terms}} instead of having 2 different 
> representations (a list of terms and a single {{MultiItemTerminal}}.
> * Simplify the {{AbstractMarker}} hierachy 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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