Konnect entities: entities enqueued via EnqueueRequestsFromMapFunc
from changes on other entities are missing event predicates
#939
Labels
bug
Something isn't working
Milestone
Current Behavior
When an entity that can enqueue other entities undergoes an observed event (e.g. a change in
KongConsumerGroup
) then the dependent objects are enqueued (e.g.KongConsumer
s belonging to that group.This is done via
EnqueueRequestsFromMapFunc
e.g. in here:gateway-operator/controller/konnect/watch_kongconsumer.go
Lines 63 to 70 in 8961e81
KongConsumerGroup
.This behavior is missing the predicates that are in place for enqueuing objects of the type in question itself: so in here
KongConsumerGroup
s are enqueued for their own changes and filtered withobjRefersToKonnectGatewayControlPlane
ingateway-operator/controller/konnect/watch_kongconsumer.go
Lines 38 to 44 in 8961e81
These predicates should also be added when using
EnqueueRequestsFromMapFunc
. Otherwise objects not referring to e.g.KonnectGatewayControlPlane
and which should be reconciled by KIC, are going to be enqueued by KGO.Expected Behavior
When using
EnqueueRequestsFromMapFunc
to enqueue dependent objects, all relevant predicates are in place to filter the requests only to be reconciled by KGO.Proposed solution
Add predicates like so for all the types that enqueue objects of other type:
Operator Version
kubectl version
The text was updated successfully, but these errors were encountered: