-
Notifications
You must be signed in to change notification settings - Fork 142
[Bug]: pushnotification is not support order-preserving of update event #775
Description
What happened?
when status update or artifact update is sent through push notification, the request agent may not receivee those event in the order it produce. here is the code:
at MainEventBusProcessor.java line 337-357,the notification is sent asynchronous, regardless of whether the sending succeeds or fails. it may cause the wrong order of the event queue.
private void sendPushNotification(String taskId, StreamingEventKind event) {
Runnable pushTask = () -> {
try {
if (event != null) {
LOGGER.debug("Sending push notification for task {}", taskId);
pushSender.sendNotification(event);
} else {
LOGGER.debug("Skipping push notification - event is null for task {}", taskId);
}
} catch (Exception e) {
LOGGER.error("Error sending push notification for task {}", taskId, e);
// Don't rethrow - push notifications are best-effort
}
};
// Use custom executor if set (for tests), otherwise use default ForkJoinPool (async)
if (pushNotificationExecutor != null) {
pushNotificationExecutor.execute(pushTask);
} else {
CompletableFuture.runAsync(pushTask);
}
}
Relevant log output
Code of Conduct
- I agree to follow this project's Code of Conduct