// Servers that are writeable
writableServers := map[string]struct{}{}
for _, url := range kc.WritableLocalRoots() {
- writableServers[cs.Get(RemoveProtocolPrefix(url))] = struct{}{}
+ writableServers[cs.Get(url)] = struct{}{}
}
for block, _ := range underReplicated {
// The from field should include the protocol.
ps.From = append(ps.From, cs.Get(host))
} else if len(ps.To) < maxToFields {
- _, writable := writableServers[server]
+ _, writable := writableServers[host]
if writable {
ps.To = append(ps.To, server)
}
PullServers{To: []string{"keep3:25110"},
From: []string{"keep1:25108", "keep0:25107"}})
+ c.Check(
+ CreatePullServers(cs,
+ stringSet("keep0:25107", "keep1:25108"),
+ stringSet("https://keep3:25110", "http://keep2:25109",
+ "https://keep1:25108", "http://keep0:25107"),
+ []string{"https://keep3:25110", "http://keep2:25109",
+ "https://keep1:25108", "http://keep0:25107"},
+ 1),
+ DeepEquals,
+ PullServers{To: []string{"keep3:25110"},
+ From: []string{"https://keep1:25108", "http://keep0:25107"}})
+
c.Check(
CreatePullServers(cs,
stringSet("keep0:25107", "keep1:25108"),