GPCC install fails with segment error : Could not find platform dependent libraries <exec_prefix>
search cancel

GPCC install fails with segment error : Could not find platform dependent libraries <exec_prefix>

book

Article ID: 295169

calendar_today

Updated On:

Products

VMware Tanzu Greenplum

Issue/Introduction

The following errors may be observed during attempt to install GPCC:


GPCC installer output:
 
INSTALLATION IN PROGRESS...
Failed to exec sql: CREATE TYPE pg_temp.pghba_record AS (
   lineno integer,
   invalid bool,
   iscomment bool,
   active bool,
   hosttype text,
   db text,
   username text,
   cidr text,
   method text,
   options text,
   comment text,
   mtime text
);

GPDB maser log:
 
2023-07-17 17:12:27.646437 EDT,"gpadmin","postgres",p11259,th1259260032,"127.0.0.1","16346",2023-07-17 17:12:01 EDT,6003380,con104,cmd22,seg-1,,dx43,x6003380,sx1,"ERROR","58M01","Error on receive from seg21 ..... pid=17826: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.",,,,,,"CREATE TYPE pg_temp.pghba_record AS (
   lineno integer,
   invalid bool,


GPDB segment log
 
2023-07-17 17:12:27.619110 EDT,,,p1218,th1475463296,,,,0,,,seg22,,,,,"LOG","00000","3rd party error log:
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]


Resolution

As GPCC installer is attempting to use plpython for creation of required function, it is failing to load PYTHONHOME environment variable.

Since PYTHONHOME environment variable is exported by greenplum_path.sh, failure or missing to source greenplum_path.sh is the probable cause of this error.

The following command can be used to validate gpstate is executable on all segment hosts.

Failure on one or more segments as seen below suggests greenplum_path.sh has not been sourced on the failed segment hosts.

 
$ gpssh -f ~/hostfile "gpstate --version"
[GP22N-2] -bash: gpstate: command not found
[GP22N-1] gpstate version 6.23.0 build commit:5b5e432f35f92a40c18dffe4e5bca94790aae83c
$ 


Recommended actions:
* Compare .bashrc across segment hosts to validate greenplum_path.sh is being sourced
* If greenplum_path.sh is explicitly sourced from .bashrc on the problem segment host, and if manually running source command results in successful execution of gpstate, engage system admin for investigating problems picking up .bashrc on the problematic host:

 
[gpadmin@GP22N-M ~]$ ssh gp22N-2
Last login: Wed Jul 26 17:27:25 2023 from 192.168.64.20
[gpadmin@GP22N-2 ~]$ gpstate --version
-bash: gpstate: command not found
[gpadmin@GP22N-2 ~]$ source /usr/local/6.23.0/greenplum-db-6.23.0/greenplum_path.sh
[gpadmin@GP22N-2 ~]$ gpstate --version
gpstate version 6.23.0 build commit:5b5e432f35f92a40c18dffe4e5bca94790aae83c
[gpadmin@GP22N-2 ~]$ 

* If greenplum_path.sh is not explicitly sourced in .bashrc as in the result below, update .bashrc to include the missing source command:
 
[gpadmin@GP22N-M greenplum-db-6.23.0]$ gpssh -f ~/hostfile "grep greenplum_path .bashrc"
[GP22N-2]
[GP22N-1] source /usr/local/6.23.0/greenplum-db-6.23.0/greenplum_path.sh 
[gpadmin@GP22N-M greenplum-db-6.23.0]$ 

 *** NOTE: After the required corrective action(s) has been taken using the above steps, it is necessary to restart GPDB cluster for the change to become effective and for successfull execution of GPCC installer.