zxs1633079383 commented on issue #841: URL: https://github.com/apache/flink-agents/issues/841#issuecomment-4902334354
Thanks @rosemarYuan, good catch. I agree that `runId = inputEvent.id` is not the right stable identity. I also checked the current Java/Python event identity behavior: - Java input events can get a fresh random UUID when wrapped, so replay/failover can change the id for the same logical input. - Python event ids are content-derived, so identical payloads can collide across distinct logical inputs. A cleaner split may be: - `eventId`: the concrete event id, preserving current event identity semantics. - `runId` / `traceId`: a replay-stable run identity derived from stable runtime coordinates, e.g. job identifier + key + per-key sequence number, with a defined key encoding. - `sourceEventId` / `parentEventId`: causal edge from the event being processed to the event emitted by an action. - `emittingAction`: the action that emitted the event. For the first PR, I think the important regression tests are: 1. Java replay/wrapping should not produce a different run id for the same logical input position. 2. Python identical payloads under different key/sequence positions should not collapse into one run. 3. The lineage fields should stay outside user event attributes. Since @addu390 opened the issue and offered to submit a PR, it would be good to confirm whether they still plan to take it. I am happy to help review the design/tests or contribute a focused follow-up if useful. -- 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]
