Browse Source

libnetwork/datastore: remove unused DeleteTree() method

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Sebastiaan van Stijn 2 years ago
parent
commit
e21e802fc6

+ 0 - 21
libnetwork/datastore/datastore.go

@@ -20,8 +20,6 @@ type DataStore interface {
 	PutObjectAtomic(kvObject KVObject) error
 	// DeleteObjectAtomic performs an atomic delete operation
 	DeleteObjectAtomic(kvObject KVObject) error
-	// DeleteTree deletes a record
-	DeleteTree(kvObject KVObject) error
 	// List returns of a list of KVObjects belonging to the parent
 	// key. The caller must pass a KVObject of the same type as
 	// the objects that need to be listed
@@ -437,22 +435,3 @@ del_cache:
 
 	return nil
 }
-
-// DeleteTree unconditionally deletes a record from the store
-func (ds *datastore) DeleteTree(kvObject KVObject) error {
-	ds.Lock()
-	defer ds.Unlock()
-
-	// cleanup the cache first
-	if ds.cache != nil {
-		// If persistent store is skipped, sequencing needs to
-		// happen in cache.
-		ds.cache.del(kvObject, kvObject.Skip())
-	}
-
-	if kvObject.Skip() {
-		return nil
-	}
-
-	return ds.store.DeleteTree(Key(kvObject.KeyPrefix()...))
-}

+ 0 - 6
libnetwork/datastore/mock_store.go

@@ -65,12 +65,6 @@ func (s *MockStore) List(prefix string) ([]*store.KVPair, error) {
 	return nil, ErrNotImplemented
 }
 
-// DeleteTree deletes a range of values at "directory"
-func (s *MockStore) DeleteTree(prefix string) error {
-	delete(s.db, prefix)
-	return nil
-}
-
 // Watch a single key for modifications
 func (s *MockStore) Watch(key string, stopCh <-chan struct{}) (<-chan *store.KVPair, error) {
 	return nil, ErrNotImplemented

+ 0 - 32
libnetwork/internal/kvstore/boltdb/boltdb.go

@@ -370,38 +370,6 @@ func (b *BoltDB) Close() {
 	}
 }
 
-// DeleteTree deletes a range of keys with a given prefix
-func (b *BoltDB) DeleteTree(keyPrefix string) error {
-	var (
-		db  *bolt.DB
-		err error
-	)
-	b.mu.Lock()
-	defer b.mu.Unlock()
-
-	if db, err = b.getDBhandle(); err != nil {
-		return err
-	}
-	defer b.releaseDBhandle()
-
-	err = db.Update(func(tx *bolt.Tx) error {
-		bucket := tx.Bucket(b.boltBucket)
-		if bucket == nil {
-			return store.ErrKeyNotFound
-		}
-
-		cursor := bucket.Cursor()
-		prefix := []byte(keyPrefix)
-
-		for key, _ := cursor.Seek(prefix); bytes.HasPrefix(key, prefix); key, _ = cursor.Next() {
-			_ = bucket.Delete(key)
-		}
-		return nil
-	})
-
-	return err
-}
-
 // Watch has to implemented at the library level since its not supported by BoltDB
 func (b *BoltDB) Watch(key string, stopCh <-chan struct{}) (<-chan *store.KVPair, error) {
 	return nil, store.ErrCallNotSupported

+ 0 - 3
libnetwork/internal/kvstore/kvstore.go

@@ -56,9 +56,6 @@ type Store interface {
 	// List the content of a given prefix
 	List(directory string) ([]*KVPair, error)
 
-	// DeleteTree deletes a range of keys under a given directory
-	DeleteTree(directory string) error
-
 	// AtomicPut performs an atomic CAS operation on a single value.
 	// Pass previous = nil to create a new key.
 	AtomicPut(key string, value []byte, previous *KVPair) (*KVPair, error)