| Index: tools/resource_prefetch_predictor/prefetch_predictor_tool.py
|
| diff --git a/tools/resource_prefetch_predictor/prefetch_predictor_tool.py b/tools/resource_prefetch_predictor/prefetch_predictor_tool.py
|
| index bbb6162bef3c87fa6a214bf898bc71878f35c8f3..fad71305bbbe46a8bccdd3ffa286023bb0eb9ebb 100755
|
| --- a/tools/resource_prefetch_predictor/prefetch_predictor_tool.py
|
| +++ b/tools/resource_prefetch_predictor/prefetch_predictor_tool.py
|
| @@ -27,11 +27,13 @@ class Entry(object):
|
| """Represents an entry in the predictor database."""
|
| HEADER = (
|
| 'score,main_page_url,resource_type,number_of_hits,number_of_misses,'
|
| - 'consecutive_misses,average_position,confidence,resource_url')
|
| + 'consecutive_misses,average_position,confidence,has_validators,'
|
| + 'always_revalidate,resource_url')
|
|
|
| def __init__(
|
| self, main_page_url, resource_url, resource_type, number_of_hits,
|
| - number_of_misses, consecutive_misses, average_position, priority):
|
| + number_of_misses, consecutive_misses, average_position, priority,
|
| + has_validators, always_revalidate):
|
| self.main_page_url = main_page_url
|
| self.resource_url = resource_url
|
| self.resource_type = resource_type
|
| @@ -40,6 +42,8 @@ class Entry(object):
|
| self.consecutive_misses = int(consecutive_misses)
|
| self.average_position = int(average_position)
|
| self.priority = int(priority)
|
| + self.has_validators = bool(int(has_validators))
|
| + self.always_revalidate = bool(int(always_revalidate))
|
| self.confidence = float(number_of_hits) / (
|
| number_of_hits + number_of_misses)
|
| self.score = self._Score()
|
| @@ -58,11 +62,11 @@ class Entry(object):
|
| return Entry(*row)
|
|
|
| def __str__(self):
|
| - return '%f,%s,%d,%d,%d,%d,%d,%f,%d\t%s' % (
|
| + return '%f,%s,%d,%d,%d,%d,%d,%f,%d,%d,%d\t%s' % (
|
| self.score, self.main_page_url, self.resource_type,
|
| self.number_of_hits, self.number_of_misses, self.consecutive_misses,
|
| self.average_position, self.confidence, self.priority,
|
| - self.resource_url)
|
| + self.has_validators, self.always_revalidate, self.resource_url)
|
|
|
|
|
| def FilterAndSort(entries, domain):
|
| @@ -81,7 +85,8 @@ def DatabaseStats(filename, domain):
|
| connection = sqlite3.connect(filename)
|
| c = connection.cursor()
|
| query = ('SELECT main_page_url, resource_url, resource_type, number_of_hits, '
|
| - 'number_of_misses, consecutive_misses, average_position, priority '
|
| + 'number_of_misses, consecutive_misses, average_position, priority, '
|
| + 'has_validators, always_revalidate '
|
| 'FROM resource_prefetch_predictor_host')
|
| entries = [Entry.FromRow(row) for row in c.execute(query)]
|
| prefetched = FilterAndSort(entries, domain)
|
|
|