Repository navigation
Commit dabca6c
authored
fix(server): recover failed terminal enqueues and fix EventQueue close races
- Roll back terminalStateReached on enqueue failure so error fallbacks work
- Add timed enqueue with interrupt-preserving retry in DefaultRequestHandler
- Replace boolean awaitingFinalEvent with two-phase counters to prevent premature close
- Invoke onClose() inside synchronized block for atomic state transitions
- Skip closed child queues during event dispatch
This fixes #1183
Co-Authored-By: Emmanuel Hugonnet <ehugonne@redhat.com>
Signed-off-by: Kabir Khan <kkhan@redhat.com>1 parent 93e521a commit dabca6c
6 files changed
Lines changed: 552 additions & 81 deletions
File tree
- server-common/src
- main/java/org/a2aproject/sdk/server
- events
- requesthandlers
- tasks
- test/java/org/a2aproject/sdk/server
- requesthandlers
- tasks
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
186 | 190 | | |
187 | 191 | | |
188 | 192 | | |
| |||
0 commit comments