Message ID | 1449767223-52696-1-git-send-email-smayhew@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 12/10/2015 12:07 PM, Scott Mayhew wrote: > This will prevent a backtrace like this from occurring in 'mountstats > nfsstat' if a new NFSv4 operation is added to the kernel but not to the > Nfsv4ops list in mountstats.py: > > Traceback (most recent call last): > File "/sbin/mountstats", line 988, in <module> > res = main() > File "/sbin/mountstats", line 977, in main > return args.func(args) > File "/sbin/mountstats", line 792, in nfsstat_command > v4stats.accumulate_iostats(acc_stats) > File "/sbin/mountstats", line 566, in accumulate_iostats > self.__rpc_data[op] = list(map(add, self.__rpc_data[op], > new_stats.__rpc_data[op])) > KeyError: 'SEEK' > > Signed-off-by: Scott Mayhew <smayhew@redhat.com> Committed... steved. > --- > tools/mountstats/mountstats.py | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/tools/mountstats/mountstats.py b/tools/mountstats/mountstats.py > index 011bb42..1e2811f 100644 > --- a/tools/mountstats/mountstats.py > +++ b/tools/mountstats/mountstats.py > @@ -563,7 +563,10 @@ class DeviceData: > for the nfsstat command. > """ > for op in new_stats.__rpc_data['ops']: > - self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) > + try: > + self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) > + except KeyError: > + continue > > def __print_rpc_op_stats(self, op, sample_time): > """Print generic stats for one RPC op > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/tools/mountstats/mountstats.py b/tools/mountstats/mountstats.py index 011bb42..1e2811f 100644 --- a/tools/mountstats/mountstats.py +++ b/tools/mountstats/mountstats.py @@ -563,7 +563,10 @@ class DeviceData: for the nfsstat command. """ for op in new_stats.__rpc_data['ops']: - self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) + try: + self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) + except KeyError: + continue def __print_rpc_op_stats(self, op, sample_time): """Print generic stats for one RPC op
This will prevent a backtrace like this from occurring in 'mountstats nfsstat' if a new NFSv4 operation is added to the kernel but not to the Nfsv4ops list in mountstats.py: Traceback (most recent call last): File "/sbin/mountstats", line 988, in <module> res = main() File "/sbin/mountstats", line 977, in main return args.func(args) File "/sbin/mountstats", line 792, in nfsstat_command v4stats.accumulate_iostats(acc_stats) File "/sbin/mountstats", line 566, in accumulate_iostats self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) KeyError: 'SEEK' Signed-off-by: Scott Mayhew <smayhew@redhat.com> --- tools/mountstats/mountstats.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)