Repository navigation
Remove gpcontrib/gpmapreduce from the core - #2151
Merged
Merged
Conversation
yjhjstz
approved these changes
Oct 19, 2026
tuhaihe
added a commit
to tuhaihe/cloudberrydb
that referenced
this pull request
Oct 19, 2026
Both are being removed from the core for 3.0 (apache#2150 and apache#2151), so the full configuration stops building them. pxf is on by default on both sides, so it is turned off explicitly: -Dpxf=disabled, and --disable-pxf on the configure line the parity check runs. mapreduce is off by default, so its flags simply go. The meson options themselves stay until those PRs land; whichever lands second drops them, and the smoke test fails on an option meson does not know rather than skipping its check, so that cannot be missed. The rest tidies the workflow: The cache of the gpMgmt Python tarballs goes. It saved a download of under a megabyte that the next step makes anyway, and skips when the files are already there, on a key that changed with every edit of gpMgmt/bin/Makefile. build-cloudberry.yml fetches the same files uncached. build and cluster-test get time limits, 90 and 30 minutes, as test already had one: a hung step would otherwise hold a runner for GitHub's six-hour default. BUILD_IMAGE was declared and never used -- a job's container image cannot read the env context -- so it goes. MESON_VERSION's comment called it a pin. It is a floor, and the comment now says how the floor is actually held. Assisted-by: Claude Code
leborchuk
approved these changes
Oct 19, 2026
Member
Author
|
We can apply this PR from Cloudberry 3.0 |
tuhaihe
enabled auto-merge (rebase)
October 20, 2026 01:47
gpmapreduce has had no regression coverage since commit 4d926ed (2024-09-19) disabled its test in gpcontrib/Makefile, with the rationale that the functionality "is no longer need now". Only the test was turned off there; the build was not, so every release since has compiled and installed a 13.5k-line frontend binary that nothing tests. Greenplum deleted the same code in Jul 2023 (greenplum-db/gpdb-archive@6bc9129), stating it would not be provided for GPDB 7 and forward, so no upstream fix will ever reach us again. Remove the source along with everything that only existed for it: - the --enable-mapreduce configure option, the USE_MAPREDUCE define that no C file ever referenced, and enable_mapreduce in Makefile.global.in - the mapreduce targets in gpcontrib/Makefile - the mapreduce flag in the devops build script and in the seven platform CONFIGFLAGS lines in gpAux/Makefile - gpMgmt/doc/gpmapreduce_help and its entry in the doc Makefile - the @gpwhich_gpmapreduce@ token in gptokencheck, in both src/test/regress and the contrib/pax_storage copy - the pom.xml RAT exclude for gpcontrib/gpmapreduce, which was the only whole-directory exclude under gpcontrib libyaml stays a dependency: src/bin/gpfdist/transform.c uses it for gpfdist's transformation feature, and the enable_gpfdist branch has its own AC_SEARCH_LIBS and AC_CHECK_HEADERS, so have_yaml, YAML_LIBS and HAVE_YAML_H are all still set and no packaging or build image changes are needed. A missing libyaml is now only the gpfdist warning that disables transformations, rather than also being a hard configure error. $GPHOME/bin/gpmapreduce is no longer built or installed. Passing --enable-mapreduce to configure now only prints an unrecognized option warning. Users who still need gpmapreduce should stay on 2.x, which keeps it for the supported life of that line. configure was regenerated with autoconf 2.69. The committed configure was generated by a vanilla 2.69 while the 2.69 available here is Red Hat's, which adds --runstatedir, so rather than regenerating wholesale the diff between a before and after autoconf run was applied to the committed file; the result is 120 deleted lines in six hunks and no other change. Discussion: apache#2030 Issue: apache#2136 Assisted-by: Claude Code
tuhaihe
force-pushed
the
remove-gpmapreduce
branch
from
October 20, 2026 01:52
061b8cd to
087d65f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
gpmapreduce has had no regression coverage since commit 4d926ed (2024-09-19) disabled its test in gpcontrib/Makefile, with the rationale that the functionality "is no longer need now". Only the test was turned off there; the build was not, so every release since has compiled and installed a 13.5k-line frontend binary that nothing tests. Greenplum deleted the same code in Jul 2023
(greenplum-db/gpdb-archive@6bc9129), stating it would not be provided for GPDB 7 and forward, so no upstream fix will ever reach us again.
Remove the source along with everything that only existed for it:
libyaml stays a dependency: src/bin/gpfdist/transform.c uses it for gpfdist's transformation feature, and the enable_gpfdist branch has its own AC_SEARCH_LIBS and AC_CHECK_HEADERS, so have_yaml, YAML_LIBS and HAVE_YAML_H are all still set and no packaging or build image changes are needed. A missing libyaml is now only the gpfdist warning that disables transformations, rather than also being a hard configure error.
$GPHOME/bin/gpmapreduce is no longer built or installed. Passing --enable-mapreduce to configure now only prints an unrecognized option warning. Users who still need gpmapreduce should stay on 2.x, which keeps it for the supported life of that line.
configure was regenerated with autoconf 2.69. The committed configure was generated by a vanilla 2.69 while the 2.69 available here is Red Hat's, which adds --runstatedir, so rather than regenerating wholesale the diff between a before and after autoconf run was applied to the committed file; the result is 120 deleted lines in six hunks and no other change.
Discussion: #2030
Issue: #2136
Assisted-by: Claude Code
Fixes #ISSUE_Number
What does this PR do?
Type of Change
Breaking Changes
Test Plan
make installcheckmake -C src/test installcheck-cbdb-parallelImpact
Performance:
User-facing changes:
Dependencies:
Checklist
Additional Context
CI Skip Instructions