Skip to content

Commit efdcc7e

Browse files
committed
[analytics-engine] Exclude PPL ITs doomed by the unsupported-field strip
The unsupported-field strip removes nested/geo_point/geo_shape/alias columns from test data+mappings on the AE route, so PPL tests whose queries reference such a column can never pass - the data is gone. Physically exclude them in integ-test/build.gradle (gated on tests.analytics.parquet_indices), centralized with the existing AE excludes and grouped comments, rather than letting them fail. Verified field-by-field against the index mappings; only doomed work is removed: - GeoPointFormatsIT (whole class - every test reads a geo_point field). - DataTypeIT.test_nonnumeric_data_types (nested_value + geo_point_value). - DataTypeIT.test_alias_data_type (where alias_col, type=alias). - SystemFunctionIT.typeof_opensearch_types (typeof(geo_point_value)). Cleared as NOT doomed (kept running): GeoIpFunctionsIT (geoip() over text ip/name), StatsCommandIT.testStatsNested* (nested function calls, not a nested field), ConvertCommandIT/TrendlineCommandIT/ExplainIT alias usages (result aliases, not alias-typed fields). Signed-off-by: Eric Wei <mengwei.eric@gmail.com>
1 parent d076417 commit efdcc7e

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

integ-test/build.gradle

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1033,6 +1033,16 @@ task integTestRemote(type: RestIntegTestTask) {
10331033
// to the analytics-engine planner via index settings.
10341034
if (System.getProperty("tests.analytics.parquet_indices") != null) {
10351035
systemProperty 'tests.analytics.parquet_indices', System.getProperty("tests.analytics.parquet_indices")
1036+
1037+
// === Class-level excludes: PPL ITs doomed by the unsupported-field strip ===
1038+
// On the analytics-engine route, TestUtils.AnalyticsIndexConfig strips
1039+
// nested/geo_point/geo_shape/alias fields from every test mapping AND its bulk data, because
1040+
// the parquet/composite store can't scan them. Tests whose queries reference such a field
1041+
// therefore can't pass — the data no longer exists. Exclude them here rather than asserting.
1042+
//
1043+
// GeoPointFormatsIT: EVERY test reads a geo_point field (point / location.point / nested geo
1044+
// in geopoint_index_mapping + complex_geo_index_mapping) — whole class is doomed.
1045+
exclude 'org/opensearch/sql/ppl/GeoPointFormatsIT.class'
10361046
}
10371047

10381048
// Primary-shard count for analytics-backed test indices (default 1). Set to e.g. 3 to
@@ -1064,6 +1074,18 @@ task integTestRemote(type: RestIntegTestTask) {
10641074
excludeTestsMatching '*OperatorIT.testGreaterOperator'
10651075
excludeTestsMatching '*OperatorIT.testGteOperator'
10661076
excludeTestsMatching '*OperatorIT.testNotOperator'
1077+
1078+
// === Method-level excludes: PPL tests querying a stripped field ===
1079+
// These reference a nested/geo_point/alias-typed field that the unsupported-field strip
1080+
// removes from the test data+mapping on the AE route, so they can't pass. (Verified
1081+
// field-by-field against the index mappings; only the doomed methods are excluded — the
1082+
// rest of each class still runs.)
1083+
//
1084+
// datatypes_index_mapping: nested_value=nested, geo_point_value=geo_point.
1085+
excludeTestsMatching 'org.opensearch.sql.ppl.DataTypeIT.test_nonnumeric_data_types'
1086+
excludeTestsMatching 'org.opensearch.sql.ppl.SystemFunctionIT.typeof_opensearch_types'
1087+
// alias_index_mapping: alias_col is type=alias; query is `where alias_col > 1`.
1088+
excludeTestsMatching 'org.opensearch.sql.ppl.DataTypeIT.test_alias_data_type'
10671089
}
10681090
}
10691091

0 commit comments

Comments
 (0)