fix scheduled pseudo event projection

This commit is contained in:
Elio Bischof
2023-06-28 17:43:19 +02:00
parent ec8b587ba6
commit 2b8dac40de
9 changed files with 42 additions and 29 deletions

View File

@@ -5,14 +5,13 @@ import (
"database/sql"
"fmt"
"github.com/zitadel/zitadel/internal/repository/pseudo"
"github.com/zitadel/logging"
"github.com/zitadel/zitadel/internal/database"
"github.com/zitadel/zitadel/internal/errors"
"github.com/zitadel/zitadel/internal/eventstore"
"github.com/zitadel/zitadel/internal/eventstore/handler"
"github.com/zitadel/zitadel/internal/repository/pseudo"
)
var (
@@ -102,7 +101,7 @@ func NewStatementHandler(
func (h *StatementHandler) Start() {
h.initialized <- true
close(h.initialized)
if h.reduceScheduledPseudoEvent {
if !h.reduceScheduledPseudoEvent {
h.Subscribe(h.aggregates...)
}
}

View File

@@ -102,7 +102,7 @@ func NewProjectionHandler(
go func() {
<-initialized
if h.reduceScheduledPseudoEvent {
if !h.reduceScheduledPseudoEvent {
go h.subscribe(ctx)
}
go h.schedule(ctx)
@@ -177,9 +177,9 @@ func (h *ProjectionHandler) FetchEvents(ctx context.Context, instances ...string
return nil, false, err
}
if h.reduceScheduledPseudoEvent {
events[0] = pseudo.NewScheduledEvent(ctx, time.Now(), instances...)
events = []eventstore.Event{pseudo.NewScheduledEvent(ctx, time.Now(), events[0], instances...)}
}
return events, int(eventsLimit) == len(events), err
return events, int(eventsLimit) == len(events) && !h.reduceScheduledPseudoEvent, err
}
func (h *ProjectionHandler) subscribe(ctx context.Context) {