Giter Club home page Giter Club logo

go-gpdb's People

Contributors

amilkh avatar chewygranola avatar faisaltheparttimecoder avatar scottbronkema avatar vzaigrin avatar zerpet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

go-gpdb's Issues

GPDB CC 6.x installation error

When I try to download CC (6.0.0) - I got error about EULA:


./gpdb -d download -v 6.1.0 -p gpcc
.... 
DEBU[2019-12-10 10:31:36] Requesting data from the url: https://network.pivotal.io/api/v2/products/pivotal-gpdb/releases/495851/eula_acceptance  file=request.go:100
FATA[2019-12-10 10:31:37] Encountered invalid status code from http: 404  file=request.go:113

If I download manually CC to src directory and start install a got error about GPMMON :

./gpdb -d install -p gpcc -c 6.0.0 
....
INFO[2019-12-10 10:36:14] Checking if GPMMON process is running         file=installGPCC.go:174
DEBU[2019-12-10 10:36:14] Executing the command "pgrep" with output using the arguments [gpmmon]  file=bash.go:88
FATA[2019-12-10 10:36:14] GPPMON process is not running, the installation of gpperfmon was a failure, err: &{%!$(string=failed when executing OS command output, err: exit status 1)}v  file=installGPCC.go:177

As I understand there are some changes in 6.x about gpperfmon_install an CC

Rename gpdb binary to go-gpdb

Have shown the tool to many folk and they get confused with running commands like ./gpdb download which could instead be ./go-gpdb download.

Unable to download v7.0.0.beta.0 (RHEL/CentOS 7 no longer supported)

Looks like download fails because tool is currently hardcoded to look for RHEL 7 link, which does not exist for GP7 (since RHEL/CentOS 7 is no longer supported).

Was able to get a preliminary version working on bento/rockylinux-8.7 that can download and install GP6 successfully. I'll check download/install of GP7 next.

ssh error~

INFO[2019-11-15 15:51:42] Downloading completed ....
INFO[2019-11-15 15:51:42] Downloaded file available at: src/gpdbinstall/download/greenplum-db-6.1.0-rhel7-x86_64.rpm
INFO[2019-11-15 15:51:42] Installation the gpdb version 6.1.0, that was just downloaded
INFO[2019-11-15 15:51:42] Running the installation for the product: gpdb
INFO[2019-11-15 15:51:42] Found host file at location: /root/hostfile
INFO[2019-11-15 15:51:42] Starting the program to install GPDB version: 6.1.0
INFO[2019-11-15 15:51:42] Running precheck before installing the gpdb version: 6.1.0
INFO[2019-11-15 15:51:42] Running Installation of gpdb version: 6.1.0
INFO[2019-11-15 15:51:42] Found a rpm binary for the version 6.1.0: src/gpdbinstall/download/greenplum-db-6.1.0-rhel7-x86_64.rpm
INFO[2019-11-15 15:51:42] Using the rpm file to install the GPDB Product: src/gpdbinstall/download/greenplum-db-6.1.0-rhel7-x86_64.rpm, this might take several minutes....
No Presto metadata available for base
No Presto metadata available for updates
INFO[2019-11-15 15:51:57] Setting up & Checking if the host is reachable
INFO[2019-11-15 15:51:57] Running gpssh-exkeys to enable keyless access on this server
INFO[2019-11-15 15:51:57] Setting up the ssh Copy ID for all the host(s)
[ERROR]: Failed to ssh to localhost.localdomain. Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

[ERROR]: Expected passwordless ssh to host localhost.localdomain
INFO[2019-11-15 15:52:00] Building and executing the gpinitsystem...
INFO[2019-11-15 15:52:00] Searching & Generating the port to be used for database installation
INFO[2019-11-15 15:52:00] Obtaining ports to be set for PRIMARY_PORT
WARN[2019-11-15 15:52:00] Didn't find PRIMARY_PORT in the file, setting it to default value: 30000
INFO[2019-11-15 15:52:00] Obtaining ports to be set for MASTER_PORT
WARN[2019-11-15 15:52:00] Didn't find MASTER_PORT in the file, setting it to default value: 3000
INFO[2019-11-15 15:52:00] Creating the gpinitsystem config file at: src/gpdbinstall/temp/gpinitsystemconfig_6.1.0_20191115155200
INFO[2019-11-15 15:52:00] Finalizing the gpinitsystem for the single mode database installation
INFO[2019-11-15 15:52:00] Stopping all the database running on this host, to free up semaphore for this installation
INFO[2019-11-15 15:52:00] Cleaning up gpcc process is found any
INFO[2019-11-15 15:52:00] All Postgres process are stopped on this server
INFO[2019-11-15 15:52:00] Executing the gpinitsystem to initialize the database
20191115:15:52:00:002016 gpinitsystem:localhost:root-[INFO]:-Checking configuration parameters, please wait...
20191115:15:52:00:002016 gpinitsystem:localhost:root-[FATAL]:-Unable to run this script as root Script Exiting!
FATA[2019-11-15 15:52:00] Failed while waiting for the command /usr/local/greenplum-db-6.1.0/bin/gpinitsystem err: exit status 2

Add an option to gpdb env to list only

When you run gpdb env it displays a list of GPDB instances installed and it prompts what instance you want to use.

We would like to have an option like --list to only lists all the environments installed, without promting which one to use.

[Feature Request] Command option to print environment variables to standard output

We could have a command option as gpdb env-vars to print all the variables that make it to the Env files in gpdbinstall/env/. This is ideal to then run in Bash eval $(gpdb env-vars ID) and load all the variables in the session.

Ideally, it should look something like this:

$ gpdb env-vars 2
export GPHOME=/usr/local/greenplum-db-5.15.1
export PYTHONPATH=$GPHOME/lib/python
export PYTHONHOME=$GPHOME/ext/python
export PATH=$GPHOME/bin:$PYTHONHOME/bin:$PATH
export LD_LIBRARY_PATH=$GPHOME/lib:$PYTHONHOME/lib:$LD_LIBRARY_PATH
export OPENSSL_CONF=$GPHOME/etc/openssl.cnf
export MASTER_DATA_DIRECTORY=/data/master/gp_5.15.1_20190205145206-1
export PGPORT=3007
export PGDATABASE=gpadmin
export singleOrMulti=multi
$ eval $(gpdb env-vars 2)
$ env
MASTER_DATA_DIRECTORY=/data/master/gp_5.15.1_20190205145206-1
GPHOME=/usr/local/greenplum-db-5.15.1
[...]

GPDB install command accepts vague version numbers

The commadn gpdb install does not perform validation on the input of -v / --version flag. This is fine if the user inputs garbage like asifhasldfj, but it might lead to unexpected behaviour for vague specifications like 6.0.

Running gpdb install -v 6.0 might match a file name 5.16.0, which will install an undesired version. This behaviour will happen with 5.1, as it can potentially match version 5.11.x.

We can do a validation check using a regex to contain at least 3 numbers and 2 dots.

The new install feature still asks for a version flag

$ ./gpdb-dev-311 install --username aitorfoo
INFO[2019-04-29 09:06:44] Showing all the files on the download folder
INFO[2019-04-29 09:06:44] Size of the directory "/usr/local/src/gpdbinstall/download/": 2073 MB

Below are all the downloaded product available

Index   File                                            Size(MB)     Path
------  ----------------------------------------------  -----------  -------------------------------------------------------------------------------------------------------
1       greenplum-db-5.11.3-rhel6-x86_64.zip            190          /usr/local/src/gpdbinstall/download/greenplum-db-5.11.3-rhel6-x86_64.zip
2       greenplum-db-5.12.0-rhel6-x86_64.zip            256          /usr/local/src/gpdbinstall/download/greenplum-db-5.12.0-rhel6-x86_64.zip
3       greenplum-db-5.14.0-rhel6-x86_64.zip            256          /usr/local/src/gpdbinstall/download/greenplum-db-5.14.0-rhel6-x86_64.zip
4       greenplum-db-5.16.0-rhel6-x86_64.zip            265          /usr/local/src/gpdbinstall/download/greenplum-db-5.16.0-rhel6-x86_64.zip
5       greenplum-db-5.17.0-rhel6-x86_64.zip            268          /usr/local/src/gpdbinstall/download/greenplum-db-5.17.0-rhel6-x86_64.zip
6       greenplum-db-5.18.0-rhel6-x86_64.zip            269          /usr/local/src/gpdbinstall/download/greenplum-db-5.18.0-rhel6-x86_64.zip
7       greenplum-db-5.4.1-rhel7-x86_64.zip             153          /usr/local/src/gpdbinstall/download/greenplum-db-5.4.1-rhel7-x86_64.zip


Enter your choice from the above list (eg.s 1 or 2 etc): 6
Error: required flag(s) "version" not set
Usage:
  gpdb install [flags]

Aliases:
  install, i

Examples:
For examples refer: https://github.com/pivotal-gss/go-gpdb/tree/master/gpdb#install

Flags:
  -c, --ccversion string   What is the version of GPCC that you can to install (for only -p gpcc)?
  -h, --help               help for install
  -p, --product string     What product do you want to Install? [OPTIONS: gpdb, gpcc, gpextras] (default "gpdb")
      --standby            OPTIONAL: Install standby if the standby host is available
  -u, --username string    What is your PivotalID, this will be used to name your enviromental file?
  -v, --version string     OPTIONAL: Which GPDB version software do you want to install?

Global Flags:
  -d, --debug   Enable verbose or debug logging

$

gpdb download of v7.0.0.beta.0 fails with Get "": unsupported protocol scheme ""

  • CentOS Linux release 8.5.2111:
[gpadmin@RHEL8-m ~]$ cat /etc/redhat-release 
CentOS Linux release 8.5.2111
[gpadmin@RHEL8-m ~]$ 
  • Latest version of gpdb in use:
[gpadmin@RHEL8-m ~]$ cd ~
[gpadmin@RHEL8-m ~]$ curl -s https://api.github.com/repos/greenplum-db/go-gpdb/releases/latest \
>       | grep "browser_download_url.*gpdb" \
>       | grep -v "browser_download_url.*datalab" \
>       | cut -d : -f 2,3 | tr -d \" \
>       | wget -qi - -O gpdb
[gpadmin@RHEL8-m ~]$ 
[gpadmin@RHEL8-m ~]$ 
[gpadmin@RHEL8-m ~]$ 
[gpadmin@RHEL8-m ~]$ chmod +x gpdb
[gpadmin@RHEL8-m ~]$ 
  • gpdb download error:
[gpadmin@RHEL8 ~]$ ./gpdb download
INFO[2023-01-20 13:20:19] Starting the program to download the product 
INFO[2023-01-20 13:20:19] Getting the access token from the UAA token provided. 
INFO[2023-01-20 13:20:20] Obtaining the product ID                     
INFO[2023-01-20 13:20:21] Obtaining the releases for product: VMware Tanzu™ Greenplum® 
INFO[2023-01-20 13:20:22] Checking for the available version           

Please select the version from the drop down list

Index      Product Version
---------  ------------------------
1          7.0.0-beta.0
<SNIP>
Enter your choice from the above list (eg.s 1 or 2 etc): 1
INFO[2023-01-20 13:20:33] Obtaining the files under the greenplum version: 7.0.0-beta.0 
INFO[2023-01-20 13:20:33] Checking for the version to download         
INFO[2023-01-20 13:20:33] Extracting the filename and the size of the product file. 
FATA[2023-01-20 13:20:33] Encountered error when requesting the data from http: Get "": unsupported protocol scheme "" 
[gpadmin@RHEL8 ~]$ 

Download command fails to download GPCC if GP installation ZIP is already present

The command gpdb download -p gpcc might falsely return binary already available if the Greenplum binaries are already downloaded. Check the below snippet:

[gpadmin@dev-m ~]$ ./gpdb-dev download -p gpcc
INFO[2019-04-25 15:40:34] Starting the program to download the product
INFO[2019-04-25 15:40:34] Getting the access token from the UAA token provided.
INFO[2019-04-25 15:40:35] Obtaining the product ID
INFO[2019-04-25 15:40:36] Obtaining the releases for product: Pivotal Greenplum
INFO[2019-04-25 15:40:36] Checking for the available version

Please select the version from the drop down list

Index      Product Version
---------  ------------------------
1          6.0.0-beta.2
2          6.0.0-beta.1
3          5.18.0
[...]

Enter your choice from the above list (eg.s 1 or 2 etc): 3
INFO[2019-04-25 15:40:44] Obtaining the files under the greenplum version: 5.18.0
INFO[2019-04-25 15:40:44] Checking for the version to download

Please select the product from the drop down list

Index       Products
----------  ------------------------------------------------
1           Greenplum Command Center 4.6.1


Enter your choice from the above list (eg.s 1 or 2 etc): 1
INFO[2019-04-25 15:40:47] Extracting the filename and the size of the product file.
INFO[2019-04-25 15:40:47] Accepting the EULA (End User License Agreement): https://network.pivotal.io/api/v2/products/pivotal-gpdb/releases/338232/eula_acceptance
INFO[2019-04-25 15:40:48] Starting downloading of file: greenplum-cc-web-4.6.1-LINUX-x86_64.zip
WARN[2019-04-25 15:40:48] File /usr/local/src/gpdbinstall/download/greenplum-db-5.18.0-rhel6-x86_64.zip found. Skipping download
WARN[2019-04-25 15:40:48] To force re-download of the file, use -a flag
INFO[2019-04-25 15:40:48] Downloaded file available at: /usr/local/src/gpdbinstall/download/greenplum-cc-web-4.6.1-LINUX-x86_64.zip


[gpadmin@dev-m ~]$ ll /usr/local/src/gpdbinstall/download/greenplum-cc-web-4.6.1-LINUX-x86_64.zip
ls: cannot access /usr/local/src/gpdbinstall/download/greenplum-cc-web-4.6.1-LINUX-x86_64.zip: No such file or directory
[gpadmin@dev-m ~]$

This seems to be a side effect introduced in 6bece92 as part of the enhacement to shorten the deployment times. In requests.go we always check for the Greenplum version. We should have a logic to check the CCVersion if the product is set to GPCC.

gpinitsystem fails with "Value for directory field in singlenode-m~singlenode-m~30000~data/primary/gp_6.16.0_202105210951550~2~0 is not a valid path Script Exiting!"

[gpadmin@singlenode-m ~]$ ./gpdb install
INFO[2021-05-21 09:51:34] Showing all the files on the download folder 
INFO[2021-05-21 09:51:34] Size of the directory "src/gpdbinstall/download/": 453 MB 

Below are all the downloaded product available

Index   File                                            Size(MB)     Path
------  ----------------------------------------------  -----------  -------------------------------------------------------------------------------------------------------
1       greenplum-db-6.15.0-rhel7-x86_64.rpm            189          src/gpdbinstall/download/greenplum-db-6.15.0-rhel7-x86_64.rpm
2       greenplum-db-6.16.0-rhel7-x86_64.rpm            189          src/gpdbinstall/download/greenplum-db-6.16.0-rhel7-x86_64.rpm


Enter your choice from the above list (eg.s 1 or 2 etc): 2
INFO[2021-05-21 09:51:36] Running the installation for the product: gpdb 
INFO[2021-05-21 09:51:36] Found host file at location: /home/gpadmin/hostfile 
INFO[2021-05-21 09:51:36] Starting the program to install GPDB version: 6.16.0 
INFO[2021-05-21 09:51:36] Running precheck before installing the gpdb version: 6.16.0 
INFO[2021-05-21 09:51:36] Running Installation of gpdb version: 6.16.0 
INFO[2021-05-21 09:51:36] Found a rpm binary for the version 6.16.0: src/gpdbinstall/download/greenplum-db-6.16.0-rhel7-x86_64.rpm 
INFO[2021-05-21 09:51:36] Using the rpm file to install the GPDB Product: src/gpdbinstall/download/greenplum-db-6.16.0-rhel7-x86_64.rpm, this might take several minutes.... 
INFO[2021-05-21 09:51:54] Setting up & Checking if the host is reachable 
INFO[2021-05-21 09:51:54] Running gpssh-exkeys to enable keyless access on this server 
/home/gpadmin/.ssh/id_rsa already exists.
Overwrite (y/n)? INFO[2021-05-21 09:51:54] Setting up the ssh Copy ID for all the host(s) 
[STEP 1 of 5] create local ID and authorize on local host
  ... /home/gpadmin/.ssh/id_rsa file exists ... key generation skipped

[STEP 2 of 5] keyscan all hosts and update known_hosts file

[STEP 3 of 5] retrieving credentials from remote hosts

[STEP 4 of 5] determine common authentication file content

[STEP 5 of 5] copy authentication files to all remote hosts

[INFO] completed successfully
INFO[2021-05-21 09:51:55] Building and executing the gpinitsystem...   
INFO[2021-05-21 09:51:55] Searching & Generating the port to be used for database installation 
INFO[2021-05-21 09:51:55] Obtaining ports to be set for PRIMARY_PORT   
WARN[2021-05-21 09:51:55] Didn't find PRIMARY_PORT in the file, setting it to default value: 30000 
INFO[2021-05-21 09:51:55] Obtaining ports to be set for MASTER_PORT    
WARN[2021-05-21 09:51:55] Didn't find MASTER_PORT in the file, setting it to default value: 3000 
INFO[2021-05-21 09:51:55] Creating the gpinitsystem config file at: src/gpdbinstall/temp/gpinitsystemconfig_6.16.0_20210521095155 
INFO[2021-05-21 09:51:55] Finalizing the gpinitsystem for the single mode database installation 
INFO[2021-05-21 09:51:55] Stopping all the database running on this host, to free up semaphore for this installation 
INFO[2021-05-21 09:51:55] Cleaning up gpcc process is found any        
INFO[2021-05-21 09:51:55] All Postgres process are stopped on this server 
INFO[2021-05-21 09:51:55] Executing the gpinitsystem to initialize the database 
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Checking configuration parameters, please wait...
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Reading Greenplum configuration file src/gpdbinstall/temp/gpinitsystemconfig_6.16.0_20210521095155
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Locale has not been set in src/gpdbinstall/temp/gpinitsystemconfig_6.16.0_20210521095155, will set to default value
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Locale set to en_US.utf8
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[WARN]:-CHECK_POINT_SEGMENTS variable not set, will set to default value
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[WARN]:-ENCODING variable not set, will set to default UTF-8
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-MASTER_MAX_CONNECT not set, will set to default value 250
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Detected a single host GPDB array build, reducing value of BATCH_DEFAULT from 60 to 4
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[WARN]:-Master open file limit is 1024 should be >= 65535
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Checking configuration parameters, Completed
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Commencing multi-home checks, please wait...
.
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Configuring build for standard array
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Commencing multi-home checks, Completed
20210521:09:51:55:015740 gpinitsystem:singlenode-m:gpadmin-[INFO]:-Building primary segment instance array, please wait...
..
20210521:09:51:57:015740 gpinitsystem:singlenode-m:gpadmin-[FATAL]:-Value for directory field in singlenode-m~singlenode-m~30000~data/primary/gp_6.16.0_202105210951550~2~0 is not a valid path Script Exiting!
FATA[2021-05-21 09:51:57] Failed while waiting for the command /usr/local/greenplum-db-6.16.0/bin/gpinitsystem err: exit status 2 
[gpadmin@singlenode-m ~]$ 

Test Builds Function...

We can either do this in go or bash, but let's put together a query test utility...

runquery -f query.file -s 4.3.15.0

Run a query (or set of commands) starting at a specific version and save the output.
Continue this process for each build until the current major build.

For each version --
Is it currently installed?
No: Install, run, capture, remove (we don't want to fill the system with unused binaries).
Yes: Start, run, capture, stop (we don't want to kill existing env).

Install is performing a fuzzy match

gpdb install -v 4.3.30. or 4.3 will simply pick the latest binary in the downloads directory, then install it, but with an incomplete name: eg: env_4.3.30._20181214175506

Unable to install 6.0.0-beta.1

The PivNet package is .rpm - greenplum-db-6.0.0-beta.1-rhel6-x86_64.rpm

[gpadmin@gpdb-m ~]$ gpdb download -v 6.0.0-beta.1 --install
INFO[2019-04-16 11:46:13] Starting the program to download the product  file=download.go:262
INFO[2019-04-16 11:46:13] Getting the access token from the UAA token provided.  file=request.go:26
INFO[2019-04-16 11:46:13] Obtaining the product ID                      file=download.go:163
INFO[2019-04-16 11:46:14] Obtaining the releases for product: Pivotal Greenplum  file=download.go:194
INFO[2019-04-16 11:46:15] Checking for the available version            file=interactions.go:83
INFO[2019-04-16 11:46:15] Found the GPDB version "6.0.0-beta.1" on PivNet, continuing..  file=interactions.go:97
INFO[2019-04-16 11:46:15] Obtaining the files under the greenplum version: 6.0.0-beta.1  file=download.go:219
INFO[2019-04-16 11:46:15] Checking for the version to download          file=interactions.go:136
INFO[2019-04-16 11:46:15] Extracting the filename and the size of the product file.  file=download.go:241
FATA[2019-04-16 11:46:15] Encountered error when requesting the data from http: Get : unsupported protocol scheme ""  file=request.go:89
[gpadmin@gpdb-m ~]$ 

Unable to run this script as root Script Exiting~

INFO[2019-11-20 06:21:05] Building and executing the gpinitsystem...
INFO[2019-11-20 06:21:05] Searching & Generating the port to be used for database installation
INFO[2019-11-20 06:21:05] Obtaining ports to be set for PRIMARY_PORT
WARN[2019-11-20 06:21:05] Didn't find PRIMARY_PORT in the file, setting it to default value: 30000
INFO[2019-11-20 06:21:05] Obtaining ports to be set for MASTER_PORT
WARN[2019-11-20 06:21:05] Didn't find MASTER_PORT in the file, setting it to default value: 3000
INFO[2019-11-20 06:21:05] Creating the gpinitsystem config file at: src/gpdbinstall/temp/gpinitsystemconfig_6.1.0_20191120062105
INFO[2019-11-20 06:21:05] Finalizing the gpinitsystem for the single mode database installation
INFO[2019-11-20 06:21:05] Stopping all the database running on this host, to free up semaphore for this installation
INFO[2019-11-20 06:21:05] Cleaning up gpcc process is found any
INFO[2019-11-20 06:21:05] All Postgres process are stopped on this server
INFO[2019-11-20 06:21:05] Executing the gpinitsystem to initialize the database
20191120:06:21:05:010485 gpinitsystem:gpdb-m:root-[INFO]:-Checking configuration parameters, please wait...
20191120:06:21:05:010485 gpinitsystem:gpdb-m:root-[FATAL]:-Unable to run this script as root Script Exiting!
FATA[2019-11-20 06:21:05] Failed while waiting for the command /usr/local/greenplum-db-6.1.0/bin/gpinitsystem err: exit status 2

VirtualBox VM,CentOS 7.1708 X64 as root;
ssh localhost is ok;

Error "/bin/sh: : No such file or directory" during gpdb remove

Repro

  • Install any version of gpdb and gpcc
  • Stop gpdb
  • Run `gpdb remove -v -f
  • There is an error /bin/sh: : No such file or directory

I suspect we are trying to execute /bin/sh: (extra :) somewhere during the remove script.

The uninstall seems to succeed regardless of the error. There might be left behind files for GPCC.

Snippet with the error

[gpadmin@mdw_lab1 ~]$ gpdb remove -v 5.16.0 -f
INFO[2019-02-14 16:06:05] Starting program to uninstall the version: 5.16.0  file=uninstaller.go:121
WARN[2019-02-14 16:06:05] Database is not started, attempting to start the database...  file=db.go:90
INFO[2019-02-14 16:06:05] Attempting to start the database as per the environment file: /usr/local/src/gpdbinstall/env/env_5.16.0_20190208190142-mireia  file=db.go:108
20190214:16:06:05:009934 gpstart:mdw_lab1:gpadmin-[INFO]:-Starting gpstart with args: -a
20190214:16:06:05:009934 gpstart:mdw_lab1:gpadmin-[INFO]:-Gathering information and validating the environment...
20190214:16:06:05:009934 gpstart:mdw_lab1:gpadmin-[INFO]:-Greenplum Binary Version: 'postgres (Greenplum Database) 5.16.0 build commit:23cec7df0406d69d6552a4bbb77035dba4d7dd44'
[...]
20190214:16:06:12:009934 gpstart:mdw_lab1:gpadmin-[INFO]:-Database successfully started
INFO[2019-02-14 16:06:12] The choosen enviornment file to remove is: /usr/local/src/gpdbinstall/env/env_5.16.0_20190208190142-mireia   file=uninstaller.go:134
INFO[2019-02-14 16:06:12] Uninstalling the environment                  file=uninstaller.go:135
INFO[2019-02-14 16:06:12] Forcing uninstall of the environment: /usr/local/src/gpdbinstall/env/env_5.16.0_20190208190142-mireia  file=uninstaller.go:144
INFO[2019-02-14 16:06:12] Uninstalling the version of command center that is currently installed on this environment.  file=uninstaller.go:100
/bin/sh: : No such file or directory
[...]

CLI width.

We should try to truncate the CLI to fit on a standard (80?) character width to prevent wrapping where possible.

Details for env can be found in the config files.
eg. gpcc could be just the version

Logging (Verbose and Debug)

If debug not set, let’s drop the file reference from logging.
We can likely also drop the directory creation warning to keep the CLI clean and only log if there is an error by default.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.