[
https://issues.apache.org/jira/browse/CASSANDRA-13606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17099695#comment-17099695
]
Berenguer Blasi commented on CASSANDRA-13606:
---------------------------------------------
[~adelapena] thx for reviewing this. I also was wondering about what a 'failed
built' index should do regarding writes. On reads it simply fails so I did the
same for writes. Yes it is very restrictive.
The alternative would be to ignore those writes as you state. What about
instead calling a {{writeRequestedWhileIndexFailed()}} method on the index
itself? That would allow the implementation to count, noSpamLog them, throw an
exception or whatever. wdyt?
> Improve handling of 2i initialization failures
> ----------------------------------------------
>
> Key: CASSANDRA-13606
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13606
> Project: Cassandra
> Issue Type: Improvement
> Components: Feature/2i Index
> Reporter: Sergio Bossa
> Assignee: Berenguer Blasi
> Priority: Normal
> Fix For: 4.0
>
> Time Spent: 40m
> Remaining Estimate: 0h
>
> CASSANDRA-10130 fixes the 2i build management, but initialization failures
> are still not properly handled, most notably because:
> * Initialization failures make the index non-queryable, but it can still be
> written to.
> * Initialization failures can be recovered via full rebuilds.
> Both points above are probably suboptimal because the initialization logic
> could be more complex than just an index build, hence it shouldn't be made
> recoverable via a simple rebuild, and could cause the index to be fully
> unavailable not just for reads, but for writes as well.
> So, we should better handle initialization failures by:
> * Allowing the index implementation to specify if unavailable for reads,
> writes, or both.
> * Providing a proper method to recover, distinct from index rebuilds.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]