Procházet zdrojové kódy

Make ReindexNode deterministic

Vadim Markovtsev před 7 roky
rodič
revize
3caa972734
1 změnil soubory, kde provedl 6 přidání a 3 odebrání
  1. 6 3
      toposort/toposort.go

+ 6 - 3
toposort/toposort.go

@@ -79,10 +79,13 @@ func (g *Graph) ReindexNode(node string) {
 	if !ok {
 		return
 	}
-	i := 1
+	keys := []string{}
 	for key := range children {
-		children[key] = i
-		i++
+		keys = append(keys, key)
+	}
+	sort.Strings(keys)
+	for i, key := range keys {
+		children[key] = i + 1
 	}
 }