diff --git a/hack/vendor.sh b/hack/vendor.sh index 9e0a033d4a..1fb3e162dc 100755 --- a/hack/vendor.sh +++ b/hack/vendor.sh @@ -21,7 +21,7 @@ clone git github.com/vdemeester/shakers 3c10293ce22b900c27acad7b28656196fcc2f73b clone git golang.org/x/net 3cffabab72adf04f8e3b01c5baf775361837b5fe https://github.com/golang/net.git #get libnetwork packages -clone git github.com/docker/libnetwork fc6cbea49cd8197c0a8d22b9e8f24f37d9e7b1b8 +clone git github.com/docker/libnetwork 0d7a57ddb94a92a57755eec5dc54f905287c7e65 clone git github.com/armon/go-metrics eb0af217e5e9747e41dd5303755356b62d28e3ec clone git github.com/hashicorp/go-msgpack 71c2886f5a673a35f909803f38ece5810165097b clone git github.com/hashicorp/memberlist 9a1e242e454d2443df330bdd51a436d5a9058fc4 diff --git a/vendor/src/github.com/docker/libnetwork/store.go b/vendor/src/github.com/docker/libnetwork/store.go index 65d3b02a32..c70caf08d3 100644 --- a/vendor/src/github.com/docker/libnetwork/store.go +++ b/vendor/src/github.com/docker/libnetwork/store.go @@ -60,12 +60,11 @@ func (c *controller) getNetworkFromStore(nid string) (*network, error) { for _, store := range c.getStores() { n := &network{id: nid, ctrlr: c} err := store.GetObject(datastore.Key(n.Key()...), n) - if err != nil && err != datastore.ErrKeyNotFound { - return nil, fmt.Errorf("could not find network %s: %v", nid, err) - } - // Continue searching in the next store if the key is not found in this store - if err == datastore.ErrKeyNotFound { + if err != nil { + if err != datastore.ErrKeyNotFound { + log.Debugf("could not find network %s: %v", nid, err) + } continue } @@ -120,13 +119,11 @@ func (c *controller) getNetworksFromStore() ([]*network, error) { for _, store := range c.getStores() { kvol, err := store.List(datastore.Key(datastore.NetworkKeyPrefix), &network{ctrlr: c}) - if err != nil && err != datastore.ErrKeyNotFound { - return nil, fmt.Errorf("failed to get networks for scope %s: %v", - store.Scope(), err) - } - // Continue searching in the next store if no keys found in this store - if err == datastore.ErrKeyNotFound { + if err != nil { + if err != datastore.ErrKeyNotFound { + log.Debugf("failed to get networks for scope %s: %v", store.Scope(), err) + } continue } @@ -149,22 +146,17 @@ func (c *controller) getNetworksFromStore() ([]*network, error) { } func (n *network) getEndpointFromStore(eid string) (*endpoint, error) { - for _, store := range n.ctrlr.getStores() { - ep := &endpoint{id: eid, network: n} - err := store.GetObject(datastore.Key(ep.Key()...), ep) - if err != nil && err != datastore.ErrKeyNotFound { - return nil, fmt.Errorf("could not find endpoint %s: %v", eid, err) - } - - // Continue searching in the next store if the key is not found in this store - if err == datastore.ErrKeyNotFound { - continue - } - - return ep, nil + store := n.ctrlr.getStore(n.Scope()) + if store == nil { + return nil, fmt.Errorf("could not find endpoint %s: datastore not found for scope %s", eid, n.Scope()) } - return nil, fmt.Errorf("endpoint %s not found", eid) + ep := &endpoint{id: eid, network: n} + err := store.GetObject(datastore.Key(ep.Key()...), ep) + if err != nil { + return nil, fmt.Errorf("could not find endpoint %s: %v", eid, err) + } + return ep, nil } func (n *network) getEndpointsFromStore() ([]*endpoint, error) { @@ -173,14 +165,12 @@ func (n *network) getEndpointsFromStore() ([]*endpoint, error) { tmp := endpoint{network: n} for _, store := range n.getController().getStores() { kvol, err := store.List(datastore.Key(tmp.KeyPrefix()...), &endpoint{network: n}) - if err != nil && err != datastore.ErrKeyNotFound { - return nil, - fmt.Errorf("failed to get endpoints for network %s scope %s: %v", - n.Name(), store.Scope(), err) - } - // Continue searching in the next store if no keys found in this store - if err == datastore.ErrKeyNotFound { + if err != nil { + if err != datastore.ErrKeyNotFound { + log.Debugf("failed to get endpoints for network %s scope %s: %v", + n.Name(), store.Scope(), err) + } continue }