Add ability to use template cache and a reset lost partition API
Change
This MR aims to fix partition loss issue when running Ignite in a kubernetes cluster when a pod is destroyed. This is achieved by a combination of 3 things
- Allow the Ignite cache used for each data kind to be pre-configured with a set of default options using a Cache Configuration. This Cache configuration should set the number of backups to be at least 1.
- Set at least 1 backup for all the "system" caches used internally by GCZ (to keep the configuration, logs etc...). Else if they are lost, most API from the Transformer will return a 500
- Add an API to manually reset the the lost partitions. In case all the backups have been lost, Ignite require a manual action to reset the state of the cluster. This API makes doing that easier instead of having to manually run the control script from inside an ignite pod (see https://ignite.apache.org/docs/latest/configuring-caches/partition-loss-policy#handling-partition-loss _
Type of change
-
Bug Fix -
Feature
Please provide link to gitlab issue or ADR(Architecture Decision Record)
Fix #248 (closed)
Does this introduce a change in the core logic?
- [YES]
Does this introduce a change in the cloud provider implementation, if so which cloud?
NOT BY DEFAULT
Does this introduce a breaking change?
- [NO]
Edited by Guillaume Caillet