Skip to content
This repository has been archived by the owner on May 4, 2021. It is now read-only.

Ticket28159 rtts #282

Merged
merged 2 commits into from Oct 28, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Expand Up @@ -18,6 +18,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
incorrect (#28041)
- Stop removing results that are not away from some other X secs (#28103)
- Use secs-away when provided instead of data_period (#28105)
- Disable measuring RTTs (#28159)

## Added

Expand Down
2 changes: 1 addition & 1 deletion sbws/config.default.ini
Expand Up @@ -42,7 +42,7 @@ download_min = 5
download_target = 6
download_max = 10
# How many RTT measurements to make
num_rtts = 10
num_rtts = 0
# Number of downloads with acceptable times we must have for a relay before
# moving on
num_downloads = 5
Expand Down
2 changes: 1 addition & 1 deletion sbws/lib/resultdump.py
Expand Up @@ -476,7 +476,7 @@ def downloads(self):
def from_dict(d):
assert isinstance(d, dict)
return ResultSuccess(
d['rtts'], d['downloads'],
d['rtts'] or [], d['downloads'],
Result.Relay(
d['fingerprint'], d['nickname'], d['address'],
d['master_key_ed25519'], d['relay_average_bandwidth'],
Expand Down
6 changes: 4 additions & 2 deletions sbws/lib/v3bwfile.py
Expand Up @@ -302,7 +302,9 @@ def from_results(cls, results, secs_recent=None, secs_away=None,
return None
kwargs['desc_avg_bw_bs'] = \
results_recent[-1].relay_average_bandwidth
kwargs['rtt'] = cls.rtt_from_results(results_recent)
rtt = cls.rtt_from_results(results_recent)
if rtt:
kwargs['rtt'] = rtt
bw = cls.bw_bs_median_from_results(results_recent)
kwargs['bw_bs_mean'] = cls.bw_bs_mean_from_results(results_recent)
kwargs['bw_bs_median'] = cls.bw_bs_median_from_results(
Expand Down Expand Up @@ -380,7 +382,7 @@ def last_time_from_results(results):
def rtt_from_results(results):
# convert from miliseconds to seconds
rtts = [(round(rtt * 1000)) for r in results for rtt in r.rtts]
rtt = round(median(rtts))
rtt = round(median(rtts)) if rtts else None
return rtt

@staticmethod
Expand Down
2 changes: 1 addition & 1 deletion sbws/util/config.py
Expand Up @@ -236,7 +236,7 @@ def _validate_scanner(conf):
sec = 'scanner'
err_tmpl = Template('$sec/$key ($val): $e')
ints = {
'num_rtts': {'minimum': 1, 'maximum': 100},
'num_rtts': {'minimum': 0, 'maximum': 100},
'num_downloads': {'minimum': 1, 'maximum': 100},
'initial_read_request': {'minimum': 1, 'maximum': None},
'measurement_threads': {'minimum': 1, 'maximum': None},
Expand Down