Vertica install fails with error "invalid literal fir init() with base '2.0G'"

book

Article ID: 224647

calendar_today

Updated On:

Products

CA Performance Management - Usage and Administration DX NetOps

Issue/Introduction

When installing or upgrading the DX NetOps Performance Management Data Repository to Vertica 10.1.1-0 the following error is seen. The error is found in the installation logs.

>> Installing software (rpm or deb)...

Installing rpm on 2 hosts....
installing node....  <IPAddress>
Error: invalid literal for int() with base 10: '2.0G'
Traceback (most recent call last):
  File "/opt/vertica/oss/python3/lib/python3.7/site-packages/vertica/install/__init__.py", line 1432, in run_install
    _installMain(options)
  File "/opt/vertica/oss/python3/lib/python3.7/site-packages/vertica/install/__init__.py", line 1061, in _installMain
    install_RPMs(hostsToUpgradeRPM, options, installerSSH, running_as, get_os_shortname())
  File "/opt/vertica/oss/python3/lib/python3.7/site-packages/vertica/install/__init__.py", line 786, in install_RPMs
    options.install_package_dependencies)
  File "/opt/vertica/oss/python3/lib/python3.7/site-packages/vertica/network/SSH.py", line 397, in installNode
    if int(df_out) < sz:
ValueError: invalid literal for int() with base 10: '2.0G'
Installation FAILED with errors.

Cause

The root user has an alias set up for the df command.

Environment

DX NetOps Performance Management releases r21.2.3 or newer that include the Vertica 10.x release update

Resolution

When the Vertica installation runs the root user is utilized to run the following command on the cluster nodes.

df --portability /tmp | tail -1 | awk '{print $4}'

If that command returns a non-numeric value it will trigger an install failure. For example if the following is run we see the non-numeric value returned.

[[email protected]<NodeName> ~]# df --portability /tmp | tail -1 | awk '{print $4}'
2.0G

As the root user running the following to check for configured aliases does return one for the df command.

#alias |grep df
Alias df='df -h'

To resolve the issue disable the alias for df command for the root user.

After the install is run to completion, the alias can be reconfigured.