[ 
https://issues.apache.org/jira/browse/CASSANALYTICS-133?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh McKenzie updated CASSANALYTICS-133:
----------------------------------------
    Epic Link: CASSANALYTICS-136

> Persisting data to C* in the StatePersister is async and has unhandled 
> exceptions
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANALYTICS-133
>                 URL: https://issues.apache.org/jira/browse/CASSANALYTICS-133
>             Project: Apache Cassandra Analytics
>          Issue Type: Bug
>          Components: CDC
>            Reporter: Josh McKenzie
>            Priority: Normal
>
> The code path to persist data to C* has some interesting properties.
> # In our {{SidecarStatePersister#flushActive}} call, we wait on the futures 
> w/out setting our own timeout on them. In effect, this means our persisting 
> data to the C* db is subject to the standard default write timeout in C*. 
> Blocking operations asking the {{StatePersister}} to persist when C* isn't 
> healthy might be... rather surprising.
> # We handle {{ExecutionException}} and {{InterruptedException}} in 
> {{SidecarStatePersister.flushActiveSafe}} but do not actually handle any of 
> the {{CassandraException}} shaped things we could get back from Cassandra. I 
> could see arguments for either way on doing this, but the intent isn't 
> documented and the name of the method calls into question what exactly "safe" 
> means in this context. :)
> We should probably do something about both of these. Setting our own more 
> aggressive timeouts if we're going to rely on the {{flush()}} path in the 
> StatePersister in any kind of performance sensitive or functionally blocking 
> path (shutdown, etc), and either renaming some of the methods to denote what 
> they are and aren't safe in the face of or change / augment the logic to make 
> deliberate choices when we fail to persist CDC state back to the DB.



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

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

Reply via email to