From f2e71199c7d9b21b589ec44593741fb3dc9cac14 Mon Sep 17 00:00:00 2001 From: Konrad Feldmeier Date: Mon, 30 Mar 2026 13:55:32 +0200 Subject: [PATCH] Add explicit skip messages on version mismatch --- .../shutterservice/eventtriggerregisteredprocessor.go | 7 +++++++ .../keyperimpl/shutterservice/triggerprocessor.go | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/rolling-shutter/keyperimpl/shutterservice/eventtriggerregisteredprocessor.go b/rolling-shutter/keyperimpl/shutterservice/eventtriggerregisteredprocessor.go index 0f1b42d71..be387c8f3 100644 --- a/rolling-shutter/keyperimpl/shutterservice/eventtriggerregisteredprocessor.go +++ b/rolling-shutter/keyperimpl/shutterservice/eventtriggerregisteredprocessor.go @@ -85,6 +85,13 @@ func (p *EventTriggerRegisteredEventProcessor) ProcessEvents(ctx context.Context } triggerDefinition := EventTriggerDefinition{} + if len(registryEvent.TriggerDefinition) > 0 && + registryEvent.TriggerDefinition[0] != Version { + evLog.Log().Int64("version", int64( + registryEvent.TriggerDefinition[0])).Msg( + "skipping trigger definition with outdated version") + continue + } err := triggerDefinition.UnmarshalBytes(registryEvent.TriggerDefinition) if err != nil { evLog.Info().Err(err).Msg("skipping invalid trigger definition") diff --git a/rolling-shutter/keyperimpl/shutterservice/triggerprocessor.go b/rolling-shutter/keyperimpl/shutterservice/triggerprocessor.go index bc0d17822..c334578e9 100644 --- a/rolling-shutter/keyperimpl/shutterservice/triggerprocessor.go +++ b/rolling-shutter/keyperimpl/shutterservice/triggerprocessor.go @@ -63,6 +63,13 @@ func (tp *TriggerProcessor) FetchEvents(ctx context.Context, start, end uint64) Logger() trigger := EventTriggerDefinition{} + if len(triggerRegisteredEvent.Definition) > 0 && + triggerRegisteredEvent.Definition[0] != Version { + triggerLog.Log().Int64("version", int64( + triggerRegisteredEvent.Definition[0])).Msg( + "ignoring trigger definition with outdated version in database") + continue + } err := trigger.UnmarshalBytes(triggerRegisteredEvent.Definition) if err != nil { // This is not supposed to happen as only valid triggers are inserted into the database.