From c4886bd006e49609fb7e257571b2d3bf56c4fbf5 Mon Sep 17 00:00:00 2001 From: xianlubird Date: Mon, 30 May 2016 17:18:17 +0800 Subject: [PATCH] Fix network uniq method concurrent map writes problem Signed-off-by: Xianlu --- cluster/network.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cluster/network.go b/cluster/network.go index b5e3787abc..de1a9fe5f2 100644 --- a/cluster/network.go +++ b/cluster/network.go @@ -30,7 +30,12 @@ func (networks Networks) Uniq() Networks { tmp[network.ID].Containers[id] = endpoint } } else { - tmp[network.ID] = network + netCopy := *network + netCopy.Containers = make(map[string]types.EndpointResource) + for key, value := range network.Containers { + netCopy.Containers[key] = value + } + tmp[network.ID] = &netCopy } } uniq := Networks{}