Orange-OpenSource/casskop

Ensure non existing datacenter specified in backup doesn't make casskop fails

cscetbon opened this issue · 0 comments

Bug Report

When non existing DC is specified casskop crashes with a kernel panic. Let's fix it.

...
github.com/Orange-OpenSource/casskop/pkg/controller/cassandrabackup.(*ReconcileCassandraBackup).backupData(0xc00057d640, 0xc00044e900, 0xc00055d880, 0xc000188620, 0x7, 0xc0006ece50)
	casskop/pkg/controller/cassandrabackup/reconcile.go:246 +0xc0
github.com/Orange-OpenSource/casskop/pkg/controller/cassandrabackup.(*ReconcileCassandraBackup).Reconcile(0xc00057d640, 0xc0006ece29, 0x7, 0xc0006ece14, 0xc, 0x0, 0x0, 0x0, 0x0)
	casskop/pkg/controller/cassandrabackup/reconcile.go:235 +0x90c
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc0001a6a80, 0x1637880, 0xc00030b160, 0x1733c00)
	casskop/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:256 +0x161
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc0001a6a80, 0x203000)
	casskop/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:232 +0xae
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker(0xc0001a6a80)
	casskop/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:211 +0x2b
k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1(0xc0002734d0)
...

Also specifying a list of datacenters (comma/space separated list) should not prevent casskop from finding a coordinator where to kick off the backup.