From 98bb92ecf463e94ae1de19ea9fafddf682b438da Mon Sep 17 00:00:00 2001 From: Todd Gruben Date: Wed, 25 Jun 2014 19:35:48 -0500 Subject: [PATCH] check for bad etcd entry --- core/etcd.go | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/core/etcd.go b/core/etcd.go index 2f41ef386..3ecc679e8 100644 --- a/core/etcd.go +++ b/core/etcd.go @@ -176,10 +176,19 @@ func (self *TopologyMapper) handlenode(node *etcd.Node) error { var process_uuid util.GUID var process *db.Process var err error - process_uuid, err = util.ParseGUID(node.Value) - if err != nil { - log.Println("Bad Process Guid", key) - return errors.New("No Process Id") + + if len(bits) > 8 { + if bits[8] != "process" { + return errors.New("no process") + } + + process_uuid, err = util.ParseGUID(node.Value) + if err != nil { + log.Println("Bad Process Guid", key) + return errors.New("No Process Id") + } + } else { + return err } if len(bits) <= 1 || bits[0] != "db" {