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]

Reply via email to