This commit is contained in:
chrislu 2023-06-25 14:17:58 -07:00
parent 464a71a373
commit 26eff062c8
2 changed files with 5 additions and 5 deletions

View file

@ -15,7 +15,7 @@ func NewDistributedLockManager() *DistributedLockManager {
} }
func (dlm *DistributedLockManager) Lock(host pb.ServerAddress, key string, expiredAtNs int64, token string, servers []pb.ServerAddress) (renewToken string, movedTo pb.ServerAddress, err error) { func (dlm *DistributedLockManager) Lock(host pb.ServerAddress, key string, expiredAtNs int64, token string, servers []pb.ServerAddress) (renewToken string, movedTo pb.ServerAddress, err error) {
server := HashKeyToServer(key, servers) server := hashKeyToServer(key, servers)
if server != host { if server != host {
movedTo = server movedTo = server
return return
@ -25,7 +25,7 @@ func (dlm *DistributedLockManager) Lock(host pb.ServerAddress, key string, expir
} }
func (dlm *DistributedLockManager) Unlock(host pb.ServerAddress, key string, token string, servers []pb.ServerAddress) (movedTo pb.ServerAddress, err error) { func (dlm *DistributedLockManager) Unlock(host pb.ServerAddress, key string, token string, servers []pb.ServerAddress) (movedTo pb.ServerAddress, err error) {
server := HashKeyToServer(key, servers) server := hashKeyToServer(key, servers)
if server != host { if server != host {
movedTo = server movedTo = server
return return
@ -41,10 +41,10 @@ func (dlm *DistributedLockManager) InsertLock(key string, expiredAtNs int64, tok
} }
func (dlm *DistributedLockManager) SelectNotOwnedLocks(host pb.ServerAddress, servers []pb.ServerAddress) (locks []*Lock) { func (dlm *DistributedLockManager) SelectNotOwnedLocks(host pb.ServerAddress, servers []pb.ServerAddress) (locks []*Lock) {
return dlm.lockManager.SelectLocks(func(key string) bool { return dlm.lockManager.SelectLocks(func(key string) bool {
server := HashKeyToServer(key, servers) server := hashKeyToServer(key, servers)
return server != host return server != host
}) })
} }
func (dlm *DistributedLockManager) CalculateTargetServer(key string, servers []pb.ServerAddress) pb.ServerAddress { func (dlm *DistributedLockManager) CalculateTargetServer(key string, servers []pb.ServerAddress) pb.ServerAddress {
return HashKeyToServer(key, servers) return hashKeyToServer(key, servers)
} }

View file

@ -161,7 +161,7 @@ func (r *LockRing) GetSnapshot() (servers []pb.ServerAddress) {
return r.snapshots[0].servers return r.snapshots[0].servers
} }
func HashKeyToServer(key string, servers []pb.ServerAddress) pb.ServerAddress { func hashKeyToServer(key string, servers []pb.ServerAddress) pb.ServerAddress {
if len(servers) == 0 { if len(servers) == 0 {
return "" return ""
} }