LuciferYang opened a new issue, #10273: URL: https://github.com/apache/paimon/issues/10273
### Search before asking - [X] I searched in the [issues](https://github.com/apache/paimon/issues) and found no similar issues. ### Paimon version master (1.5-SNAPSHOT) ### Compute Engine Flink and Spark (the `create_global_index` procedure). ### Minimal reproduce step 1. Build a global index over a primary-key column, e.g. a single-column index on `vec`, via `sys.create_global_index`. 2. Build a second global index over `vec` plus another column (`vec`, `txt`) — same primary column, different column set. 3. Run any index-backed read. ### What doesn't meet your expectations? The second create succeeds and commits index files, but any later index-backed read builds `DataEvolutionGlobalIndexScanner`, whose `groupIndexFiles` throws `Primary field %s owns multiple indexes with different columns ...`. So an accepted DDL leaves the table in a state where the index-backed queries the index exists to serve are broken until the extra index is dropped by hand. The conflicting create should be rejected at DDL time instead. ### Anything else? A second create with the same column set is the refresh flow and must stay allowed. The rejection has to be type-agnostic, matching the read-side grouping by `indexFieldId`, so a conflicting index of a different type over the same primary column is caught too. ### Are you willing to submit a PR? - [X] I'm willing to submit a PR! -- 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]
