Bug 1485273

Summary: ValueError with lsmcli system-read-cache-pct-update --read-pct "anything_but_int"
Product: Red Hat Enterprise Linux 7 Reporter: Jakub Krysl <jkrysl>
Component: libstoragemgmtAssignee: Gris Ge <fge>
Status: CLOSED ERRATA QA Contact: Jakub Krysl <jkrysl>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4   
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libstoragemgmt-1.5.0-2.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 15:36:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jakub Krysl 2017-08-25 09:08:57 UTC
Description of problem:
When calling lsmcli system-read-cache-pct-update with argument --read-pct and value that is not an integer, throws back ValueError without catching it.

Version-Release number of selected component (if applicable):
1.4.0-3

How reproducible:
100%

Steps to Reproduce:
1.lsmcli -u "sim://" system-read-cache-pct-update --sys sim-01 --read-pct "anything_but_int"


Actual results:
# lsmcli -u "sim://" system-read-cache-pct-update --sys sim-01 --read-pct "15.4"
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 66, in cmd_line_wrapper
    cli.process(c)
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 1792, in process
    self.args.func(self.args)
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 1658, in system_read_cache_pct_update
    read_pct = int(args.read_pct)
ValueError: invalid literal for int() with base 10: '15.4'


# lsmcli -u "sim+ssl://" system-read-cache-pct-update --sys sim-01 --read-pct "not_int"
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 66, in cmd_line_wrapper
    cli.process(c)
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 1792, in process
    self.args.func(self.args)
  File "/usr/lib/python2.7/site-packages/lsm/lsmcli/cmdline.py", line 1658, in system_read_cache_pct_update
    read_pct = int(args.read_pct)
ValueError: invalid literal for int() with base 10: 'not_int'


Expected results:
INVALID_ARGUMENT(101): Invalid read_pct, should be integer 

Additional info:

Comment 3 Jakub Krysl 2017-10-12 08:28:30 UTC
Fixed in libstoragemgmt-1.5.0-2.el7:
# lsmcli -u "sim+ssl://" system-read-cache-pct-update --sys sim-01 --read-pct "not_int"
INVALID_ARGUMENT(101): invalid literal for int() with base 10: 'not_int'

Comment 6 errata-xmlrpc 2018-04-10 15:36:35 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:0864