[ https://issues.apache.org/jira/browse/CASSANDRA-18107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Caleb Rackliffe reassigned CASSANDRA-18107: ------------------------------------------- Assignee: Caleb Rackliffe > CEP-15: Multi-Partition Transaction CQL Support (Alpha -> v1) > ------------------------------------------------------------- > > Key: CASSANDRA-18107 > URL: https://issues.apache.org/jira/browse/CASSANDRA-18107 > Project: Cassandra > Issue Type: New Feature > Components: Accord, CQL/Semantics, CQL/Syntax > Reporter: Caleb Rackliffe > Assignee: Caleb Rackliffe > Priority: Normal > Fix For: NA > > > With CASSANDRA-17719 complete, basic/alpha CQL support for Accord is now > available in the > [cep-15-accord|https://github.com/apache/cassandra/commits/cep-15-accord] > branch. There are, however, a number of features and enhancements that we > would still like to add before we make it available to users. Here is a > summary of those items, broadly categorized: > *Error Messages and UX* > - Fix the element/field names in result metadata to match the user query > - Better error messages > -- Append/subtracting to/from frozen list > -- attempts to use reference in WHERE clause > -- LET using a reserved word > *Domain Object Cleanup* > - Given {{Selector}} is serializable, attempt to reuse it in {{TxnReference}} > rather than hard coding data conversion cases > - Separate current current {{LET}} statement from {{SelectStatement}}, likely > as a new {{LetStatement}} that names a {{SelectStatement}} > - Explore unifying {{Operation}} and {{ReferenceOperation}} > - Include non-Row items of {{FilteredPartition}} in > {{TxnData#estimatedSizeOnHeap()}} > - Explore possibility of making {{Bound}} serializable and using it directly > in {{TxnCondition}} > - Change internal representation of {{TxnDataName}} to avoid {{String}} -> > {{ByteBuffer}} conversions > - Have {{TxnCondition}}/{{TxnUpdate}} support {{slice()}} to full take > advantage of partial state replication > *Testing* > - Figure out the original intent of placeholder tests in > {{AccordIntegrationTest}} (ex. {{acceptInvalidationTest()}}) > - Remove hack in {{AccordConfigurationService}} (when we have Transactional > Metadata) > - Verify concretely that we disable Guardrails. > - Audit the way we propagate timestamps through execution. > *Features* > - Full JSON support > - Final decision of whether we should support returning the result of an > {{IF}}/condition > - Constant terms on the RHS of LET > - Support for having a reference on both LHS and RHS of {{IF}} predicates > - Support for {{CONTAINS}}, {{CONTAINS KEY}}, and {{IN}} (important for CAS > parity) > - Nested UDT support > - Mixed conditional and unconditional updates (should this be post-v1?) > - Arithmetic operations on references in {{INSERT}}/{{UPDATE}} (ex. INSERT > INTO ks.tbl1 (k, c, v) VALUES (0, 0, a.v + 1) > *Tooling* > - Eliminate {{nodetool createepochunsafe}} once transactional metadata is > available. > *Metrics* > - Latency metrics for execution and failure/timeout counting (“Transaction” > in client metrics?) > *Documentation* > - CQL language documentation and bump the CQL language specification version > - JavaDoc for all new statement classes > - Integrate {{demo.txt}} into broader documentation somewhere or remove > *Questions* > - How should txn statement parsing/preparation handle TTLs specified in > updates? > - At what level do we want to integrate tracing? -- 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