open-policy-agent/frameworks

Make driver/handler cache operations atomic across Client

Closed this issue · 1 comments

Not part of the current performance optimization - we currently do not add/remove objects atomically across drivers/targets.

Right now it is possible for us to end up in inconsistent states - where some Drivers/Handlers in a Client are able to cache objects but others are not. We currently opt to leave things in an inconsistent state rather than try to get back to a baseline.

This work is fairly complex to do generally - possibly needing its own design as there's a lot of edge cases to making these operations atomic.

Resolved for now since Templates can't change targets any more if they have any existing Constraints.