Index: src/allmydata/mutable/servermap.py =================================================================== --- src/allmydata/mutable/servermap.py (revision ce32b5aba8165bda40f484f91d60e27dcc977d08) +++ src/allmydata/mutable/servermap.py (revision 9db2f65ebb8eaa4f6094f2f99eff928ba285f5f5) @@ -675,7 +675,5 @@ self._status.add_per_server_time(server, "query", started, elapsed) - if datavs: - self._good_servers.add(server) - else: + if not datavs: self._empty_servers.add(server) @@ -1410,4 +1408,6 @@ dl.addCallback(lambda verinfo, shnum=shnum, data=data: self._cache_good_sharedata(verinfo, shnum, now, data)) + dl.addCallback(lambda r: self._good_servers.add(server)) + ds.append(dl) # dl is a deferred list that will fire when all of the shares