From 2fdd2c480e9acb23a4233e59ae14df0a069474e1 Mon Sep 17 00:00:00 2001 From: Clay Gerrard Date: Wed, 26 Oct 2016 17:38:51 +0200 Subject: [PATCH] Better error messages in go/probe The go/probe tests requrie that you have an object-1.ring.gz to allow the daemons to load because they stub LoadPolicies with a fake. Change-Id: I7a12c0291b443f626b0abf259e7e4b95ee9c9151 --- go/objectserver/replicator.go | 2 +- go/probe/base.go | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/go/objectserver/replicator.go b/go/objectserver/replicator.go index 8df53331f1..4a3bfdd969 100644 --- a/go/objectserver/replicator.go +++ b/go/objectserver/replicator.go @@ -937,7 +937,7 @@ func NewReplicator(serverconf hummingbird.Config, flags *flag.FlagSet) (hummingb continue } if replicator.Rings[policy.Index], err = hummingbird.GetRing("object", hashPathPrefix, hashPathSuffix, policy.Index); err != nil { - return nil, fmt.Errorf("Unable to load ring.") + return nil, fmt.Errorf("Unable to load ring for Policy %d.", policy.Index) } } devices_flag := flags.Lookup("devices") diff --git a/go/probe/base.go b/go/probe/base.go index b0d306b65c..43fa1d4d66 100644 --- a/go/probe/base.go +++ b/go/probe/base.go @@ -20,6 +20,7 @@ import ( "flag" "fmt" "io/ioutil" + "log" "net" "net/http" "net/http/httptest" @@ -180,6 +181,7 @@ func (e *Environment) ObjExists(server int, timestamp string, policy int) bool { // NewEnvironment creates a new environment. Arguments should be a series of key, value pairs that are added to the object server configuration file. func NewEnvironment(settings ...string) *Environment { + log.SetFlags(log.LstdFlags | log.Lshortfile) oldLoadPolicies := hummingbird.LoadPolicies hummingbird.LoadPolicies = func() hummingbird.PolicyList { return hummingbird.PolicyList(map[int]*hummingbird.Policy{ @@ -234,13 +236,19 @@ func NewEnvironment(settings ...string) *Environment { _, _, server, _, _ := objectserver.GetServer(conf, &flag.FlagSet{}) ts.Config.Handler = server.GetHandler(conf) - replicator, _ := objectserver.NewReplicator(conf, &flag.FlagSet{}) + replicator, err := objectserver.NewReplicator(conf, &flag.FlagSet{}) + if err != nil { + log.Fatal(err) + } replicator.(*objectserver.Replicator).Rings[0] = env.ring replicator.(*objectserver.Replicator).Rings[1] = env.ring trs.Config.Handler = replicator.(*objectserver.Replicator).GetHandler() replicatorServer := &TestReplicatorWebServer{Server: trs, host: host, port: port, root: driveRoot, replicator: replicator.(*objectserver.Replicator)} - auditor, _ := objectserver.NewAuditor(conf, &flag.FlagSet{}) + auditor, err := objectserver.NewAuditor(conf, &flag.FlagSet{}) + if err != nil { + log.Fatal(err) + } env.ring.(*FakeRing).devices = append(env.ring.(*FakeRing).devices, &hummingbird.Device{ Id: i, Device: "sda", Ip: host, Port: port, Region: 0, ReplicationIp: trsHost, ReplicationPort: trsPort, Weight: 1, Zone: i,