mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-10-10 12:57:54 +00:00
return an error when deleting a non-existent index or field
This commit is contained in:
parent
7dd1f50a75
commit
8a5f5dd737
3 changed files with 8 additions and 7 deletions
|
|
@ -371,10 +371,10 @@ func (h *Holder) DeleteIndex(name string) error {
|
|||
h.mu.Lock()
|
||||
defer h.mu.Unlock()
|
||||
|
||||
// Ignore if index doesn't exist.
|
||||
// Confirm index exists.
|
||||
index := h.index(name)
|
||||
if index == nil {
|
||||
return nil
|
||||
return NotFoundError{ErrIndexNotFound}
|
||||
}
|
||||
|
||||
// Close index.
|
||||
|
|
|
|||
4
index.go
4
index.go
|
|
@ -346,10 +346,10 @@ func (i *Index) DeleteField(name string) error {
|
|||
i.mu.Lock()
|
||||
defer i.mu.Unlock()
|
||||
|
||||
// Ignore if field doesn't exist.
|
||||
// Confirm field exists.
|
||||
f := i.field(name)
|
||||
if f == nil {
|
||||
return nil
|
||||
return NotFoundError{ErrFieldNotFound}
|
||||
}
|
||||
|
||||
// Close field.
|
||||
|
|
|
|||
|
|
@ -194,13 +194,14 @@ func TestIndex_DeleteField(t *testing.T) {
|
|||
t.Fatal("expected nil field")
|
||||
}
|
||||
|
||||
// Delete again to make sure it doesn't error.
|
||||
if err := index.DeleteField("f"); err != nil {
|
||||
// Delete again to make sure it errors.
|
||||
err := index.DeleteField("f")
|
||||
if err == nil || err.Error() != pilosa.ErrFieldNotFound.Error() {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
// Ensure index can delete a field.
|
||||
// Ensure index can validate its name.
|
||||
func TestIndex_InvalidName(t *testing.T) {
|
||||
path, err := ioutil.TempDir("", "pilosa-index-")
|
||||
if err != nil {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue