diff --git a/pkg/kvstore/allocator/allocator.go b/pkg/kvstore/allocator/allocator.go
index <HASH>..<HASH> 100644
--- a/pkg/kvstore/allocator/allocator.go
+++ b/pkg/kvstore/allocator/allocator.go
@@ -488,17 +488,6 @@ func (a *Allocator) lockedAllocate(ctx context.Context, key AllocatorKey) (idpoo
 		return 0, false, fmt.Errorf("another writer has allocated this key")
 	}
 
-	value, err = a.GetNoCache(ctx, key)
-	if err != nil {
-		releaseKeyAndID()
-		return 0, false, err
-	}
-
-	if value != 0 {
-		releaseKeyAndID()
-		return 0, false, fmt.Errorf("master key already exists")
-	}
-
 	// create /id/<ID> and fail if it already exists
 	keyPath := path.Join(a.idPrefix, strID)
 	success, err := kvstore.CreateOnly(ctx, keyPath, []byte(k), false)
kvstore/allocator: do not re-get slave key on allocation

As the slave key is protected by the kvstore global lock it is not
really necessary to do another Get of the slave key as the key will not
be created by any other agent due the lock is still being held.