Importing descriptors fails after database deletion
Suppose I want to import e.g. server descriptors for a second time after I removed my database (but still have them in data
) and run something like
./tor-metrics-db.py --start 01-09-2021 --end 10-09-2021 --only server-descriptor
.
I'd expect that either the descriptors get re-downloaded again and used or the ones in data
get picked up. Instead here is what I get:
File "./tor-metrics-db.py", line 116, in <module>
main()
File "./tor-metrics-db.py", line 106, in main
known_types[k](g, bDB, should_index=args.index, whitelist=args.whitelist)
File "/home/gk/experimental-metrics-db/extractors/server_descriptor.py", line 122, in process_descriptor_entries
for desc in entries:
File "/usr/lib/python3/dist-packages/tqdm/_tqdm.py", line 979, in __iter__
for obj in iterable:
File "/home/gk/experimental-metrics-db/fetch.py", line 34, in get_entries_concurrent
f.download(out_dir, overwrite=True)
File "/usr/local/lib/python3.7/dist-packages/stem-1.8.0-py3.7.egg/stem/descriptor/collector.py", line 336, in download
actual_hash = hashlib.sha256(prior_file.read()).hexdigest()
TypeError: Unicode-objects must be encoded before hashing