Réécriture du package bus pour éviter les deadlocks #21

Merged
wpetit merged 1 commits from bus-rewrite into master 2023-11-30 15:10:54 +01:00
Owner

Cette PR introduit une réécriture en profondeur du package bus qui est au coeur des échanges entre les applications et leurs backends.

L'ancienne implémentation souffrait de problèmes de "deadlock" dans certains cas spécifiques (lorsque le context.Context passé à la méthode bus.Request() avait "expiré" 1). Cette implémentation en est exempt, comme le prouve les tests intégrés.

Plusieurs améliorations annexes liées à la réécriture sont également intégrées dans les changements.

Lié à #20
Corrige #10

Cette PR introduit une réécriture en profondeur du package `bus` qui est au coeur des échanges entre les applications et leurs backends. L'ancienne implémentation souffrait de problèmes de "deadlock" dans certains cas spécifiques (lorsque le `context.Context` passé à la méthode `bus.Request()` avait "expiré" [^1]). Cette implémentation en est exempt, comme le prouve les tests intégrés. Plusieurs améliorations annexes liées à la réécriture sont également intégrées dans les changements. [^1]: [How to use Contexts in Go](https://www.digitalocean.com/community/tutorials/how-to-use-contexts-in-go) Lié à https://forge.cadoles.com/arcad/edge/issues/20 Corrige https://forge.cadoles.com/arcad/edge/issues/10
wpetit added 1 commit 2023-11-30 15:08:33 +01:00
arcad/edge/pipeline/head This commit looks good Details
arcad/edge/pipeline/pr-master This commit looks good Details
ad49c1718c
feat: rewrite bus to prevent deadlocks
wpetit merged commit 870db072e0 into master 2023-11-30 15:10:53 +01:00
wpetit deleted branch bus-rewrite 2023-11-30 15:10:56 +01:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: arcad/edge#21
No description provided.