fix(e2e,store,delivery): fix E2E stability - lifecycle ordering, event ordering, callback_target NOT NULL, worker ticker loop
This commit is contained in:
@@ -64,27 +64,21 @@ func (w *Worker) Start(ctx context.Context) {
|
||||
if ctx == nil {
|
||||
return
|
||||
}
|
||||
if err := w.RunOnce(ctx); err != nil && w.Logger != nil {
|
||||
w.Logger.Error("platform callback delivery run failed", "platform", w.Platform, "error", err.Error())
|
||||
}
|
||||
ticker := time.NewTicker(w.pollInterval())
|
||||
defer ticker.Stop()
|
||||
claimTicker := time.NewTicker(30 * time.Second)
|
||||
defer claimTicker.Stop()
|
||||
for {
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return
|
||||
default:
|
||||
}
|
||||
if err := w.RunOnce(ctx); err != nil && w.Logger != nil {
|
||||
w.Logger.Error("platform callback delivery run failed", "platform", w.Platform, "error", err.Error())
|
||||
}
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return
|
||||
case <-ticker.C:
|
||||
}
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return
|
||||
if err := w.RunOnce(ctx); err != nil && w.Logger != nil {
|
||||
w.Logger.Error("platform callback delivery run failed", "platform", w.Platform, "error", err.Error())
|
||||
}
|
||||
case <-claimTicker.C:
|
||||
if w.Store != nil {
|
||||
if _, err := w.Store.ReleaseStaleClaims(ctx, w.claimTimeout()); err != nil && w.Logger != nil {
|
||||
|
||||
Reference in New Issue
Block a user