diff --git a/pkg/sqlite/load.go b/pkg/sqlite/load.go index 65185ee65..9a61a1f68 100644 --- a/pkg/sqlite/load.go +++ b/pkg/sqlite/load.go @@ -942,6 +942,9 @@ func (s *sqlLoader) RemovePackage(packageName string) error { if err != nil { return err } + if len(csvNames) == 0 { + return fmt.Errorf("no package found for packagename %s", packageName) + } for _, csvName := range csvNames { if err := s.rmBundle(tx, csvName); err != nil { return err diff --git a/pkg/sqlite/remove_test.go b/pkg/sqlite/remove_test.go index e4b8063eb..2d6ebcb7c 100644 --- a/pkg/sqlite/remove_test.go +++ b/pkg/sqlite/remove_test.go @@ -76,6 +76,10 @@ func TestRemover(t *testing.T) { _, err = query.GetPackage(context.TODO(), "prometheus") require.EqualError(t, err, "package prometheus not found") + // delete prometheus again + err = store.RemovePackage("prometheus") + require.EqualError(t, err, "no package found for packagename prometheus") + // no apis after all packages are removed rows, err = db.QueryContext(context.TODO(), "select * from api") require.NoError(t, err)