mirror of
https://github.com/minio/minio.git
synced 2025-04-22 11:26:36 -04:00
Do not leave stale entries on etcd on a failed update operation (#6048)
This commit is contained in:
parent
577d10674d
commit
05a64dee95
@ -102,10 +102,8 @@ func (c *coreDNS) list(key string) ([]SrvRecord, error) {
|
|||||||
|
|
||||||
// Adds DNS entries into etcd endpoint in CoreDNS etcd message format.
|
// Adds DNS entries into etcd endpoint in CoreDNS etcd message format.
|
||||||
func (c *coreDNS) Put(bucket string) error {
|
func (c *coreDNS) Put(bucket string) error {
|
||||||
var err error
|
|
||||||
for ip := range c.domainIPs {
|
for ip := range c.domainIPs {
|
||||||
var bucketMsg []byte
|
bucketMsg, err := newCoreDNSMsg(bucket, ip, c.domainPort, defaultTTL)
|
||||||
bucketMsg, err = newCoreDNSMsg(bucket, ip, c.domainPort, defaultTTL)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -115,8 +113,14 @@ func (c *coreDNS) Put(bucket string) error {
|
|||||||
ctx, cancel := context.WithTimeout(context.Background(), defaultContextTimeout)
|
ctx, cancel := context.WithTimeout(context.Background(), defaultContextTimeout)
|
||||||
_, err = kapi.Set(ctx, key, string(bucketMsg), nil)
|
_, err = kapi.Set(ctx, key, string(bucketMsg), nil)
|
||||||
cancel()
|
cancel()
|
||||||
|
if err != nil {
|
||||||
|
ctx, cancel = context.WithTimeout(context.Background(), defaultContextTimeout)
|
||||||
|
kapi.Delete(ctx, key, &etcd.DeleteOptions{Recursive: true})
|
||||||
|
cancel()
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return err
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Removes DNS entries added in Put().
|
// Removes DNS entries added in Put().
|
||||||
|
Loading…
x
Reference in New Issue
Block a user