SEZ9 commented on issue #12704: URL: https://github.com/apache/seatunnel/issues/12704#issuecomment-6097831851
Thanks for the clear reproduction and root-cause analysis. As reported, `KeyExtractor` joins composite key values with `key_delimiter` without escaping, so two distinct rows can map to the same `_id` and the second write silently overwrites the first. A PR is welcome. One important constraint: the length-prefix encoding must not replace the existing default. `_id` is the persisted upsert identity, so changing it for an existing index would cause a restarted job to create a second set of documents instead of updating the old ones. Please keep the legacy encoding as the default and add the collision-safe encoding as an explicit opt-in option. Please keep it to one focused PR and include tests for the reported collision, the exact legacy IDs, a single-key control, and both Elasticsearch and OpenSearch paths if they share the serializer, plus EN/ZH connector doc updates describing the option and compatibility behavior. <!-- streview-comment:1656 --> -- 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]
