-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[INDY-1175] Fixes for vaildator-info #681
Conversation
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
plenum/server/node.py
Outdated
@@ -538,6 +538,8 @@ def on_view_change_start(self): | |||
Notifies node about the fact that view changed to let it | |||
prepare for election | |||
""" | |||
self.view_changer._start_view_change_ts = self.utc_epoch() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do access a field staring with _
here?
plenum/server/node.py
Outdated
@@ -538,6 +538,8 @@ def on_view_change_start(self): | |||
Notifies node about the fact that view changed to let it | |||
prepare for election | |||
""" | |||
self.view_changer._start_view_change_ts = self.utc_epoch() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we also track the view change we start a chain of view changes in addition to the VC time?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you mean, that it should be a list of (propogated_view_no, vc_start_time)
tuple?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mean a new field (or a new item in a tuple). The new field should show the viewNo we start a view change from. We may have multiple rounds of viewNo changing during the view change.
Example: startViewNo=13, currentViewNo=14, viewChangeInProgress=True
so, it means that we were on viewNo=12, tried viewNo=13, failed for some reasons (a new primary is unavailable for some reasons for example as we use round robin) , start viewNo=14, and currently trying to complete viewNo=14
@@ -363,7 +364,12 @@ def __replicas_status(self): | |||
def _get_node_metrics(self): | |||
metrics = {} | |||
for metrica in self._node.monitor.metrics()[1:]: | |||
metrics[metrica[0]] = self._prepare_for_json(metrica[1]) | |||
if metrica[0] == 'master request latencies': |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about ordered request counts
and ordered request durations
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW it's not so good that we use string constants and not enums here...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Item ordered request counts
is a dict of instance id
as a key and count of ordered txns
.
Similar to previous, ordered request durations
is a map of instance id
as a key and time for ordering all requests as a value.
Other words, length of this parameters equal to replica's count
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
Signed-off-by: Andrew Nikitin <andrew.nikitin@dsr-corporation.com>
test this please |
No description provided.