Repository navigation
Read the fields of a returned struct a row names, and no other - #195
Merged
estebanzimanyi merged 1 commit intoOct 15, 2026
Merged
estebanzimanyi merged 1 commit into
estebanzimanyi merged 1 commit into
Conversation
A column statement of meta/sql-columns.json may name the field of the returned struct feeding
its column, and a row naming fields reads those only. valueCount and valuePercent, which
MobilityDB declares over raster_value_count, read one ValueCount per row: valueCount its value
and its count, valuePercent its value and its percent. Both state their two fields.
Witness: tests/test_sqlfn_rows.py builds the rows of both functions over a ValueCount; without
the statement the field no column reads stops the catalog, with it each column reads its field,
and a statement naming a field the struct lacks stops the catalog.
Measured: over MobilityDB 25fe9147ab the catalog run fails on master ("SQL rows with a column
MEOS states no source for", the six record forms of the two functions) and completes here, the
six forms reading value and count or value and percent. Over MobilityDB f935759e00 the catalog
is byte-identical to master's. The suite fails three tests it also fails on master at the same
commit (test_representative_symbols_land_in_their_family and two struct layout tests), and no
other.
Why: a ValueCount holds three fields and each row reads two, so the field a row leaves unread
fed no column and stopped every catalog derived from MobilityDB master.
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.
A column statement of meta/sql-columns.json may name the field of the returned struct feeding
its column, and a row naming fields reads those only. valueCount and valuePercent, which
MobilityDB declares over raster_value_count, read one ValueCount per row: valueCount its value
and its count, valuePercent its value and its percent. Both state their two fields.
Witness: tests/test_sqlfn_rows.py builds the rows of both functions over a ValueCount; without
the statement the field no column reads stops the catalog, with it each column reads its field,
and a statement naming a field the struct lacks stops the catalog.
Measured: over MobilityDB 25fe9147ab the catalog run fails on master ("SQL rows with a column
MEOS states no source for", the six record forms of the two functions) and completes here, the
six forms reading value and count or value and percent. Over MobilityDB f935759e00 the catalog
is byte-identical to master's. The suite fails three tests it also fails on master at the same
commit (test_representative_symbols_land_in_their_family and two struct layout tests), and no
other.
Why: a ValueCount holds three fields and each row reads two, so the field a row leaves unread
fed no column and stopped every catalog derived from MobilityDB master.