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

Benoit Tellier commented on JAMES-2897:
---------------------------------------

In 
https://docs.datastax.com/en/ddac/doc/datastax_enterprise/dbInternals/dbIntLtwtTransactions.html
 we find the following statement about lighweight Transactions:


For example, the following series of operations can fail:

```
DELETE ...
INSERT .... IF NOT EXISTS
SELECT ....
```

The following series of operations will work:

```
DELETE ... IF EXISTS
INSERT .... IF NOT EXISTS
SELECT .....
```

MailboxPath and MailboxPathV2 DAOs don't follow this pattern and accordingly 
needs to be fixed.

Here is the related code change: 
https://github.com/linagora/james-project/pull/3135

> Cassandra Lightweight Transaction requires specific consistency level
> ---------------------------------------------------------------------
>
>                 Key: JAMES-2897
>                 URL: https://issues.apache.org/jira/browse/JAMES-2897
>             Project: James Server
>          Issue Type: Bug
>          Components: cassandra
>            Reporter: Matthieu Baechler
>            Priority: Major
>
> After reading 
> https://docs.datastax.com/en/ddac/doc/datastax_enterprise/dbInternals/dbIntLtwtTransactions.html
>  , 
> https://docs.datastax.com/en/ddaccql/doc/cql/cql_reference/cqlsh_commands/cqlshConsistency.html
>  and 
> https://docs.datastax.com/en/ddaccql/doc/cql/cql_reference/cqlsh_commands/cqlshSerialConsistency.html
>  It looks like we should be more careful about consistency when reading 
> tables that use LWT.
> Basically, to ensure we always read the last value, we must read with SERIAL 
> consistency.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to