From 60c858a5291da6757ca6798178f4e67f77dd4122 Mon Sep 17 00:00:00 2001 From: Lewis Marshall Date: Mon, 31 Jul 2017 14:58:19 +0100 Subject: [PATCH] swarm/api: make api.NewManifest synchronous (#14880) Previously, NewManifest was asynchronous so subsequent code which tried to use the returned manifest could error as the manifest was not yet persisted. --- cmd/swarm/run_test.go | 1 + cmd/swarm/upload_test.go | 2 -- swarm/api/manifest.go | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/cmd/swarm/run_test.go b/cmd/swarm/run_test.go index 05cbb27f1d..aaaf9e1e53 100644 --- a/cmd/swarm/run_test.go +++ b/cmd/swarm/run_test.go @@ -161,6 +161,7 @@ func newTestNode(t *testing.T, dir string) *testNode { conf := &node.Config{ DataDir: dir, IPCPath: "bzzd.ipc", + NoUSB: true, } n, err := node.New(conf) if err != nil { diff --git a/cmd/swarm/upload_test.go b/cmd/swarm/upload_test.go index 5b74dd4f13..5656186e1c 100644 --- a/cmd/swarm/upload_test.go +++ b/cmd/swarm/upload_test.go @@ -27,8 +27,6 @@ import ( // TestCLISwarmUp tests that running 'swarm up' makes the resulting file // available from all nodes via the HTTP API func TestCLISwarmUp(t *testing.T) { - t.Skip("flaky test") - // start 3 node cluster t.Log("starting 3 node cluster") cluster := newTestCluster(t, 3) diff --git a/swarm/api/manifest.go b/swarm/api/manifest.go index e251620a75..90f287677b 100644 --- a/swarm/api/manifest.go +++ b/swarm/api/manifest.go @@ -63,7 +63,7 @@ func (a *Api) NewManifest() (storage.Key, error) { if err != nil { return nil, err } - return a.Store(bytes.NewReader(data), int64(len(data)), nil) + return a.Store(bytes.NewReader(data), int64(len(data)), &sync.WaitGroup{}) } // ManifestWriter is used to add and remove entries from an underlying manifest