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]

Reply via email to