You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following occurs on the network status monitor which uses forgetful node storage:
File "/Users/derek/Documents/Github/repos/monitor/nucypher-monitor/monitor/crawler.py", line 328, in learn_from_teacher_node
new_nodes = super().learn_from_teacher_node(*args, **kwargs)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 764, in learn_from_teacher_node
remembered_seednodes = self.load_seednodes(record_fleet_state=False)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 339, in load_seednodes
nodes_restored_from_storage = self.read_nodes_from_storage() if read_storage else []
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 353, in read_nodes_from_storage
node_domain = node.domain.decode('utf-8')
builtins.AttributeError: 'Ursula' object has no attribute 'domain'
Discord conversation:
derek09/29/2020
@dnunez it's forgetful. It's the monitor's SQLiteForgetfulStorage
dnunez09/29/2020
Right.... So that must be it
The type of nodes that storages fetch are different. That's actually not a good API...
...
dnunez09/30/2020
@jMyles @derek the thing is that sprouts have domain but matured nodes don't, as they use it to construct the serving_domain attribute. Maybe we should simplify that and just have domain ?
jMyles09/30/2020
Absolutely.
For a primordial variant of a polymorhpic class to have an attribute that is not either an attribute or a method on a commensurate evolved variant is an antipattern.
In my opinion.
derek09/30/2020
:thumbsup: Agreed!
The text was updated successfully, but these errors were encountered:
@cygnusv running into the related problem with the status monitor using nucypher 3.0.0b4. Instead of domain it is now learning_domain.
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/cli/options.py", line 163, in wrapper
return func(**kwargs)
File "/Users/derek/Documents/Github/repos/monitor/nucypher-monitor/monitor/cli/main.py", line 96, in crawl
influx_port=influx_port)
File "/Users/derek/Documents/Github/repos/monitor/nucypher-monitor/monitor/crawler.py", line 261, in __init__
*args, **kwargs)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 251, in __init__
self.remember_node(node, eager=True)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 393, in remember_node
self.node_storage.store_node_metadata(node=node)
File "/Users/derek/Documents/Github/repos/monitor/nucypher-monitor/monitor/crawler.py", line 58, in store_node_metadata
self.__write_node_metadata(node)
File "/Users/derek/Documents/Github/repos/monitor/nucypher-monitor/monitor/crawler.py", line 98, in __write_node_metadata
node_dict = node.node_details(node=node)
File "/Users/derek/.local/share/virtualenvs/nucypher-monitor-3hnjUmmD/lib/python3.7/site-packages/nucypher/network/nodes.py", line 1385, in node_details
"domain": node.learning_domain,
AttributeError: 'Ursula' object has no attribute 'learning_domain'
The following occurs on the network status monitor which uses forgetful node storage:
Discord conversation:
The text was updated successfully, but these errors were encountered: