Hihi, I'm using the permission-service and encountered the read-after-write / consistency issue that I need to figure out a solution for.
My setup:
1. A service I created called "group-service" with gRPC API
2. The service communicates directly with the permission-service; updating & checking permissions
3. Clients from around the world then communicate with my "group-service" and subscribe to streams
4. When the "group-service" then updates a permission, it streams the event to affected parties(clients)
5. The client that gets the event then calls the "group-service" again, triggering a CheckPermission call to the permission-service
In the real world, this wouldn't be such a biggy. But I've been writing karate behavior tests, that are listening to the stream and receiving an event after the WritePermission succeeded - but failing.
Added a 2-3 sec delay before sending out the event confirmed it was consistency issue.
Now I'm a bit lost what would be the best solution here, sending the token to the clients to pass into the requests is not ideal here.