Skip to content

Conversation

jrgemignani
Copy link
Contributor

@jrgemignani jrgemignani commented Jul 31, 2025

PR to move master branch to PostgreSQL version 17.

Note: This branch merges branch PG17 into the master branch.

Conflicts:
.asf.yaml
.github/workflows/installcheck.yaml

Changes to be committed:

    modified:   .asf.yaml
    modified:   .github/labeler.yml
    modified:   .github/workflows/installcheck.yaml
    modified:   README.md
    modified:   docker/Dockerfile
    modified:   docker/Dockerfile.dev
    modified:   src/backend/nodes/ag_nodes.c
    modified:   src/backend/parser/cypher_analyze.c

uhayat and others added 9 commits February 21, 2025 10:20
- A new node type is introduced for JSON support, that is
  JsonConstructorExpr - wrapper over FuncExpr/Aggref/WindowFunc for
  SQL/JSON constructors.
- Added additional checks for JsonConstructorExpr expression node for
  which the walker would crash.
- Removed palloc0fast function call (which is not available in PG17)
- Currently, all workflows are targeting the `PG17_prepare` branch,
  which will be changed to `PG17` once the branch is renamed.
- Updated all the github workflows
- Updated the README
- Updated repo settings
- Updated the Dockerfiles
- Removed stale bot.
  (https://lists.apache.org/thread/qh4h2z6hsjy2v7wg8mwfnl6cbjp28y08)
- Decrease required PR approvals by one.
  (https://lists.apache.org/thread/kmz155t6k0h3b26fjpz36924zthqjlpm)
- Fixed a warning reported by apache infra i.e.
  "An error occurred while processing the github
   feature in .asf.yaml: GitHub discussions can
   only be enabled if a mailing list target exists
   for it."
Adjust workflow/labeler.yml to add permissions.
Adjusted the following CI files (workflows) for PG17, they
originally pointed to PG17_prepare -

modified:   .github/workflows/go-driver.yml
modified:   .github/workflows/installcheck.yaml
modified:   .github/workflows/jdbc-driver.yaml
modified:   .github/workflows/nodejs-driver.yaml
modified:   .github/workflows/python-driver.yaml
modified:   drivers/docker-compose.yml
modified:   .github/labeler.yml
* Revert "Fix issue 1955 - List comprehension in WHERE clause (apache#2094)"

This reverts commit 0f0d9be.

* Revert "Fix error using list comprehension with WITH * (apache#1838)"

This reverts commit 5e08a2f.

* Revert "Fix shift/reduce conflict in grammar (apache#1719)"

This reverts commit fab3119.

* Revert "Implement list comprehension (apache#1610)"

This reverts commit 3b2b394.

* Reimplement list comprehension

- Reimplement list comprehension to use ARRAY sublinks.
- Some test results were not correct. All the test results that are
  modified are correct and are verified with neo4j.
- Also resolves the issue of using list comprehension in MERGE clause (1611)
  and issue 1850

* Add expression tree walkers for cypher nodes

- Added cypher_raw_expr_tree_walker and cypher_expr_tree_walker, based
  on Postgres's raw_expression_tree_walker and expression_tree_walker.
  These follow the same walker API as Postgres and add support for
  Cypher-specific nodes.
- Also added the agtype[] to agtype func and typecast to 1.5.0-y.y.y.sql
- Simplifies logic for cypher_subquery handling in where clause.
- Fixes a crash when list comprehension in the WHERE clause references a
  variable from the preceding MATCH clause.
- Fixed some operator signatures in .sql
- Added support for PG operators in cypher. Some
  hardcoded operators are removed, since they are
  now covered by the general operator handling.
- Added full typecast syntax that allows for type
  modifiers.
- These changes also improve interoperability with
  other extensions, as reflected in the regression
  tests.
- Added a new function to check if graph_oid exists.
…che#2161)

Currently we cannot install Age to shared_preload_libraries if
pg_cron is installed.

To prevent following error we must bail out early.
postgres=# set backtrace_functions to 'get_namespace_oid';
SET
postgres=# create extension pg_cron ;
2025-04-15 16:59:49.867 +05 [30402] ERROR:  schema "ag_catalog" does not exist
2025-04-15 16:59:49.867 +05 [30402] BACKTRACE:
	2   postgres                            0x0000000102401ab0 get_namespace_oid + 204
	3   age.so                              0x0000000103285cd0 ag_catalog_namespace_id + 28
	4   age.so                              0x00000001032846fc ag_relation_id + 32
	5   age.so                              0x00000001032efe9c search_label_relation_cache_miss + 84
	6   age.so                              0x00000001032efe30 search_label_relation_cache + 100
	7   age.so                              0x00000001032842f4 object_access + 384
	8   postgres                            0x000000010240a7a0 RunObjectDropHook + 136
	9   postgres                            0x00000001023ee85c deleteOneObject + 108
	10  postgres                            0x00000001023eb860 deleteObjectsInList + 476
	11  postgres                            0x00000001023eba14 performMultipleDeletions + 316
	12  postgres                            0x0000000102560244 ATPostAlterTypeCleanup + 2144
	13  postgres                            0x0000000102559fb4 ATRewriteCatalogs + 516
	14  postgres                            0x00000001025543a8 ATController + 284
	15  postgres                            0x00000001025541bc AlterTable + 96
	16  postgres                            0x00000001028b8240 ProcessUtilitySlow + 1812
	17  postgres                            0x00000001028b600c standard_ProcessUtility + 3684
	18  age.so                              0x00000001032844f8 ag_ProcessUtility_hook + 200
	19  postgres                            0x00000001028b516c ProcessUtility + 392
	20  postgres                            0x000000010250e5b4 execute_sql_string + 812
	21  postgres                            0x000000010250d438 execute_extension_script + 2264
	22  postgres                            0x000000010250b330 ApplyExtensionUpdates + 1320
	23  postgres                            0x0000000102507954 CreateExtensionInternal + 1896
	24  postgres                            0x0000000102506ea4 CreateExtension + 1152
	25  postgres                            0x00000001028b8ed4 ProcessUtilitySlow + 5032
	26  postgres                            0x00000001028b600c standard_ProcessUtility + 3684
	27  age.so                              0x00000001032844f8 ag_ProcessUtility_hook + 200
	28  postgres                            0x00000001028b516c ProcessUtility + 392
	29  postgres                            0x00000001028b4768 PortalRunUtility + 232
	30  postgres                            0x00000001028b3660 PortalRunMulti + 756
	31  postgres                            0x00000001028b2abc PortalRun + 1008
	32  postgres                            0x00000001028ad870 exec_simple_query + 1436
	33  postgres                            0x00000001028ac990 PostgresMain + 2472
	34  postgres                            0x00000001027a49ac report_fork_failure_to_client + 0
	35  postgres                            0x00000001027a3e54 BackendStartup + 520
	36  postgres                            0x00000001027a29f0 ServerLoop + 812
	37  postgres                            0x000000010279fe0c PostmasterMain + 6484
	38  postgres                            0x000000010266acd0 startup_hacks + 0
	39  dyld                                0x000000018a3ab154 start + 2476
- start_index marks where property fields begin. For edges, it's 4.
  If start_index >= total_fields, create empty properties; otherwise,
  parse the properties.
@github-actions github-actions bot added master override-stale To keep issues/PRs untouched from stale action labels Jul 31, 2025
Conflicts:
	.asf.yaml
	.github/workflows/installcheck.yaml

Changes to be committed:

	modified:   .asf.yaml
	modified:   .github/labeler.yml
	modified:   .github/workflows/installcheck.yaml
	modified:   README.md
	modified:   docker/Dockerfile
	modified:   docker/Dockerfile.dev
	modified:   drivers/docker-compose.yml
	modified:   src/backend/nodes/ag_nodes.c
	modified:   src/backend/parser/cypher_analyze.c
@MuhammadTahaNaveed MuhammadTahaNaveed merged commit d336d6d into apache:master Aug 1, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
master override-stale To keep issues/PRs untouched from stale action
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants