Skip to content

Process Avro arrays sequentially to avoid race conditions#445

Merged
Robert Yokota (rayokota) merged 1 commit intomasterfrom
fix-array-processing
Feb 17, 2026
Merged

Process Avro arrays sequentially to avoid race conditions#445
Robert Yokota (rayokota) merged 1 commit intomasterfrom
fix-array-processing

Conversation

@rayokota
Copy link
Member

@rayokota Robert Yokota (rayokota) commented Feb 17, 2026

Process Avro arrays sequentially to avoid race conditions

What

Checklist

  • Contains customer facing changes? Including API/behavior changes
  • Did you add sufficient unit test and/or integration test coverage for this PR?
    • If not, please explain why it is not required

References

JIRA:

Test & Review

Open questions / Follow-ups

@rayokota Robert Yokota (rayokota) requested a review from a team as a code owner February 17, 2026 07:33
Copilot AI review requested due to automatic review settings February 17, 2026 07:33
@rayokota Robert Yokota (rayokota) requested a review from a team as a code owner February 17, 2026 07:33
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Avro rule-field transformation logic to process array elements sequentially rather than in parallel, aiming to prevent race conditions caused by concurrent mutation of shared rule context during traversal.

Changes:

  • Replace parallel Promise.all(array.map(...)) processing for Avro arrays with a sequential for loop.
  • Transform Avro array items in-order with await to avoid concurrent RuleContext/FieldContext interactions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@rayokota Robert Yokota (rayokota) merged commit ad2b759 into master Feb 17, 2026
7 of 8 checks passed
@rayokota Robert Yokota (rayokota) deleted the fix-array-processing branch February 17, 2026 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants