jiayuasu opened a new pull request, #3130: URL: https://github.com/apache/sedona/pull/3130
## Did you read the Contributor Guide? - Yes, I have read the [Contributor Rules](https://sedona.apache.org/latest/community/rule/) and [Contributor Development Guide](https://sedona.apache.org/latest/community/develop/). ## Is this PR related to a ticket? - Yes, and the PR name follows the `[GH-XXX]` format. Closes #3126. ## What changes were proposed in this PR? - Compute conservative temporal envelopes by intersecting `AND` predicates and taking the convex hull of `OR` predicates, while preserving unbounded endpoints and omitting unsafe or empty remote intervals. - Prune collection extents by interval overlap at nanosecond precision and only translate the STAC `datetime` column to the remote temporal parameter. - Restrict SQL limit pushdown to a limit directly above the target scan and combine it safely with the configured item cap. - Make STAC pagination use the same filtered first-page URL for planning and reading, resolve relative links against the document that contains them, count actual returned features, and preserve server-provided `next` links unchanged. The temporal false negatives came from using the same widening logic for `AND` and `OR`, which could erase an unbounded side of an `OR` predicate. The pagination path also scheduled a different first URL than it inspected and treated relative pagination links as catalog-root paths. Together, those behaviors could omit matching items or read the wrong pages before Spark applied its residual operators. ## How was this patch tested? - `mvn -pl spark/common -Dspark=3.4 -Dscala=2.12 -Dgeotools -DwildcardSuites=org.apache.spark.sql.sedona_sql.io.stac.StacBatchTest,org.apache.spark.sql.sedona_sql.io.stac.StacUtilsTest,org.apache.spark.sql.sedona_sql.optimization.SpatialTemporalFilterPushDownForStacScanTest clean test` - `mvn -pl spark/common -Dspark=3.4 -Dscala=2.13 -Dgeotools -DwildcardSuites=org.apache.spark.sql.sedona_sql.io.stac.StacBatchTest,org.apache.spark.sql.sedona_sql.io.stac.StacUtilsTest,org.apache.spark.sql.sedona_sql.optimization.SpatialTemporalFilterPushDownForStacScanTest clean test` Both variants passed 240 Java tests and 59 targeted Scala tests. ## Did this PR include necessary documentation updates? - No, this PR does not affect any public API, so no documentation update is needed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
