AbCip native: make lease release non-blocking (async teardown) and align with AbLegacy #579

Closed
opened 2026-10-07 21:46:58 -04:00 by dohertj2 · 1 comment
Owner

Found by the final whole-branch review of the native AB transport work (branch feat/native-ab-transport, plan docs/plans/2026-10-07-native-ab-transport.md). Minor; not merge-blocking.

Lease release on the native AbCip path blocks up to 2 s under the per-tag lock (a deliberate earlier decision). Move to async/non-blocking teardown and align the AbCip and AbLegacy release paths; needs its own design + a soak run.

Found by the final whole-branch review of the native AB transport work (branch `feat/native-ab-transport`, plan `docs/plans/2026-10-07-native-ab-transport.md`). Minor; not merge-blocking. Lease release on the native AbCip path blocks up to 2 s under the per-tag lock (a deliberate earlier decision). Move to async/non-blocking teardown and align the AbCip and AbLegacy release paths; needs its own design + a soak run.
dohertj2 added the driver/abcip label 2026-10-07 21:46:58 -04:00
Author
Owner

Fixed: ConnectionLease.ReleaseInBackground — native AbCip release no longer blocks under the per-tag lock; AbLegacy uses the same helper; pool records the close before returning so a re-create can't double-open; repeated create/release cycle tests show no leaked connections. Residual: no soak against ab_server (offline cycle tests stand in); ab_server read/write suites pass on the merged code. (merge 501f6ea4 on master, pushed 2026-10-08)

Fixed: ConnectionLease.ReleaseInBackground — native AbCip release no longer blocks under the per-tag lock; AbLegacy uses the same helper; pool records the close before returning so a re-create can't double-open; repeated create/release cycle tests show no leaked connections. Residual: no soak against ab_server (offline cycle tests stand in); ab_server read/write suites pass on the merged code. (merge `501f6ea4` on master, pushed 2026-10-08)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dohertj2/lmxopcua#579