provider/ec2: many data races

Bug #1519141 reported by Dave Cheney
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Canonical Juju
Fix Released
Critical
Dave Cheney

Bug Description

WARNING: DATA RACE
Write by goroutine 52:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeInstances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/instances.go:291 +0x492
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00

Previous read by goroutine 78:
  [failed to restore the stack]

Goroutine 52 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac

Goroutine 78 (finished) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/environs.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/open.go:296 +0x70
  github.com/juju/juju/environs/jujutest.(*Tests).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:165 +0x1048
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs_test.go:1 +0x51
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3
==================
==================
WARNING: DATA RACE
Write by goroutine 52:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeInstances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/instances.go:291 +0x492
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00

Previous read by goroutine 78:
  [failed to restore the stack]

Goroutine 52 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac

Goroutine 78 (finished) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/environs.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/open.go:296 +0x70
  github.com/juju/juju/environs/jujutest.(*Tests).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:165 +0x1048
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs_test.go:1 +0x51
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3
==================
==================
WARNING: DATA RACE
Write by goroutine 52:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:543 +0x39
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeInstances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/instances.go:291 +0x492
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00

Previous read by goroutine 78:
  [failed to restore the stack]

Goroutine 52 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac

Goroutine 78 (finished) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/environs.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/open.go:296 +0x70
  github.com/juju/juju/environs/jujutest.(*Tests).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:165 +0x1048
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs_test.go:1 +0x51
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3
==================
==================
WARNING: DATA RACE
Write by goroutine 52:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:543 +0x39
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeInstances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/instances.go:291 +0x492
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00

Previous read by goroutine 78:
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:620 +0x55d
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:365 +0x26df
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:543 +0x39
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).DecodeElement()
      /usr/lib/go/src/pkg/encoding/xml/read.go:133 +0x180
  encoding/xml.(*Decoder).Decode()
      /usr/lib/go/src/pkg/encoding/xml/read.go:121 +0x51
  gopkg.in/amz.v3/ec2.(*EC2).query()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:165 +0x94d
  gopkg.in/amz.v3/ec2.(*EC2).Instances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:561 +0x1d1
  github.com/juju/juju/provider/ec2.func·005()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:485 +0x5cf
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).waitVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:718 +0xfc
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).destroyVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:514 +0x22e
  github.com/juju/juju/provider/ec2.func·004()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:426 +0x8a

Goroutine 52 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac

Goroutine 78 (finished) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/environs.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/open.go:296 +0x70
  github.com/juju/juju/environs/jujutest.(*Tests).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:165 +0x1048
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs_test.go:1 +0x51
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3
==================
==================
WARNING: DATA RACE
Write by goroutine 52:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:543 +0x39
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeInstances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/instances.go:291 +0x492
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00

Previous read by goroutine 78:
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:620 +0x55d
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:543 +0x39
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:365 +0x26df
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:543 +0x39
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).DecodeElement()
      /usr/lib/go/src/pkg/encoding/xml/read.go:133 +0x180
  encoding/xml.(*Decoder).Decode()
      /usr/lib/go/src/pkg/encoding/xml/read.go:121 +0x51
  gopkg.in/amz.v3/ec2.(*EC2).query()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:165 +0x94d
  gopkg.in/amz.v3/ec2.(*EC2).Instances()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:561 +0x1d1
  github.com/juju/juju/provider/ec2.func·005()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:485 +0x5cf
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).waitVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:718 +0xfc
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).destroyVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:514 +0x22e
  github.com/juju/juju/provider/ec2.func·004()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:426 +0x8a

Goroutine 52 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac

Goroutine 78 (finished) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/environs.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/open.go:296 +0x70
  github.com/juju/juju/environs/jujutest.(*Tests).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:165 +0x1048
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrap()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs_test.go:1 +0x51
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3
==================
==================
WARNING: DATA RACE
Read by goroutine 59:
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:620 +0x55d
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).DecodeElement()
      /usr/lib/go/src/pkg/encoding/xml/read.go:133 +0x180
  encoding/xml.(*Decoder).Decode()
      /usr/lib/go/src/pkg/encoding/xml/read.go:121 +0x51
  gopkg.in/amz.v3/ec2.(*EC2).query()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:165 +0x94d
  gopkg.in/amz.v3/ec2.(*EC2).Volumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/volumes.go:134 +0x2b6
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).describeVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:730 +0x100
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).waitVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:714 +0x96
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).destroyVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:514 +0x22e
  github.com/juju/juju/provider/ec2.func·004()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:426 +0x8a

Previous write by goroutine 19:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/volumes.go:171 +0x122
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00
  runtime.gosched0()
      ?:0 +0xaf
  bytes.(*Buffer).WriteByte()
      /usr/lib/go/src/pkg/bytes/buffer.go:228 +0x58
  encoding/json.Indent()
      /usr/lib/go/src/pkg/encoding/json/indent.go:98 +0x390
  encoding/json.MarshalIndent()
      /usr/lib/go/src/pkg/encoding/json/encode.go:146 +0x152
  github.com/juju/juju/environs/tools.MarshalToolsMetadataProductsJSON()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/marshal.go:129 +0x452
  github.com/juju/juju/environs/tools.MarshalToolsMetadataJSON()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/marshal.go:36 +0x1ba
  github.com/juju/juju/environs/tools.WriteMetadata()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/simplestreams.go:496 +0x84
  github.com/juju/juju/environs/tools.MergeAndWriteMetadata()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/simplestreams.go:578 +0x2f8
  github.com/juju/juju/environs/testing.UploadFakeToolsVersions()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:189 +0x401
  github.com/juju/juju/environs/testing.(*ToolsFixture).UploadFakeTools()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:81 +0x4a8
  github.com/juju/juju/environs/testing.(*ToolsFixture).UploadFakeToolsToDirectory()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:60 +0x141
  github.com/juju/juju/environs/jujutest.(*Tests).SetUpTest()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:70 +0x1c4
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).SetUpTest()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/local_test.go:203 +0x2c5
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·002()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:721 +0x19a
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3

Goroutine 59 (running) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrapInstanceUserDataAndState()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/local_test.go:291 +0x264c
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3

Goroutine 19 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac
==================
==================
WARNING: DATA RACE
Read by goroutine 59:
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:620 +0x55d
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:365 +0x26df
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:618 +0x4b9
  encoding/xml.(*Decoder).unmarshalPath()
      /usr/lib/go/src/pkg/encoding/xml/read.go:647 +0x895
  encoding/xml.(*Decoder).unmarshal()
      /usr/lib/go/src/pkg/encoding/xml/read.go:470 +0x208a
  encoding/xml.(*Decoder).DecodeElement()
      /usr/lib/go/src/pkg/encoding/xml/read.go:133 +0x180
  encoding/xml.(*Decoder).Decode()
      /usr/lib/go/src/pkg/encoding/xml/read.go:121 +0x51
  gopkg.in/amz.v3/ec2.(*EC2).query()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2.go:165 +0x94d
  gopkg.in/amz.v3/ec2.(*EC2).Volumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/volumes.go:134 +0x2b6
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).describeVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:730 +0x100
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).waitVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:714 +0x96
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).destroyVolume()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:514 +0x22e
  github.com/juju/juju/provider/ec2.func·004()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:426 +0x8a

Previous write by goroutine 19:
  runtime.copy()
      /usr/lib/go/src/pkg/runtime/slice.c:120 +0x0
  encoding/xml.(*parentStack).push()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:901 +0x2bd
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:819 +0x58c
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:395 +0x2c7f
  encoding/xml.(*printer).marshalStruct()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:825 +0x624
  encoding/xml.(*printer).marshalValue()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:524 +0x12a8
  encoding/xml.(*Encoder).Encode()
      /usr/lib/go/src/pkg/encoding/xml/marshal.go:153 +0x83
  gopkg.in/amz.v3/ec2/ec2test.xmlMarshal()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/helpers.go:66 +0x102
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:123 +0x4ef
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.newFilter()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/filter.go:43 +0x267
  gopkg.in/amz.v3/ec2/ec2test.(*Server).describeVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/volumes.go:171 +0x122
  gopkg.in/amz.v3/ec2/ec2test.(*Server).serveHTTP()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server_internals.go:119 +0x3f9
  gopkg.in/amz.v3/ec2/ec2test.func·017()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/amz.v3/ec2/ec2test/server.go:79 +0x67
  net/http.HandlerFunc.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1220 +0x4d
  net/http.serverHandler.ServeHTTP()
      /usr/lib/go/src/pkg/net/http/server.go:1597 +0x1ca
  net/http.(*conn).serve()
      /usr/lib/go/src/pkg/net/http/server.go:1167 +0xc00
  runtime.gosched0()
      ?:0 +0xaf
  bytes.(*Buffer).WriteByte()
      /usr/lib/go/src/pkg/bytes/buffer.go:228 +0x58
  encoding/json.Indent()
      /usr/lib/go/src/pkg/encoding/json/indent.go:98 +0x390
  encoding/json.MarshalIndent()
      /usr/lib/go/src/pkg/encoding/json/encode.go:146 +0x152
  github.com/juju/juju/environs/tools.MarshalToolsMetadataProductsJSON()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/marshal.go:129 +0x452
  github.com/juju/juju/environs/tools.MarshalToolsMetadataJSON()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/marshal.go:36 +0x1ba
  github.com/juju/juju/environs/tools.WriteMetadata()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/simplestreams.go:496 +0x84
  github.com/juju/juju/environs/tools.MergeAndWriteMetadata()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/tools/simplestreams.go:578 +0x2f8
  github.com/juju/juju/environs/testing.UploadFakeToolsVersions()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:189 +0x401
  github.com/juju/juju/environs/testing.(*ToolsFixture).UploadFakeTools()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:81 +0x4a8
  github.com/juju/juju/environs/testing.(*ToolsFixture).UploadFakeToolsToDirectory()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/testing/tools.go:60 +0x141
  github.com/juju/juju/environs/jujutest.(*Tests).SetUpTest()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/environs/jujutest/tests.go:70 +0x1c4
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).SetUpTest()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/local_test.go:203 +0x2c5
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·002()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:721 +0x19a
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3

Goroutine 59 (running) created at:
  github.com/juju/juju/provider/ec2.(*ebsVolumeSource).DestroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/ebs.go:427 +0x20c
  github.com/juju/juju/provider/common.destroyVolumes()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:107 +0x267
  github.com/juju/juju/provider/common.destroyStorage()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:70 +0x2d1
  github.com/juju/juju/provider/common.Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/common/destroy.go:26 +0x1c9
  github.com/juju/juju/provider/ec2.(*environ).Destroy()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/environ.go:1175 +0x4d
  github.com/juju/juju/provider/ec2_test.(*localServerSuite).TestBootstrapInstanceUserDataAndState()
      /home/ubuntu/juju-core_1.26-alpha2/src/github.com/juju/juju/provider/ec2/local_test.go:291 +0x264c
  runtime.call16()
      /usr/lib/go/src/pkg/runtime/asm_amd64.s:338 +0x31
  reflect.Value.Call()
      /usr/lib/go/src/pkg/reflect/value.go:345 +0xaa
  gopkg.in/check%2ev1.func·003()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:772 +0x504
  gopkg.in/check%2ev1.func·001()
      /home/ubuntu/juju-core_1.26-alpha2/src/gopkg.in/check.v1/check.go:666 +0xf3

Goroutine 19 (running) created at:
  net/http.(*Server).Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1644 +0x2c1
  net/http.Serve()
      /usr/lib/go/src/pkg/net/http/server.go:1561 +0xac
==================
OK: 108 passed, 4 skipped
PASS
Found 7 data race(s)
FAIL github.com/juju/juju/provider/ec2 531.204s

Changed in juju-core:
status: New → Triaged
importance: Undecided → Medium
tags: added: 2.0-count
Changed in juju-core:
status: Triaged → In Progress
importance: Medium → Critical
assignee: nobody → Dave Cheney (dave-cheney)
milestone: none → 2.0-beta8
tags: added: blocker race-condition
Changed in juju-core:
status: In Progress → Fix Committed
Curtis Hovey (sinzui)
Changed in juju-core:
status: Fix Committed → Fix Released
affects: juju-core → juju
Changed in juju:
milestone: 2.0-beta8 → none
milestone: none → 2.0-beta8
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.