Skip to content

Pass the MF-JSON option MEOS takes for the bounding box - #163

Merged
estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:codegen/mfjson-option
Oct 9, 2026
Merged

estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:codegen/mfjson-option

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

temporal_as_mfjson takes the option of the SQL function asMFJSON in place of a flag for the
bounding box: the sum of 1 for the bounding box, 2 for the short name of the coordinate
reference system and 4 for its long name. Temporal.as_mfjson keeps its arguments and passes 1
when with_bbox is true and 0 otherwise, the options 0 and 1 asMFJSON states, so the system is
named as MEOS names it by default; the parity test of the generated asMFJSON gives it the option 1
on both sides.

Witness: over MobilityDB 2a1d52a7ee, where e63fc3f7d8 changes the parameter, and MEOS-API
e84319b325, main fails to compile: "Temporal.java:[163,65] incompatible types: boolean cannot
be converted to int", which fails the JMEOS jar step of MobilityFlink #72.

Measured over the same pair: mvn clean install passes 106 codegen and 1800 core tests, none
skipped, with no warning; the Spark gaps step reports none new; the typed flink-sql and
spark-sql surfaces each register 1154 SQL functions and 8747 overloads.

Why: a binding passes every argument of the MEOS function it calls in the type MEOS states, and
a method of the class keeps the answer its callers had.

temporal_as_mfjson takes the option of the SQL function asMFJSON in place of a flag for the
bounding box: the sum of 1 for the bounding box, 2 for the short name of the coordinate
reference system and 4 for its long name. Temporal.as_mfjson keeps its arguments and passes 1
when with_bbox is true and 0 otherwise, the options 0 and 1 asMFJSON states, so the system is
named as MEOS names it by default; the parity test of the generated asMFJSON gives it the option 1
on both sides.

Witness: over MobilityDB 2a1d52a7ee, where e63fc3f7d8 changes the parameter, and MEOS-API
e84319b325, main fails to compile: "Temporal.java:[163,65] incompatible types: boolean cannot
be converted to int", which fails the JMEOS jar step of MobilityFlink MobilityDB#72.

Measured over the same pair: mvn clean install passes 106 codegen and 1800 core tests, none
skipped, with no warning; the Spark gaps step reports none new; the typed flink-sql and
spark-sql surfaces each register 1154 SQL functions and 8747 overloads.

Why: a binding passes every argument of the MEOS function it calls in the type MEOS states, and
a method of the class keeps the answer its callers had.
@estebanzimanyi
estebanzimanyi merged commit 2010ca7 into MobilityDB:main Oct 9, 2026
2 checks passed
@estebanzimanyi
estebanzimanyi deleted the codegen/mfjson-option branch October 9, 2026 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant