Repository navigation
Read the alternative names of a wrapper declared inline - #198
Merged
estebanzimanyi merged 1 commit intoOct 18, 2026
Merged
estebanzimanyi merged 1 commit into
estebanzimanyi merged 1 commit into
Conversation
parser/altsqlfn.py reads the @altsqlfn of a PostgreSQL wrapper from the doxygen block right before its `Datum Name(PG_FUNCTION_ARGS)`, and takes the wrapper declared `inline` or `static` as well, as the #_DATUM pattern of parser/sqlfn.py reads it. MobilityDB declares 753 of its wrappers `inline Datum`, among them Tnumber_wavg_transfn, the transition of wAvg. Witness: over MobilityDB branch sql/wavg-engine-name, which states `@altsqlfn wAvgAgg()` on Tnumber_wavg_transfn, the catalog gives the three wAvg entries altSqlName wAvgAgg, where the pattern that wants `Datum` right after the block gives them none. Measured: over that branch the catalog differs from the one master's parser derives in those three aggregate entries alone, 157 aggregate entries carrying an altSqlName against 154, no function differing; over MobilityDB fa02361fa6 it is byte for byte the catalog master's parser derives. tests/test_altsqlfn.py states an `inline` transition and a `static inline` scalar wrapper, a test that fails on master's parser. The suite runs 561 tests with the same three failures as master (test_family, test_struct_layout twice). Why: an engine reads the name it registers from altSqlName, so a tag the parser does not read leaves the engine on a name it cannot hold.
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.
parser/altsqlfn.py reads the @altsqlfn of a PostgreSQL wrapper from the doxygen block right
before its
Datum Name(PG_FUNCTION_ARGS), and takes the wrapper declaredinlineorstaticas well, as the #_DATUM pattern of parser/sqlfn.py reads it. MobilityDB declares 753 of its
wrappers
inline Datum, among them Tnumber_wavg_transfn, the transition of wAvg.Witness: over MobilityDB branch sql/wavg-engine-name, which states
@altsqlfn wAvgAgg()onTnumber_wavg_transfn, the catalog gives the three wAvg entries altSqlName wAvgAgg, where the
pattern that wants
Datumright after the block gives them none.Measured: over that branch the catalog differs from the one master's parser derives in those
three aggregate entries alone, 157 aggregate entries carrying an altSqlName against 154, no
function differing; over MobilityDB fa02361fa6 it is byte for byte the catalog master's parser
derives. tests/test_altsqlfn.py states an
inlinetransition and astatic inlinescalarwrapper, a test that fails on master's parser. The suite runs 561 tests with the same three
failures as master (test_family, test_struct_layout twice).
Why: an engine reads the name it registers from altSqlName, so a tag the parser does not read
leaves the engine on a name it cannot hold.