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

Merge request reports

Loading