Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1108 commits
Select commit Hold shift + click to select a range
ae58802
Stamp 14.7.
reshke Apr 23, 2026
0fd99be
Fix for CDBD expand with concurrent distributed tx (#1801)
reshke Jun 4, 2026
857f1ff
Harden our regex engine against integer overflow in size calculations.
tglsfdc May 11, 2026
1d09115
Prevent buffer overrun in unicode_normalize().
tglsfdc May 11, 2026
a4f5fd9
Fix assorted places that need to use palloc_array().
tglsfdc May 11, 2026
9b66832
Add raw_connect and raw_connect_works to Cluster.pm
michaelpq May 11, 2026
e626922
Fix unbounded recursive handling of SSL/GSS in ProcessStartupPacket()
michaelpq May 11, 2026
99eb93f
Unify src/common/'s definitions of MaxAllocSize.
tglsfdc May 11, 2026
ee5dee0
Guard against overflow in "left" fields of query_int and ltxtquery.
tglsfdc May 11, 2026
e764fc2
Apply timingsafe_bcmp() in authentication paths
michaelpq May 11, 2026
94be56b
Avoid passing unintended format codes to snprintf().
tglsfdc May 11, 2026
a2663d9
Guard against unsafe conditions in usage of pg_strftime().
tglsfdc May 11, 2026
04d7a48
Check CREATE privilege on multirange type schema in CREATE TYPE.
nathan-bossart May 11, 2026
eeb4bf3
Avoid overflow in size calculations in formatting.c.
nathan-bossart May 11, 2026
c2a1b74
Prevent path traversal in pg_basebackup and pg_rewind
michaelpq May 11, 2026
dfe23bf
Fix integer-overflow and alignment hazards in locale-related code.
tglsfdc May 11, 2026
a289db8
Fix integer overflow in array_agg(), when the array grows too large
hlinnaka May 11, 2026
cbfe104
Mark PQfn() unsafe and fix overrun in frontend LO interface.
nathan-bossart May 11, 2026
a7b9fe5
refint: Fix SQL injection and buffer overruns.
nathan-bossart May 11, 2026
5e8a0b1
Partally apply 37842f3dc6c
reshke May 23, 2026
2db0614
Add timingsafe_bcmp(), for constant-time memory comparison
hlinnaka May 11, 2026
f1bd6b7
Make palloc_array() and friends safe against integer overflow.
tglsfdc May 11, 2026
d5e22ca
Adapt cloubderry mock generator for pg_noinline function attribute
reshke May 24, 2026
bc43fd1
Fix rebase issue in ac34fdb2af95
reshke May 30, 2026
6654e8e
Block environment variable mutations from trusted PL/Perl.
nmisch Nov 11, 2024
251f21f
Ensure cached plans are correctly marked as dependent on role.
nathan-bossart Nov 11, 2024
0e2ca06
Add needed .gitignore files in back branches.
tglsfdc Nov 11, 2024
a5542c0
src/tools/msvc: Respect REGRESS_OPTS in plcheck.
nmisch Nov 11, 2024
3473205
Fix cross-version upgrade tests.
tglsfdc Nov 11, 2024
783d924
Fix for CBDB regression suite
reshke Jun 4, 2026
4d4f193
docs: EUC_TW can be up to four bytes wide, not three
anarazel Feb 10, 2025
daeccc7
Fix PQescapeLiteral()/PQescapeIdentifier() length handling
anarazel Feb 14, 2025
b32f4df
test_escape: Fix handling of short options in getopt_long()
michaelpq Feb 19, 2025
855e5f2
test_escape: Fix output of --help
michaelpq Feb 20, 2025
6b6d421
Refactor test_escape.c for additional ways of testing.
nmisch May 5, 2025
ca97e41
Fix JSON error reporting for many cases of erroneous string values.
tglsfdc Mar 13, 2023
f0ebcce
Fix overread in JSON parsing errors for incomplete byte sequences
michaelpq May 9, 2024
2b3f662
With GB18030, prevent SIGSEGV from reading past end of allocation.
nmisch May 5, 2025
ced681b
Make EXEC_BACKEND more convenient on Linux and FreeBSD.
michaelpq Feb 8, 2023
3a2ab9f
Stop recommending auto-download of DTD files, and indeed disable it.
tglsfdc Feb 8, 2023
6f004a6
Disable WindowAgg inverse transitions when subplans are present
david-rowley Feb 13, 2023
5051b11
Fix handling of SCRAM-SHA-256's channel binding with RSA-PSS certific…
michaelpq Feb 15, 2023
60d920b
Print the correct aliases for DML target tables in ruleutils.
tglsfdc Feb 17, 2023
de77802
Fix handling of multi-column BRIN indexes
tvondra Feb 18, 2023
3a30126
pgbench: Prepare commands in pipelines in advance
alvherre Feb 21, 2023
95aef45
Add missing support for the latest SPI status codes.
deanrasheed Feb 22, 2023
58ae6c5
Fix snapshot handling in logicalmsg_decode
tvondra Feb 22, 2023
b08d759
Don't repeatedly register cache callbacks in pgoutput plugin.
tglsfdc Feb 23, 2023
13c2d0e
Fix mishandling of OLD/NEW references in subqueries in rule actions.
deanrasheed Feb 25, 2023
c614898
Don't force SQL_ASCII/no-locale for installcheck in vcregress.pl
adunstan Feb 26, 2023
694f982
Harden postgres_fdw tests against unexpected cache flushes.
tglsfdc Feb 27, 2023
7eeac62
Avoid fetching one past the end of translate()'s "to" parameter.
tglsfdc Mar 1, 2023
bd3da18
pageinspect: Fix crash with gist_page_items()
michaelpq Mar 2, 2023
0e1b90d
Fix assert failures in parallel SERIALIZABLE READ ONLY.
macdice Mar 6, 2023
f511ae4
Fix more bugs caused by adding columns to the end of a view.
tglsfdc Mar 7, 2023
92a8d2c
Fix corruption due to vacuum_defer_cleanup_age underflowing 64bit xids
anarazel Mar 8, 2023
10110a2
Fix race in SERIALIZABLE READ ONLY.
macdice Mar 9, 2023
82d57f1
Fix misbehavior in contrib/pg_trgm with an unsatisfiable regex.
tglsfdc Mar 11, 2023
ab97c01
amcheck: Fix ordering bug in update_cached_xid_range()
anarazel Mar 11, 2023
21f34a6
amcheck: Fix FullTransactionIdFromXidAndCtx() for xids before epoch 0
anarazel Mar 11, 2023
ebdda3b
Mark unsafe_tests module as not runnable with installcheck
adunstan Mar 12, 2023
44984f4
Fix inconsistent error handling for GSS encryption in PQconnectPoll()
michaelpq Mar 13, 2023
db6a700
Remove unnecessary code in dependency_is_compatible_expression().
tglsfdc Mar 14, 2023
0c44322
Fix corner case bug in numeric to_char() some more.
tglsfdc Mar 14, 2023
20604fb
Fix waitpid() emulation on Windows.
macdice Mar 15, 2023
46612e8
Fix fractional vacuum_cost_delay.
macdice Mar 15, 2023
ffa2bdf
Improve WIN32 port of fstat() to detect more file types
michaelpq Mar 15, 2023
b768557
Doc: mention CREATE+ATTACH PARTITION with CREATE TABLE...PARTITION OF.
tglsfdc Mar 16, 2023
d4feb38
Small tidyup for commit d41a178b.
macdice Mar 16, 2023
0e8726b
Small tidyup for commit d41a178b, part II.
macdice Mar 17, 2023
ae1b615
tests: Minimize syslog activity by slapd
anarazel Mar 17, 2023
7340f98
tests: Prevent syslog activity by slapd, take 2
anarazel Mar 17, 2023
3c8778e
Fix pg_dump for hash partitioning on enum columns.
tglsfdc Mar 17, 2023
da1a01e
Doc: fix documentation example for bytea hex output format.
tglsfdc Mar 18, 2023
656a507
Fix memory leak in Memoize cache key evaluation
david-rowley Mar 20, 2023
fb19cad
Fix netmask handling in inet_minmax_multi_ops
tvondra Mar 20, 2023
952b141
Fix race in parallel hash join batch cleanup, take II.
macdice Mar 21, 2023
8365da5
Ignore dropped columns during apply of update/delete.
Mar 21, 2023
89f364a
doc: Add description of some missing monitoring functions
michaelpq Mar 22, 2023
03c51c2
Ignore generated columns during apply of update/delete.
Mar 23, 2023
8fa3a2e
amcheck: Fix verify_heapam for tuples where xmin or xmax is 0.
robertmhaas Mar 23, 2023
63e86c8
Fix oversights in array manipulation.
tglsfdc Mar 26, 2023
ca2bcd8
Reject attempts to alter composite types used in indexes.
tglsfdc Mar 27, 2023
a6a6792
doc: Fix XML_CATALOG_FILES env var for Apple Silicon machines
danielgustafsson Mar 27, 2023
58ad356
amcheck: In verify_heapam, allows tuples with xmin 0.
robertmhaas Mar 28, 2023
9bc61cc
Fix dereference of dangling pointer in GiST index buffering build.
tglsfdc Mar 29, 2023
b65c880
Fix List memory issue in transformColumnDefinition
david-rowley Mar 30, 2023
7ed7f92
Ensure acquire_inherited_sample_rows sets its output parameters.
tglsfdc Mar 31, 2023
fdfb9fd
Reject system columns as elements of foreign keys.
tglsfdc Mar 31, 2023
1e3b3d2
doc: Add more details about pg_stat_get_xact_blocks_{fetched,hit}
michaelpq Apr 4, 2023
580caa7
doc: Update error messages in RLS examples
j-naylor Apr 5, 2023
541aaab
Fix ts_headline() edge cases for empty query and empty search text.
tglsfdc Apr 6, 2023
15e6355
Stabilize just-added regression test cases.
tglsfdc Apr 6, 2023
f522dfa
For Kerberos testing, disable reverse DNS lookup
sfrost Apr 7, 2023
2559631
For Kerberos testing, disable DNS lookups
sfrost Apr 7, 2023
1b42208
Doc: adjust examples of EXTRACT() output to match current reality.
tglsfdc Apr 10, 2023
868e6ad
Doc: add missed entries in BRIN extensibility tables.
tglsfdc Apr 10, 2023
c63fcf0
Fix detection of unseekable files for fseek() and ftello() with MSVC
michaelpq Apr 12, 2023
bdaaa78
doc: PQinitOpenSSL and PQinitSSL are obsolete in OpenSSL 1.1.0+
danielgustafsson Apr 14, 2023
e29f6ba
Avoid trying to write an empty WAL record in log_newpage_range().
tglsfdc Apr 17, 2023
2178a52
ecpg: Fix handling of strings in ORACLE compat code with SQLDA
michaelpq Apr 18, 2023
fa4085e
Use --strip-unneeded when stripping static libraries with GNU strip.
tglsfdc Apr 20, 2023
dcad158
Fix custom validators call in build_local_reloptions()
akorotkov Apr 23, 2023
da6a015
Remove duplicate lines of code
danielgustafsson Apr 24, 2023
af4272e
Fix memory leakage in plpgsql DO blocks that use cast expressions.
tglsfdc Apr 24, 2023
463d235
Fix vacuum_cost_delay check for balance calculation.
danielgustafsson Apr 25, 2023
6ca873b
Re-add tracking of wait event SLRUFlushSync
michaelpq Apr 25, 2023
6fcfa2d
In hstore_plpython, avoid crashing when return value isn't a mapping.
tglsfdc Apr 27, 2023
2d1f9e5
Fix crashes with CREATE SCHEMA AUTHORIZATION and schema elements
michaelpq Apr 28, 2023
99b0ec0
Tighten array dimensionality checks in Perl -> SQL array conversion.
tglsfdc Apr 29, 2023
ee6c73c
doc: Fix typo in pg_amcheck for term "schema"
michaelpq May 2, 2023
8cd4ff4
Doc: clarify behavior of row-limit arguments in the PLs' SPI wrappers.
tglsfdc May 2, 2023
21c387b
In array_position()/array_positions(), beware of empty input array.
tglsfdc May 4, 2023
6aea405
Fix prove_installcheck when used with PGXS
petere May 5, 2023
a130d93
Fix typo with wait event for SLRU buffer of commit timestamps
michaelpq May 5, 2023
0da40ef
Adapt regreesion test suite for changes
reshke Jun 6, 2026
31b18ef
Fix security checks in selectivity estimation functions.
deanrasheed Aug 11, 2025
1620101
Convert newlines to spaces in names written in v11+ pg_dump comments.
nmisch Aug 11, 2025
c55112b
Restrict psql meta-commands in plain-text dumps.
nathan-bossart Aug 11, 2025
9c72478
Fix MSVC pg_upgrade test.
nathan-bossart Aug 11, 2025
95ae593
Adapt Cloudberry ABI compatibility checkers for CVE-2025-8714 fix
reshke Jun 6, 2026
6c230b3
regression fixes
reshke Jun 6, 2026
d8c4d95
GitHub: enable the blank issues support
tuhaihe Jun 4, 2025
894867b
Generate gp_ view for desired pg_ system views
huansong Mar 20, 2023
c2a606f
Fix system_views_gp.in and fix test query_conflict
fanfuxiaoran Jun 10, 2025
4699ddb
Fix names of pg_stat_all_tables|indexes
huansong Mar 20, 2023
3ce9317
Add gp_stat_progress_%_summary system views
l-wang Apr 27, 2023
e6ea65a
Add gp summary system views
AJR-VMware Apr 7, 2023
9fc966f
Run gp_internal_tools tests
andr-sokolov Dec 30, 2025
d604ff1
initdb: fix stale errno handling in setup_cdb_schema()
tuhaihe Feb 28, 2026
d6192cc
Fix invalid escape sequences in Python files
tuhaihe Mar 2, 2026
687d4fd
Fix LICENSE path for ISC license file
tuhaihe Mar 16, 2026
f309b7c
[MINOR] Remove unused build script that used non-HTTPS to download code
pjfanning Mar 18, 2026
26be110
Fix SIGSEGV on segments when creating in-place tablespace
yjhjstz Mar 17, 2026
d7f2331
Fix session lock leak in ALTER DATABASE SET TABLESPACE for utility mode
yjhjstz Mar 17, 2026
53a0407
Fix PostgresNode.pm for TAP tests on CBDB
yjhjstz Mar 17, 2026
54162d6
ORCA: Fix use-after-free in flatten_join_alias_var_optimizer
yjhjstz Mar 13, 2026
54f44b1
ORCA: Fix incorrect decorrelation of GROUP BY () HAVING <outer_ref>
yjhjstz Mar 13, 2026
c6e7a5c
Support AQUMV exact-match for multi-table JOIN queries
avamingli Mar 5, 2026
07b821f
Address review feedback for AQUMV join exact-match
avamingli Mar 10, 2026
1b13f98
Fix ORDER BY lost after AQUMV join rewrite
avamingli Mar 10, 2026
743f68e
Prevent pgstats from getting confused when relkind of a relation changes
anarazel Dec 3, 2022
4084cf1
Restrict accesses to non-system views and foreign tables during pg_dump.
MasahikoSawada Aug 5, 2024
c474806
Remove unused concourse/* from source
tuhaihe Mar 20, 2026
fcaa4de
Stop installing diskquota build-info file
tuhaihe Mar 16, 2026
c828ad7
Fix syntax error in the bash script regarding LD_LIBRARY_PATH
fairyfar Mar 16, 2026
a489d2a
Set GUC "is_superuser" in all processes that set AuthenticatedUserId.
nmisch Nov 6, 2023
7eb5d85
libpq: Bail out during SSL/GSS negotiation errors (#1633)
reshke Mar 25, 2026
18c5918
Parallel Hash Full Join.
macdice Mar 30, 2023
992e34a
Fix PHJ match bit initialization.
macdice Apr 13, 2023
d12bef2
Fix instability in regression test for Parallel Hash Full Join
michaelpq Jun 12, 2023
337ef46
Parallel Hash Full Join and Right Join
avamingli Mar 24, 2026
1259af5
tests: add Parallel Hash Full/Right Join regression cases
avamingli Mar 24, 2026
f7ef9a1
Widen MotionLayerState stat counters from uint32 to uint64 (#1647)
NJrslv Mar 30, 2026
7deca90
Fix the issue of duplicate counting of num_executed in gp_toolkit.gp_…
fairyfar Mar 29, 2026
6afa5b7
Fix ORCA choosing wrong column type for CTAS with UNION ALL (#1431) (…
yjhjstz Apr 1, 2026
b8e6a9d
Revert "Fix COPY TO returning 0 rows during concurrent reorganize"
yjhjstz Apr 1, 2026
49a0f59
[yagp_hooks_collector] Add extension skeleton with GRPC transport
Smyatkin-Maxim Mar 23, 2023
208a37c
[yagp_hooks_collector] Fix segfault in plan text generator
Smyatkin-Maxim Mar 28, 2023
9eaaaa5
[yagp_hooks_collector] Add executor instrumentation, /proc stats, and…
Smyatkin-Maxim Mar 29, 2023
f1d5c16
[yagp_hooks_collector] Apply llvm code style
Smyatkin-Maxim Apr 6, 2023
eb9c9a7
[yagp_hooks_collector] Switch to query_info_collect_hook and fix stab…
Smyatkin-Maxim Apr 10, 2023
2c50021
[yagp_hooks_collector] Add debian packaging and bionic GRPC compatibi…
Smyatkin-Maxim May 1, 2023
0330cd6
[yagp_hooks_collector] Add CDB metrics, query nesting, and configurat…
Smyatkin-Maxim May 4, 2023
f9f89dd
[yagp_hooks_collector] Diff system stats per-query and improve error …
Smyatkin-Maxim Jun 7, 2023
0766e62
[yagp_hooks_collector] Fix EventSender and GrpcConnector in forked pr…
Smyatkin-Maxim Jun 13, 2023
0f8a430
[yagp_hooks_collector] Fix memory leak in EXPLAIN ANALYZE code path
Smyatkin-Maxim Aug 16, 2023
221311a
[yagp_hooks_collector] Add motion network and workfile spill stats
Smyatkin-Maxim Sep 6, 2023
6fa8c3d
[yagp_hooks_collector] Clean up threading, signal handling, and logging
Smyatkin-Maxim Sep 6, 2023
c8dddf0
[yagp_hooks_collector] Add ignored_users_list GUC
Smyatkin-Maxim Sep 21, 2023
ee9c805
[yagp_hooks_collector] Replace GRPC transport with protobuf-over-UDS
Smyatkin-Maxim Oct 2, 2023
49af1b7
[yagp_hooks_collector] Fix missing query statuses after protobuf migr…
Smyatkin-Maxim Nov 2, 2023
6d42cd1
[yagp_hooks_collector] Add stat_messages() runtime statistics view
Smyatkin-Maxim Nov 13, 2023
6b41581
[yagp_hooks_collector] Fix message lifecycle ordering and memory leaks
Smyatkin-Maxim Nov 15, 2023
fad49eb
[yagp_hooks_collector] Improve query_id and resource group resolution
Smyatkin-Maxim Dec 26, 2023
63bfe5e
[yagp_hooks_collector] Add nested query tracking
Smyatkin-Maxim May 17, 2024
e3cc4c7
[yagp_hooks_collector] Add configurable text field trimming
Smyatkin-Maxim May 28, 2024
ddf2f4e
[yagp_hooks_collector] Add error message reporting for failed queries
Smyatkin-Maxim May 28, 2024
5592f44
[yagp_hooks_collector] Change report_nested_queries to PGC_USERSET
Smyatkin-Maxim Jun 3, 2024
8cc491f
[yagp_hooks_collector] Diff per-query stats between submit and end
Smyatkin-Maxim Jun 13, 2024
af843a5
[yagp_hooks_collector] Fix try/catch block when calling C++ code from…
Smyatkin-Maxim Aug 7, 2024
3def9fc
[yagp_hooks_collector] Improve nested query handling and add slice info
Smyatkin-Maxim Sep 12, 2024
f4a3e7f
[yagp_hooks_collector] Split EventSender into submodules
Smyatkin-Maxim Nov 7, 2024
d65fff5
[yagp_hooks_collector] Ignore EXPLAIN VERBOSE errors for unsupported …
Smyatkin-Maxim Apr 7, 2025
95a15c6
[yagp_hooks_collector] Add per-slice interconnect statistics
Smyatkin-Maxim Apr 18, 2025
0f9290b
[yagp_hooks_collector] Fix user filtering propagation timing
NJrslv Jun 9, 2025
0e0fadd
[yagp_hooks_collector] Miscellaneous fixes and refactoring
NJrslv Jun 16, 2025
0cb4930
[yagp_hooks_collector] Add conditional EXPLAIN ANALYZE collection
NJrslv Jun 24, 2025
4ee91cf
[yagp_hooks_collector] Fix memory leaks, add safe C++ wrappers, impro…
NJrslv Jun 27, 2025
36cd8f5
[yagp_hooks_collector] Add utility statement tracking and metrics doc…
NJrslv Jul 14, 2025
82d11bc
[yagp_hooks_collector] Add regression tests, ANALYZE text output, and…
NJrslv Sep 4, 2025
16b42c8
[yagp_hooks_collector] Port backend infrastructure and adapt for Clou…
NJrslv Jan 19, 2026
3563d78
[yagp_hooks_collector] Add --with-yagp-hooks-collector configure opti…
NJrslv Jan 19, 2026
0984ee4
[yagp_hooks_collector] Add consistent GUC filtering and submit/done h…
NJrslv Jan 19, 2026
d7cc4fc
[yagp_hooks_collector] Add UDS round-trip test and fix send() accounting
NJrslv Jan 20, 2026
2a83ca0
[yagp_hooks_collector] Fix locale-dependent normalization crash
NJrslv Jan 21, 2026
643a681
[yagp_hooks_collector] Add Apache license headers and enable -Werror
NJrslv Jan 21, 2026
5bc75ae
[yagp_hooks_collector] Fix null ErrorData dereference on segments
NJrslv Feb 10, 2026
aa20a4d
[yagp_hooks_collector] Move to gpcontrib directory
Mar 18, 2026
8d4750a
[gp_stats_collector] Rename yagp_hooks_collector to gp_stats_collector
NJrslv Mar 25, 2026
9dbd12b
[gp_stats_collector] Simplify Makefile and add -Wno-unused-but-set-va…
NJrslv Mar 26, 2026
25d66ff
[gp_stats_collector] Build by default with extension disabled via GUCs
NJrslv Mar 31, 2026
1bcb523
[gp_stats_collector] Code quality cleanup
NJrslv Mar 31, 2026
796083d
[gp_stats_collector] Wrap hook call in try/catch on error path
NJrslv Mar 31, 2026
a7279b9
[gp_stats_collector] Adapt namings for Cloudberry
NJrslv Mar 31, 2026
0c98691
[gp_stats_collector] Remove unnecessary CONFIGURE_EXTRA_OPTS param
NJrslv Apr 1, 2026
96caa8d
Fix sed -i compatibility in configure.ac
zhangyue1818 Apr 3, 2026
2ecd058
Disable mdblocales by default in configure
tuhaihe Mar 31, 2026
1acbfbe
Regenerate configure for gp_stats_clolector
tuhaihe Mar 31, 2026
198329c
Add missing runtime dependencies for minimal installations
tuhaihe Apr 2, 2026
8712d2b
Fix compliance issues for RPM and DEB packages
tuhaihe Apr 3, 2026
fef4248
Build: make diskquota installation opt-in
tuhaihe Apr 7, 2026
c7c96aa
pg_dump/psql: properly recognize GP
Smyatkin-Maxim Apr 3, 2026
6801342
Improve the SQL tab-completion feature for resource group (#1669)
fairyfar Apr 9, 2026
eea9250
Fix aoco_relation_size() using wrong snapshot to read pg_aocsseg
yjhjstz Apr 8, 2026
392fbcf
CI: fix 'Check and Display Regression Diffs' step to use bash shell (…
yjhjstz Apr 10, 2026
42dc916
Fix SIGSEGV in fsm_extend when vacuuming tables in non-default tables…
avamingli Apr 2, 2026
eb4fae1
ORCA: fall back to Postgres planner for KNN ORDER BY queries (#1653)
yjhjstz Apr 16, 2026
80ece00
Fix: Python build dependencies installation
tuhaihe Nov 12, 2025
c5b9fcb
ORCA: add optimizer_use_streaming_hashagg GUC (#1681)
yjhjstz Apr 21, 2026
5980dae
Align release artifact naming with ASF incubator conventions
tuhaihe Apr 21, 2026
eb5a493
CI: use commit hash for Docker actions
tuhaihe Apr 21, 2026
9504b57
CI: Add Ubuntu24.04 workflow with test matrix support
tuhaihe Apr 20, 2026
08f0bd3
Fix Python 3.12 SyntaxWarning in orphaned_toast_tables_check.py
tuhaihe Apr 21, 2026
93a38e7
Fix colNDVBySeg attnum index mismatch in column-specific ANALYZE …
yjhjstz Apr 23, 2026
9476679
DevOps: upgrade Go to 1.24.13 in Docker build images
tuhaihe Apr 22, 2026
9a94474
CI: update docker/setup-qemu-action to v4.0.0
tuhaihe Apr 22, 2026
3737bd8
Sandbox: add Cloudberry 2.1.0 release support
tuhaihe Apr 22, 2026
1179057
Fix: init missing PlannedStmt fields in orca
yjhjstz Apr 24, 2026
423f77f
Add Rocky Linux 10 Docker containers (#1676)
leborchuk Apr 27, 2026
e8fb89f
Fix incompatibilities with libxml2 >= 2.12.0.
tglsfdc Jan 29, 2024
ee58e7a
Avoid "unused variable" warning on non-USE_SSL_ENGINE platforms.
tglsfdc Apr 1, 2024
0965587
Do not include protobuf files twice
Apr 13, 2026
a66fb4c
xml2: Replace deprecated routines with recommended ones
michaelpq Jan 16, 2024
8e3080a
Fix copy for rocky linux
Apr 23, 2026
638f635
Fix: set FRAMEOPTION_BETWEEN for ORCA window frames
yjhjstz Apr 27, 2026
99fdb61
SIGSEGV in getCdbComponentInfo() when standby coordinator is on dedic…
jangjang0401 Apr 29, 2026
0c66533
orca: fallback to Postgres optimizer on cross-slice replicated CTE Co…
Alena0704 May 12, 2026
f86dffb
DevOps: upgrade Go from 1.24.13 to 1.25.10 in dev images
tuhaihe May 13, 2026
0f5b3f9
ORCA: keep HAVING above a scalar GbAgg in CNormalizer::FPushable
yjhjstz Apr 22, 2026
41b4e37
orca: implement intra-segment parallel table scan support
yjhjstz Oct 12, 2025
eb3302d
orca: add parallel scan test
yjhjstz May 13, 2026
71d09dc
PAX stats test: wait for seq_tup_read before exiting wait_for_stats()
yjhjstz May 8, 2026
3aa8b88
DevOps: add libicu-devel to Rocky Linux build images
tuhaihe May 12, 2026
3459483
Fix gppkg error: 'SyncPackages' object has no attribute 'ret'.
woblerr May 2, 2026
3bb7555
Fix: FDW OPTIONS encoding accepts symbolic names (issue #1726) (#1727)
talmacschen-arch May 15, 2026
ee23816
AO vacuum: CommandCounterIncrement before AppendOptimizedTruncateToEOF
yjhjstz May 15, 2026
25d8e70
Fix use-after-free in GetExtStatisticsName
yjhjstz May 15, 2026
78df1e0
Minor typo: transfrom->transform
Smyatkin-Maxim May 18, 2026
150e3bf
Fix recovery slot handling before pg_basebackup (#1675)
aviralgarg05 May 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .abi-check/7.1.0/postgres.symbols.ignore
Original file line number Diff line number Diff line change
@@ -1 +1,12 @@
pgarch_start
ConfigureNamesInt_gp
child_triggers
has_update_triggers
ConfigureNamesBool_gp
aocs_beginscan
AppendOnlyBlockDirectory_GetEntry
ConfigureNamesString_gp
gp_pause_on_restore_point_replay
ConfigureNamesReal_gp
TableAmRoutine
MainLWLockNames
13 changes: 13 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ github:
# Actions workflows. They do not include the workflow name as a
# prefix
contexts:
- rat-check
- check-skip
- Build Apache Cloudberry RPM
- RPM Install Test Apache Cloudberry
Expand Down Expand Up @@ -121,6 +122,18 @@ github:
# Require conversation threads to be resolved
required_conversation_resolution: true

# Branch protection for REL_2_STABLE release branch
REL_2_STABLE:
# Pull request review requirements
required_pull_request_reviews:
# Require new reviews when new commits are pushed
dismiss_stale_reviews: false
# Require at least 2 approving reviews
required_approving_review_count: 2

# Require conversation threads to be resolved
required_conversation_resolution: true

# Branch cleanup settings
# Don't automatically delete branches after merging
del_branch_on_merge: true
Expand Down
20 changes: 20 additions & 0 deletions .github/DISCUSSION_TEMPLATE/ideas-feature-requests.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
# --------------------------------------------------------------------
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to You under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of the
# License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied. See the License for the specific language governing
# permissions and limitations under the License.
#
# --------------------------------------------------------------------

title: "[Ideas] "
labels: ["type: Enhancement"]
body:
Expand Down
20 changes: 20 additions & 0 deletions .github/DISCUSSION_TEMPLATE/proposal.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
# --------------------------------------------------------------------
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to You under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of the
# License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied. See the License for the specific language governing
# permissions and limitations under the License.
#
# --------------------------------------------------------------------

title: "[Proposal] "
labels: ["type: Proposal"]
body:
Expand Down
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
# --------------------------------------------------------------------
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to You under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of the
# License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied. See the License for the specific language governing
# permissions and limitations under the License.
#
# --------------------------------------------------------------------

name: "\U0001F41B Bug Report"
description: Problems and issues with code in Apache Cloudberry core.
title: "[Bug] "
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
blank_issues_enabled: false
blank_issues_enabled: true
contact_links:
- name: 🙏🏻 Q&A
url: https://github.com/apache/cloudberry/discussions/categories/q-a
Expand Down
258 changes: 258 additions & 0 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# GitHub Actions Workflows

This directory contains GitHub Actions workflows for Apache Cloudberry CI/CD.

## Table of Contents

- [Available Workflows](#available-workflows)
- [Manual Workflow Triggers](#manual-workflow-triggers)
- [Artifact Reuse for Faster Testing](#artifact-reuse-for-faster-testing)
- [Running Workflows in Forked Repositories](#running-workflows-in-forked-repositories)

## Available Workflows

| Workflow | Purpose | Trigger |
|----------|---------|---------|
| `build-cloudberry.yml` | Main CI: build, test, create RPMs | Push, PR, Manual |
| `build-dbg-cloudberry.yml` | Debug build with assertions enabled | Push, PR, Manual |
| `apache-rat-audit.yml` | License header compliance check | Push, PR |
| `coverity.yml` | Static code analysis with Coverity | Weekly, Manual |
| `sonarqube.yml` | Code quality analysis with SonarQube | Push to main |
| `docker-cbdb-build-containers.yml` | Build Docker images for CI | Manual |
| `docker-cbdb-test-containers.yml` | Build test Docker images | Manual |

## Manual Workflow Triggers

Many workflows support manual triggering via `workflow_dispatch`, allowing developers to run CI jobs on-demand.

### How to Manually Trigger a Workflow

1. Navigate to the **Actions** tab in GitHub
2. Select the workflow from the left sidebar (e.g., "Build and Test Cloudberry")
3. Click **Run workflow** button (top right)
4. Select your branch
5. Configure input parameters (if available)
6. Click **Run workflow**

### Workflow Input Parameters

#### `build-cloudberry.yml` - Main CI

| Parameter | Description | Default | Example |
|-----------|-------------|---------|---------|
| `test_selection` | Comma-separated list of tests to run, or "all" | `all` | `ic-good-opt-off,ic-contrib` |
| `reuse_artifacts_from_run_id` | Run ID to reuse build artifacts from (see below) | _(empty)_ | `12345678901` |

**Available test selections:**
- `all` - Run all test suites
- `ic-good-opt-off` - Installcheck with optimizer off
- `ic-good-opt-on` - Installcheck with optimizer on
- `ic-contrib` - Contrib extension tests
- `ic-resgroup` - Resource group tests
- `ic-resgroup-v2` - Resource group v2 tests
- `ic-resgroup-v2-memory-accounting` - Resource group memory tests
- `ic-singlenode` - Single-node mode tests
- `make-installcheck-world` - Full test suite
- And more... (see workflow for complete list)

## Artifact Reuse for Faster Testing

When debugging test failures, rebuilding Cloudberry (~50-70 minutes) on every iteration is inefficient. The artifact reuse feature allows you to reuse build artifacts from a previous successful run.

### How It Works

1. Build artifacts (RPMs, source tarballs) from a previous workflow run are downloaded
2. Build job is skipped (saves ~45-60 minutes)
3. RPM installation test is skipped (saves ~5-10 minutes)
4. Test jobs run with the reused artifacts
5. You can iterate on test configurations without rebuilding

### Step-by-Step Guide

#### 1. Find the Run ID

After a successful build (even if tests failed), get the run ID:

**Option A: From GitHub Actions UI**
- Go to **Actions** tab → Click on a completed workflow run
- The URL will be: `https://github.com/apache/cloudberry/actions/runs/12345678901`
- The run ID is `12345678901`

**Option B: From GitHub API**
```bash
# List recent workflow runs
gh run list --workflow=build-cloudberry.yml --limit 5

# Get run ID from specific branch
gh run list --workflow=build-cloudberry.yml --branch=my-feature --limit 1
```

#### 2. Trigger New Run with Artifact Reuse

**Via GitHub UI:**
1. Go to **Actions** → **Build and Test Cloudberry**
2. Click **Run workflow**
3. Enter the run ID in **"Reuse build artifacts from a previous run ID"**
4. Optionally customize **test_selection**
5. Click **Run workflow**

**Via GitHub CLI:**
```bash
# Reuse artifacts from run 12345678901, run only specific tests
gh workflow run build-cloudberry.yml \
--field reuse_artifacts_from_run_id=12345678901 \
--field test_selection=ic-good-opt-off
```

#### 3. Monitor Test Execution

- Build job will be skipped (shows as "Skipped" in Actions UI)
- RPM Install Test will be skipped
- Test jobs will run with artifacts from the specified run ID
- Total time: ~15-30 minutes (vs ~65-100 minutes for full build+test)

### Use Cases

**Debugging a specific test failure:**
```bash
# Run 1: Full build + all tests (finds test failure in ic-good-opt-off)
gh workflow run build-cloudberry.yml

# Get the run ID from output
RUN_ID=$(gh run list --workflow=build-cloudberry.yml --limit 1 --json databaseId --jq '.[0].databaseId')

# Run 2: Reuse artifacts, run only failing test
gh workflow run build-cloudberry.yml \
--field reuse_artifacts_from_run_id=$RUN_ID \
--field test_selection=ic-good-opt-off
```

**Testing different configurations:**
```bash
# Test with optimizer off, then on, using same build
gh workflow run build-cloudberry.yml \
--field reuse_artifacts_from_run_id=$RUN_ID \
--field test_selection=ic-good-opt-off

gh workflow run build-cloudberry.yml \
--field reuse_artifacts_from_run_id=$RUN_ID \
--field test_selection=ic-good-opt-on
```

### Limitations

- Artifacts expire after 90 days (GitHub default retention)
- Run ID must be from the same repository (or accessible fork)
- Artifacts must include both RPM and source build artifacts
- Cannot reuse artifacts across different OS/architecture combinations
- Changes to source code require a fresh build

## Running Workflows in Forked Repositories

GitHub Actions workflows are enabled in forks, allowing you to validate changes before submitting a Pull Request.

### Initial Setup (One-Time)

1. **Fork the repository** to your GitHub account

2. **Enable GitHub Actions** in your fork:
- Go to your fork's **Actions** tab
- Click **"I understand my workflows, go ahead and enable them"**

**Secrets Configuration:**

No manual secret configuration is required for the main build and test workflows.

- `GITHUB_TOKEN` is automatically provided by GitHub and used when downloading artifacts from previous runs (artifact reuse feature)
- DockerHub secrets (`DOCKERHUB_USER`, `DOCKERHUB_TOKEN`) are only required for building custom container images (advanced/maintainer use case, not needed for typical development)

### Workflow Behavior in Forks

- ✅ **Automated triggers work**: Push and PR events trigger workflows
- ✅ **Manual triggers work**: `workflow_dispatch` is fully functional
- ✅ **Artifact reuse works**: Can reuse artifacts from previous runs in your fork
- ⚠️ **Cross-fork artifact reuse**: Not supported (security restriction)
- ⚠️ **Some features may be limited**: Certain features requiring organization-level secrets may not work

### Best Practices for Fork Development

1. **Test locally first** when possible (faster iteration)
2. **Use manual triggers** to avoid burning GitHub Actions minutes unnecessarily
3. **Use artifact reuse** to iterate on test failures efficiently
4. **Push to feature branches** to trigger automated CI
5. **Review Actions tab** to ensure workflows completed successfully before opening PR

### Example Fork Workflow

```bash
# 1. Create feature branch in fork
git checkout -b fix-test-failure

# 2. Make changes and push to fork
git commit -am "Fix test failure"
git push origin fix-test-failure

# 3. CI runs automatically on push

# 4. If tests fail, iterate using artifact reuse
# Get run ID from your fork's Actions tab
gh workflow run build-cloudberry.yml \
--field reuse_artifacts_from_run_id=12345678901 \
--field test_selection=ic-good-opt-off

# 5. Once tests pass, open PR to upstream
gh pr create --web
```

## Troubleshooting

### "Build job was skipped but tests failed to start"

**Cause:** Artifacts from specified run ID not found or expired

**Solution:**
- Verify the run ID is correct
- Check that run completed successfully (built artifacts)
- Run a fresh build if artifacts expired (>90 days)

### "Workflow not found in fork"

**Cause:** GitHub Actions not enabled in fork

**Solution:**
- Go to fork's **Actions** tab
- Click to enable workflows

### "Resource not accessible by integration"

**Cause:** Workflow trying to access artifacts from different repository

**Solution:**
- Can only reuse artifacts from same repository
- Run a fresh build in your fork first, then reuse those artifacts

## Additional Resources

- [GitHub Actions Documentation](https://docs.github.com/en/actions)
- [Cloudberry Contributing Guide](../../CONTRIBUTING.md)
- [Cloudberry Build Guide](../../deploy/build/README.md)
- [DevOps Scripts](../../devops/README.md)
Loading