func (indexes *BleveIndexes) RemoveIndex(namespace string) error { ns, err := util.Namespace(namespace) if err != nil { return err } indexes.Lock() defer indexes.Unlock() node := indexes.nodes.Node(ns) if node == nil { return fmt.Errorf("none node for namespace: %s", ns) } if node.GetBind() != nil { node.SetBind(nil) } // remove the index from fs os.RemoveAll(path.Join(indexes.root, namespace, indexes.name)) return nil }
func (indexes *BleveIndexes) CreateIndex(namespace string) error { ns, err := util.Namespace(namespace) if err != nil { return err } indexes.Lock() defer indexes.Unlock() node := indexes.nodes.Node(ns) if node == nil { return fmt.Errorf("none node for namespace: %s", ns) } if node.GetBind() == nil { index, err := indexes.index(ns, true) if err != nil { return err } node.SetBind(index) } return nil }