jiangxt2 opened a new pull request, #13432: URL: https://github.com/apache/gravitino/pull/13432
### What changes were proposed in this pull request? Preserve legacy ClickHouse Annoy and USearch index metadata when the catalog loads tables. Add distinct Gravitino index types, retain the reported type expression, fields, granularity, and recognized parameters, and expose them through the Java and Python clients. Treat both types as metadata-only. Reject CREATE TABLE, ALTER TABLE ADD INDEX, and table recreation requests that use them; do not translate them to `vector_similarity`. ### Why are the changes needed? The ClickHouse catalog currently skips unrecognized index types, losing metadata for legacy definitions. Keeping Annoy and USearch distinct from `vector_similarity` avoids misrepresenting the original index. This change does not add legacy DDL, insert, or vector-search support, and does not migrate indexes automatically. Fix: #13376 ### Does this PR introduce any user-facing change? Yes. It adds `DATA_SKIPPING_ANNOY` and `DATA_SKIPPING_USEARCH`, plus the read-only properties `annoy_trees`, `usearch_distance_function`, and `clickhouse_type_full`. Clients must understand the new enum values to expose these indexes. ### How was this patch tested? - `TestClickHouseTableOperationsUnit`: 67 tests passed. - `TestJsonUtils`: 13 tests passed. - Python `test_index_serdes`: 5 tests passed. - `CatalogClickHouseIT.testLoadLegacyUsearchIndexMetadata`: passed with ClickHouse 23.8.16.16. - `CatalogClickHouseClusterIT`: 20 tests passed. - RAT, OpenAPI docs build, ClickHouse module build, Spotless, Black, and `git diff --check` passed. The tested ClickHouse image does not register Annoy. Its parser unit fixture uses the native `annoy(100) GRANULARITY 1` metadata DDL reported in ClickHouse issue #41729; a live Annoy `system.data_skipping_indices` read path remains unverified. -- 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]
