This is an automated email from the ASF dual-hosted git repository.

iwasakims pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bigtop.git


The following commit(s) were added to refs/heads/master by this push:
     new e63d43512 BIGTOP-4106. Upgrade GPDB to 7.1.0 with Python 3 enabled. 
(#1269)
e63d43512 is described below

commit e63d43512b7ad1da3e5467e2e00a35db6e23783e
Author: Masatake Iwasaki <[email protected]>
AuthorDate: Thu May 23 14:12:38 2024 +0900

    BIGTOP-4106. Upgrade GPDB to 7.1.0 with Python 3 enabled. (#1269)
---
 .../puppet/modules/gpdb/manifests/init.pp          |  35 +-
 .../puppet/modules/gpdb/templates/init-db.sh       |   2 +-
 .../templates/start-master-db-in-admin-mode.sh     |   2 +-
 bigtop-packages/src/common/gpdb/do-component-build |   2 +-
 .../src/common/gpdb/do-component-configure         |  10 +-
 bigtop-packages/src/common/gpdb/install_gpdb.sh    |   2 +-
 .../patch0-declare-python-version-explicitly.diff  | 530 ---------------------
 bigtop-packages/src/deb/gpdb/control               |   2 +-
 bigtop-packages/src/rpm/gpdb/SPECS/gpdb.spec       |   7 +-
 bigtop.bom                                         |   2 +-
 bigtop_toolchain/manifests/packages.pp             |   2 +-
 11 files changed, 13 insertions(+), 583 deletions(-)

diff --git a/bigtop-deploy/puppet/modules/gpdb/manifests/init.pp 
b/bigtop-deploy/puppet/modules/gpdb/manifests/init.pp
index b287644be..d62b3f7b0 100644
--- a/bigtop-deploy/puppet/modules/gpdb/manifests/init.pp
+++ b/bigtop-deploy/puppet/modules/gpdb/manifests/init.pp
@@ -40,7 +40,7 @@ class gpdb {
       gp_home             => $gp_home,
       master_port         => $master_db_port,
       segment_port_prefix => $segment_db_port_prefix,
-      require             => [Class['gpdb::common::prepare_file_structure'], 
Exec["install_python_packages"]]
+      require             => [Class['gpdb::common::prepare_file_structure'], 
Class['gpdb::common::install_packages']]
     }
 
     class { 'gpdb::common::start_master_node':
@@ -66,35 +66,6 @@ class gpdb {
     }
 
     class install_packages{
-      # GPDB 5.x only supports Python 2.x, but we dropped pip for python2 in 
BIGTOP-3491.
-      # In addition, the latest versions of some distros (Fedora and Ubuntu, 
at least)
-      # doesn't seem to provide it as a standard package. So we use get-pip.py
-      # (https://pip.pypa.io/en/stable/installing/#installing-with-get-pip-py)
-      # here to install it on all distros.
-      exec { 'download_get_pip':
-        cwd => '/tmp',
-        command => '/usr/bin/curl -sLO 
https://bootstrap.pypa.io/pip/2.7/get-pip.py'
-      }
-      exec { 'install_pip':
-        cwd => '/tmp',
-        command => '/usr/bin/python2 get-pip.py',
-        require => [Exec["download_get_pip"], Package["gpdb"]],
-      }
-      # GPDB requires the following python packages as of v5.28.5. See
-      # 
https://github.com/greenplum-db/gpdb/tree/5X_STABLE#building-greenplum-database-with-gporca.
-      if ($operatingsystem == 'CentOS') {
-        exec { 'install_python_packages':
-          command => "/usr/bin/env pip install -q 'cryptography<3.3' lockfile 
paramiko psutil",
-          require => [Exec["install_pip"]],
-          timeout => 600,
-        }
-      } else {
-        exec { 'install_python_packages':
-          command => "/usr/bin/env pip install -q lockfile paramiko psutil",
-          require => [Exec["install_pip"]],
-          timeout => 600,
-        }
-      }
       package { ["gpdb"]:
         ensure => latest,
       }
@@ -173,7 +144,7 @@ class gpdb {
           }
           file_line { "add 2 conf${db_dir}":
             path    => "${db_dir}/postgresql.conf",
-            line    => 'checkpoint_segments=8',
+            line    => 'max_wal_size=384MB',
             require => [Exec["create_master_db${db_dir}"]],
           }
           file_line { "add 3 conf${db_dir}":
@@ -255,7 +226,7 @@ class gpdb {
             Exec['start-master-db-in-admin-mode'],
           ],
         }
-        exec { "insert-to-new-table${dbid}":
+        exec { "insert-to-new-table":
           environment => ["PGOPTIONS=-c gp_session_role=utility"],
           command     => "insert-to-new-table.sh",
           path        => '/home/gpadmin',
diff --git a/bigtop-deploy/puppet/modules/gpdb/templates/init-db.sh 
b/bigtop-deploy/puppet/modules/gpdb/templates/init-db.sh
index 456f217d3..f2836b51d 100755
--- a/bigtop-deploy/puppet/modules/gpdb/templates/init-db.sh
+++ b/bigtop-deploy/puppet/modules/gpdb/templates/init-db.sh
@@ -1,4 +1,4 @@
 #!/bin/sh
 if [ ! -d $1 ]; then
-  export LD_LIBRARY_PATH=<%= @gp_home %>/lib:/lib;<%= @gp_home %>/bin/initdb 
-E UNICODE -D $1 --max_connections=750 --shared_buffers=128000kB 
--backend_output=$1.initdb
+  export LD_LIBRARY_PATH=<%= @gp_home %>/lib:/lib;<%= @gp_home %>/bin/initdb 
-E UNICODE -D $1 --max_connections=750 --shared_buffers=128000kB
 fi
diff --git 
a/bigtop-deploy/puppet/modules/gpdb/templates/start-master-db-in-admin-mode.sh 
b/bigtop-deploy/puppet/modules/gpdb/templates/start-master-db-in-admin-mode.sh
index 109abe56a..1c1cb46d4 100755
--- 
a/bigtop-deploy/puppet/modules/gpdb/templates/start-master-db-in-admin-mode.sh
+++ 
b/bigtop-deploy/puppet/modules/gpdb/templates/start-master-db-in-admin-mode.sh
@@ -1,2 +1,2 @@
 #!/bin/bash
-export PGPORT=<%= @master_port %>;<%= @gp_home %>/bin/pg_ctl -w -l 
$1/pg_log/startup.log -D $1 -o "-p <%= @master_port %> --gp_dbid=1 -i 
--gp_contentid=-1 -c gp_role=utility -m" start
+export PGPORT=<%= @master_port %>;<%= @gp_home %>/bin/pg_ctl -w -l 
$1/log/startup.log -D $1 -o "-p <%= @master_port %> --gp_dbid=1 -i 
--gp_contentid=-1 -c gp_role=utility -m" start
diff --git a/bigtop-packages/src/common/gpdb/do-component-build 
b/bigtop-packages/src/common/gpdb/do-component-build
index 2ecb755cb..3bdf386ca 100644
--- a/bigtop-packages/src/common/gpdb/do-component-build
+++ b/bigtop-packages/src/common/gpdb/do-component-build
@@ -18,4 +18,4 @@ set -ex
 
 rm -f gpdb
 
-make
+PYTHON=/usr/bin/python3 make MAKELEVEL=0
diff --git a/bigtop-packages/src/common/gpdb/do-component-configure 
b/bigtop-packages/src/common/gpdb/do-component-configure
index adedc4bd7..f143423f8 100644
--- a/bigtop-packages/src/common/gpdb/do-component-configure
+++ b/bigtop-packages/src/common/gpdb/do-component-configure
@@ -16,12 +16,4 @@
 
 set -ex
 
-#specify the verion of python for openEuler
-. /etc/os-release
-OS="$ID"
-if [ "${OS}" = "openEuler" ]; then
-  sed -i 's|python setup.py build|python2 setup.py build|g'  
gpMgmt/bin/Makefile
-  sed -i 's|python gpconfig_modules|python2 gpconfig_modules|g' 
gpMgmt/bin/Makefile
-fi
-
-./configure --prefix=$1 --with-python --with-libxml --with-gssapi 
--disable-orca CFLAGS='-fcommon -Wno-implicit-fallthrough'
+PYTHON=/usr/bin/python3 ./configure --prefix=$1 --with-python --with-libxml 
--with-gssapi --disable-orca CFLAGS='-fcommon -Wno-implicit-fallthrough'
diff --git a/bigtop-packages/src/common/gpdb/install_gpdb.sh 
b/bigtop-packages/src/common/gpdb/install_gpdb.sh
index d3c7986c1..a67d8ac62 100755
--- a/bigtop-packages/src/common/gpdb/install_gpdb.sh
+++ b/bigtop-packages/src/common/gpdb/install_gpdb.sh
@@ -16,4 +16,4 @@
 
 set -ex
 
-make install DESTDIR=$1
+PYTHON=/usr/bin/python3 make install DESTDIR=$1
diff --git 
a/bigtop-packages/src/common/gpdb/patch0-declare-python-version-explicitly.diff 
b/bigtop-packages/src/common/gpdb/patch0-declare-python-version-explicitly.diff
deleted file mode 100644
index b58487b30..000000000
--- 
a/bigtop-packages/src/common/gpdb/patch0-declare-python-version-explicitly.diff
+++ /dev/null
@@ -1,530 +0,0 @@
-diff --git a/gpMgmt/bin/analyzedb b/gpMgmt/bin/analyzedb
-index 462a207cc0..551d1c842a 100755
---- a/gpMgmt/bin/analyzedb
-+++ b/gpMgmt/bin/analyzedb
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- 
- # Copyright (c) 2015 Pivotal Software, Inc. All Rights Reserved
-diff --git a/gpMgmt/bin/gpactivatestandby b/gpMgmt/bin/gpactivatestandby
-index 0f1dd22fb5..2ae64ee220 100755
---- a/gpMgmt/bin/gpactivatestandby
-+++ b/gpMgmt/bin/gpactivatestandby
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- # Line too long - pylint: disable=C0301
- # Invalid name  - pylint: disable=C0103
-diff --git a/gpMgmt/bin/gpaddmirrors b/gpMgmt/bin/gpaddmirrors
-index a7c368071e..1f4e7665c6 100755
---- a/gpMgmt/bin/gpaddmirrors
-+++ b/gpMgmt/bin/gpaddmirrors
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Recovers Greenplum segment instances that are marked as invalid, if
- # mirroring is configured and operational
-diff --git a/gpMgmt/bin/gpcheckcat b/gpMgmt/bin/gpcheckcat
-index a2c5f29377..98dc067abc 100755
---- a/gpMgmt/bin/gpcheckcat
-+++ b/gpMgmt/bin/gpcheckcat
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- '''
- Usage: gpcheckcat [<option>] [dbname]
- 
-diff --git a/gpMgmt/bin/gpcheckcat_modules/foreign_key_check.py 
b/gpMgmt/bin/gpcheckcat_modules/foreign_key_check.py
-index 5259974af9..7996d8eed0 100644
---- a/gpMgmt/bin/gpcheckcat_modules/foreign_key_check.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/foreign_key_check.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- from gppylib.gplog import *
- from gppylib.gpcatalog import *
-diff --git a/gpMgmt/bin/gpcheckcat_modules/orphan_toast_table_issues.py 
b/gpMgmt/bin/gpcheckcat_modules/orphan_toast_table_issues.py
-index b25af69351..976ad0ed15 100644
---- a/gpMgmt/bin/gpcheckcat_modules/orphan_toast_table_issues.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/orphan_toast_table_issues.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- 
- class OrphanToastTableIssue(object):
-diff --git a/gpMgmt/bin/gpcheckcat_modules/orphaned_toast_tables_check.py 
b/gpMgmt/bin/gpcheckcat_modules/orphaned_toast_tables_check.py
-index bb0df7f52b..b3df5ab0a7 100644
---- a/gpMgmt/bin/gpcheckcat_modules/orphaned_toast_tables_check.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/orphaned_toast_tables_check.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- import itertools
- 
-diff --git a/gpMgmt/bin/gpcheckcat_modules/repair.py 
b/gpMgmt/bin/gpcheckcat_modules/repair.py
-index b46fe6c1c8..7298a17fde 100644
---- a/gpMgmt/bin/gpcheckcat_modules/repair.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/repair.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- """
- Purpose : Creates the repair dir and the corresponding sql/bash scripts for
-           repairing some of the catalog issues(see the list below) reported 
by gpcheckcat.
-diff --git a/gpMgmt/bin/gpcheckcat_modules/repair_missing_extraneous.py 
b/gpMgmt/bin/gpcheckcat_modules/repair_missing_extraneous.py
-index dbd040dbe9..623ce7f8f0 100644
---- a/gpMgmt/bin/gpcheckcat_modules/repair_missing_extraneous.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/repair_missing_extraneous.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- from gppylib.utils import escapeDoubleQuoteInSQLString
- 
- class RepairMissingExtraneous:
-diff --git a/gpMgmt/bin/gpcheckcat_modules/unique_index_violation_check.py 
b/gpMgmt/bin/gpcheckcat_modules/unique_index_violation_check.py
-index 8bf847a839..e385eaca5f 100644
---- a/gpMgmt/bin/gpcheckcat_modules/unique_index_violation_check.py
-+++ b/gpMgmt/bin/gpcheckcat_modules/unique_index_violation_check.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- class UniqueIndexViolationCheck:
-     unique_indexes_query = """
-diff --git a/gpMgmt/bin/gpcheckperf b/gpMgmt/bin/gpcheckperf
-index 798e815aa4..6615365c60 100755
---- a/gpMgmt/bin/gpcheckperf
-+++ b/gpMgmt/bin/gpcheckperf
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- """
- gpcheckperf -- Check the hardware for Greenplum Database
- 
-diff --git a/gpMgmt/bin/gpcheckresgroupimpl b/gpMgmt/bin/gpcheckresgroupimpl
-index c451ee64fc..9a9394d1a5 100755
---- a/gpMgmt/bin/gpcheckresgroupimpl
-+++ b/gpMgmt/bin/gpcheckresgroupimpl
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) 2017, Pivotal Software Inc.
- #
-diff --git a/gpMgmt/bin/gpconfig b/gpMgmt/bin/gpconfig
-index b31a6d38f2..a65a118809 100755
---- a/gpMgmt/bin/gpconfig
-+++ b/gpMgmt/bin/gpconfig
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2009. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gpdeletesystem b/gpMgmt/bin/gpdeletesystem
-index 145709b627..0811ef5a87 100755
---- a/gpMgmt/bin/gpdeletesystem
-+++ b/gpMgmt/bin/gpdeletesystem
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- #
- # Copyright (c) Greenplum Inc 2010. All Rights Reserved.
-diff --git a/gpMgmt/bin/gpexpand b/gpMgmt/bin/gpexpand
-index 7e9e5be6dc..0c36dbc332 100755
---- a/gpMgmt/bin/gpexpand
-+++ b/gpMgmt/bin/gpexpand
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Line too long            - pylint: disable=C0301
- # Invalid name             - pylint: disable=C0103
- #
-diff --git a/gpMgmt/bin/gpinitstandby b/gpMgmt/bin/gpinitstandby
-index d3a36ea993..2e9b7157df 100755
---- a/gpMgmt/bin/gpinitstandby
-+++ b/gpMgmt/bin/gpinitstandby
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- #
- # Copyright (c) Greenplum Inc 2010. All Rights Reserved. 
-diff --git a/gpMgmt/bin/gpload.py b/gpMgmt/bin/gpload.py
-index d96b78694e..9668fc0fae 100755
---- a/gpMgmt/bin/gpload.py
-+++ b/gpMgmt/bin/gpload.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- # gpload - load file(s) into Greenplum Database
- # Copyright Greenplum 2008
-diff --git a/gpMgmt/bin/gplogfilter b/gpMgmt/bin/gplogfilter
-index 09f36cf2f1..abd086283e 100755
---- a/gpMgmt/bin/gplogfilter
-+++ b/gpMgmt/bin/gplogfilter
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- coding: utf-8 -*-
- #
- # gplogfilter [options] [inputfile]...
-diff --git a/gpMgmt/bin/gpmemreport b/gpMgmt/bin/gpmemreport
-index c9a9df5e76..d3e36c7f51 100755
---- a/gpMgmt/bin/gpmemreport
-+++ b/gpMgmt/bin/gpmemreport
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright 2021 VMware, Inc.
- # SPDX-License-Identifier: Apache-2.0
-diff --git a/gpMgmt/bin/gpmemwatcher b/gpMgmt/bin/gpmemwatcher
-index e99cfd3564..dd8fc4b7ad 100755
---- a/gpMgmt/bin/gpmemwatcher
-+++ b/gpMgmt/bin/gpmemwatcher
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright 2021 VMware, Inc.
- # SPDX-License-Identifier: Apache-2.0
-diff --git a/gpMgmt/bin/gpmovemirrors b/gpMgmt/bin/gpmovemirrors
-index eda5f226d0..22760982f5 100755
---- a/gpMgmt/bin/gpmovemirrors
-+++ b/gpMgmt/bin/gpmovemirrors
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Line too long            - pylint: disable=C0301
- # Invalid name             - pylint: disable=C0103
- #
-diff --git a/gpMgmt/bin/gppkg b/gpMgmt/bin/gppkg
-index 24a09b2dae..f789e141ee 100755
---- a/gpMgmt/bin/gppkg
-+++ b/gpMgmt/bin/gppkg
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python 
-+#!/usr/bin/env python2 
- #
- # Copyright (c) Greenplum Inc 2010. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gppylib/commands/base.py 
b/gpMgmt/bin/gppylib/commands/base.py
-index 138ffc679c..4ac17e982b 100755
---- a/gpMgmt/bin/gppylib/commands/base.py
-+++ b/gpMgmt/bin/gppylib/commands/base.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2008. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gppylib/gparray.py b/gpMgmt/bin/gppylib/gparray.py
-index 4b50da8a5d..d680038228 100755
---- a/gpMgmt/bin/gppylib/gparray.py
-+++ b/gpMgmt/bin/gppylib/gparray.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2008. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gppylib/gpunit b/gpMgmt/bin/gppylib/gpunit
-index 4ea2e2ccea..806c542a2d 100755
---- a/gpMgmt/bin/gppylib/gpunit
-+++ b/gpMgmt/bin/gppylib/gpunit
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#! /usr/bin/env python2
- 
- """
- gpunit is similar to unit2 in python but runs with our GpMgmtTestRunner and 
GpMgmtTextTestResult.
-diff --git a/gpMgmt/bin/gppylib/operations/initstandby.py 
b/gpMgmt/bin/gppylib/operations/initstandby.py
-index 1b508aa748..33fc7f574b 100755
---- a/gpMgmt/bin/gppylib/operations/initstandby.py
-+++ b/gpMgmt/bin/gppylib/operations/initstandby.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- import os
- import base64
-diff --git a/gpMgmt/bin/gppylib/system/ComputeCatalogUpdate.py 
b/gpMgmt/bin/gppylib/system/ComputeCatalogUpdate.py
-index fda2e70b6c..dd3e348a2d 100755
---- a/gpMgmt/bin/gppylib/system/ComputeCatalogUpdate.py
-+++ b/gpMgmt/bin/gppylib/system/ComputeCatalogUpdate.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Line too long - pylint: disable=C0301
- # Invalid name  - pylint: disable=C0103
- 
-diff --git a/gpMgmt/bin/gppylib/unit2 b/gpMgmt/bin/gppylib/unit2
-index 08d1006a20..cc4e857ad4 100755
---- a/gpMgmt/bin/gppylib/unit2
-+++ b/gpMgmt/bin/gppylib/unit2
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#! /usr/bin/env python2
- 
- __unittest = True
- 
-diff --git a/gpMgmt/bin/gprecoverseg b/gpMgmt/bin/gprecoverseg
-index 777852a0ba..7a3fbbf545 100755
---- a/gpMgmt/bin/gprecoverseg
-+++ b/gpMgmt/bin/gprecoverseg
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- """
- gprecoverseg
- 
-diff --git a/gpMgmt/bin/gpreload b/gpMgmt/bin/gpreload
-index c2a5765255..cffc4a592d 100755
---- a/gpMgmt/bin/gpreload
-+++ b/gpMgmt/bin/gpreload
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- from gppylib.mainUtils import simple_main
- from gppylib.operations.reload import GpReload
-diff --git a/gpMgmt/bin/gpscp b/gpMgmt/bin/gpscp
-index 882139c82e..f43cddf0c7 100755
---- a/gpMgmt/bin/gpscp
-+++ b/gpMgmt/bin/gpscp
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- '''
- gpscp -- scp to multiple hosts at once
-diff --git a/gpMgmt/bin/gpsd b/gpMgmt/bin/gpsd
-index 3599bd1192..1da50c58d3 100755
---- a/gpMgmt/bin/gpsd
-+++ b/gpMgmt/bin/gpsd
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Copyright (c) 2014 Pivotal inc.
- 
- 
-diff --git a/gpMgmt/bin/gpssh b/gpMgmt/bin/gpssh
-index fd8cab3ae0..ef0b81f532 100755
---- a/gpMgmt/bin/gpssh
-+++ b/gpMgmt/bin/gpssh
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- '''
- gpssh -- ssh access to multiple hosts at once
-diff --git a/gpMgmt/bin/gpssh-exkeys b/gpMgmt/bin/gpssh-exkeys
-index 2eb9acb73c..68a3acb21f 100755
---- a/gpMgmt/bin/gpssh-exkeys
-+++ b/gpMgmt/bin/gpssh-exkeys
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # -*- indent-tabs-mode: nil; tab-width:4 -*-
- # vim:set tabstop=4 expandtab:
- '''
-diff --git a/gpMgmt/bin/gpstart b/gpMgmt/bin/gpstart
-index ad9ee9c297..7ad8530d84 100755
---- a/gpMgmt/bin/gpstart
-+++ b/gpMgmt/bin/gpstart
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2008. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gpstate b/gpMgmt/bin/gpstate
-index bbbf8c4383..d0f45d048e 100755
---- a/gpMgmt/bin/gpstate
-+++ b/gpMgmt/bin/gpstate
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Displays system status information
- #
-diff --git a/gpMgmt/bin/gpstop b/gpMgmt/bin/gpstop
-index 1b1afdbb77..89c974724b 100755
---- a/gpMgmt/bin/gpstop
-+++ b/gpMgmt/bin/gpstop
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2008. All Rights Reserved.
- #
-diff --git a/gpMgmt/bin/gpsys1 b/gpMgmt/bin/gpsys1
-index e57ebc6c08..44999548a9 100755
---- a/gpMgmt/bin/gpsys1
-+++ b/gpMgmt/bin/gpsys1
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- """
- gpsys1 -- print system info on a host
- 
-diff --git a/gpMgmt/bin/lib/gpconfigurenewsegment 
b/gpMgmt/bin/lib/gpconfigurenewsegment
-index fe4eb85807..b9435d9565 100755
---- a/gpMgmt/bin/lib/gpconfigurenewsegment
-+++ b/gpMgmt/bin/lib/gpconfigurenewsegment
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- import datetime
- import sys
-diff --git a/gpMgmt/bin/lib/gppinggpfdist.py b/gpMgmt/bin/lib/gppinggpfdist.py
-index 419fdaad39..6ba80cb18b 100644
---- a/gpMgmt/bin/lib/gppinggpfdist.py
-+++ b/gpMgmt/bin/lib/gppinggpfdist.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- import sys, httplib, getopt, socket
- 
-diff --git a/gpMgmt/bin/lib/gpstate.py b/gpMgmt/bin/lib/gpstate.py
-index 33d19e80fc..b9c64dc157 100755
---- a/gpMgmt/bin/lib/gpstate.py
-+++ b/gpMgmt/bin/lib/gpstate.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Recovers Greenplum segment instances that are marked as invalid, if
- # mirroring is configured and operational
-diff --git a/gpMgmt/bin/lib/multidd b/gpMgmt/bin/lib/multidd
-index 59703f2c92..efa4b2858d 100755
---- a/gpMgmt/bin/lib/multidd
-+++ b/gpMgmt/bin/lib/multidd
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- """
- multidd - run multiple dd concurrently to determine disk throughput
- 
-diff --git a/gpMgmt/bin/minirepro b/gpMgmt/bin/minirepro
-index bdeea5911d..27a33ebbd3 100755
---- a/gpMgmt/bin/minirepro
-+++ b/gpMgmt/bin/minirepro
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- '''
- minirepro utility
- 
-diff --git a/gpMgmt/sbin/gpcleansegmentdir.py 
b/gpMgmt/sbin/gpcleansegmentdir.py
-index 29e2b47c8f..b0d54abb5a 100755
---- a/gpMgmt/sbin/gpcleansegmentdir.py
-+++ b/gpMgmt/sbin/gpcleansegmentdir.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2010. All Rights Reserved.
- #
-diff --git a/gpMgmt/sbin/gpconfig_helper.py b/gpMgmt/sbin/gpconfig_helper.py
-index bac06f4f25..3f1bee8b44 100755
---- a/gpMgmt/sbin/gpconfig_helper.py
-+++ b/gpMgmt/sbin/gpconfig_helper.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2009. All Rights Reserved.
- #
-diff --git a/gpMgmt/sbin/gpgetstatususingtransition.py 
b/gpMgmt/sbin/gpgetstatususingtransition.py
-index 5bde9e13ae..fdde978592 100755
---- a/gpMgmt/sbin/gpgetstatususingtransition.py
-+++ b/gpMgmt/sbin/gpgetstatususingtransition.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2010. All Rights Reserved. 
- #
-diff --git a/gpMgmt/sbin/gpoperation.py b/gpMgmt/sbin/gpoperation.py
-index 2383a807b2..639e2ed1ed 100755
---- a/gpMgmt/sbin/gpoperation.py
-+++ b/gpMgmt/sbin/gpoperation.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- import sys
- import pickle
- import traceback
-diff --git a/gpMgmt/sbin/gpsegrecovery.py b/gpMgmt/sbin/gpsegrecovery.py
-index 16b85a3e68..50bc781c5d 100644
---- a/gpMgmt/sbin/gpsegrecovery.py
-+++ b/gpMgmt/sbin/gpsegrecovery.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- 
- from gppylib.recoveryinfo import RecoveryErrorType
- from gppylib.commands.pg import PgBaseBackup, PgRewind
-diff --git a/gpMgmt/sbin/gpsegsetuprecovery.py 
b/gpMgmt/sbin/gpsegsetuprecovery.py
-index 7da69d06f7..adb5a38810 100644
---- a/gpMgmt/sbin/gpsegsetuprecovery.py
-+++ b/gpMgmt/sbin/gpsegsetuprecovery.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- import os
- 
- from gppylib import recoveryinfo
-diff --git a/gpMgmt/sbin/gpsegstart.py b/gpMgmt/sbin/gpsegstart.py
-index 0dee2d6f9e..bb2fd8f23c 100755
---- a/gpMgmt/sbin/gpsegstart.py
-+++ b/gpMgmt/sbin/gpsegstart.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Line too long - pylint: disable=C0301
- # Invalid name  - pylint: disable=C0103
- #
-diff --git a/gpMgmt/sbin/gpsegstop.py b/gpMgmt/sbin/gpsegstop.py
-index 5a88775dc2..b4c7fccbd1 100755
---- a/gpMgmt/sbin/gpsegstop.py
-+++ b/gpMgmt/sbin/gpsegstop.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- #
- # Copyright (c) Greenplum Inc 2008. All Rights Reserved.
- #
-diff --git a/gpMgmt/sbin/packcore b/gpMgmt/sbin/packcore
-index e65355cd24..9ade7c266e 100755
---- a/gpMgmt/sbin/packcore
-+++ b/gpMgmt/sbin/packcore
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- # Copyright Pivotal 2014
- 
- 
-diff --git a/gpMgmt/sbin/seg_update_pg_hba.py 
b/gpMgmt/sbin/seg_update_pg_hba.py
-index 8ef70ac1a0..e4cd1c6840 100755
---- a/gpMgmt/sbin/seg_update_pg_hba.py
-+++ b/gpMgmt/sbin/seg_update_pg_hba.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- import os
- import re
- import sys
diff --git a/bigtop-packages/src/deb/gpdb/control 
b/bigtop-packages/src/deb/gpdb/control
index 80c6f3383..8b3e5d73b 100644
--- a/bigtop-packages/src/deb/gpdb/control
+++ b/bigtop-packages/src/deb/gpdb/control
@@ -22,6 +22,6 @@ Homepage: https://github.com/greenplum-db/gpdb
 
 Package: gpdb
 Architecture: any
-Depends: ${shlibs:Depends}, bigtop-utils (>= 0.7), gcc, libffi-dev, 
libssl-dev, make, python-dev (>= 2.6) | python2-dev (>= 2.6), python-dev (<< 3) 
| python2-dev
+Depends: ${shlibs:Depends}, bigtop-utils (>= 0.7), gcc, libffi-dev, 
libssl-dev, make
 Description: Greenplum MPP database engine
   Provides the Greenplum MPP database engine
diff --git a/bigtop-packages/src/rpm/gpdb/SPECS/gpdb.spec 
b/bigtop-packages/src/rpm/gpdb/SPECS/gpdb.spec
index 72559c03e..87910815d 100644
--- a/bigtop-packages/src/rpm/gpdb/SPECS/gpdb.spec
+++ b/bigtop-packages/src/rpm/gpdb/SPECS/gpdb.spec
@@ -29,6 +29,8 @@
 
 %global __brp_check_rpaths %{nil}
 
+%global __python %{__python3}
+
 Name: gpdb
 Version: %{gpdb_version}
 Release: %{gpdb_release}
@@ -44,12 +46,7 @@ Source3: do-component-configure
 #BIGTOP_PATCH_FILES
 AutoReqProv: %{autorequire}
 
-#python2 be compiled manually and install, not installed by rpm in openEuler
-%if 0%{?openEuler}
 Requires: bigtop-utils >= 0.7, gcc, libffi-devel, make, openssl-devel
-%else
-Requires: bigtop-utils >= 0.7, gcc, libffi-devel, make, openssl-devel, 
python2-devel
-%endif
 
 %description
 gpdb
diff --git a/bigtop.bom b/bigtop.bom
index fa2cbee96..2e02057e2 100644
--- a/bigtop.bom
+++ b/bigtop.bom
@@ -326,7 +326,7 @@ bigtop {
     'gpdb' {
       name    = 'gpdb'
       relNotes = 'GreenPlum'
-      version { base = '6.23.4'; pkg = '6.23.4'; release = 1 }
+      version { base = '7.1.0'; pkg = base; release = 1 }
       tarball { destination = "$name-${version.base}.tar.gz"
                 source      = "${version.base}.tar.gz" }
       url     { site = "https://github.com/greenplum-db/gpdb/archive/";
diff --git a/bigtop_toolchain/manifests/packages.pp 
b/bigtop_toolchain/manifests/packages.pp
index 296ac1099..2bf3972a7 100644
--- a/bigtop_toolchain/manifests/packages.pp
+++ b/bigtop_toolchain/manifests/packages.pp
@@ -72,7 +72,7 @@ class bigtop_toolchain::packages {
       ]
 
       if ($operatingsystem == 'Fedora') {
-        $pkgs = concat($_pkgs, ["libtirpc-devel", "cmake"])
+        $pkgs = concat($_pkgs, ["libtirpc-devel", "cmake", "perl-FindBin"])
       } else { # RedHat, CentOS, Rocky
         if (0 <= versioncmp($operatingsystemmajrelease, '9')) {
           $pkgs = concat($_pkgs, ["libtirpc-devel", "cmake"])

Reply via email to