tada / pljava

PL/Java is a free add-on module that brings Java™ Stored Procedures, Triggers, Functions, Aggregates, Operators, Types, etc., to the PostgreSQL™ backend.
http://tada.github.io/pljava/
Other
242 stars 77 forks source link

Fix struct name collision caused by upstream PostgreSQL change #437

Closed jcflack closed 1 year ago

jcflack commented 1 year ago

Addresses #410. In postgres/postgres@639a86e, the Value flavor of Node struct was retired, and Integer, Float, String, and BitString became Node structs in their own right; the name String collides with the one in PL/Java's String.c. An easy solution is to change the name of the latter.

Thanks to Francisco Miguel Biete Banon; tested by Christoph Berg, tayalrun1, Frank Blanning, aadrian, Yuril Rashkovskii.

The upstream change made changes in nodeToString in outfuncs.c, but only as needed to preserve the original pg_node_tree syntax, so no attention to PgNodeTreeAsXML is needed. (It would be good for that to have a regression test, on general principles.)