grpc-java/rls
Eric Anderson 55ae1d0541 rls: Avoid missed config update from reentrancy
Since ChildPolicyWrapper() called into the child before
childPolicyMap.put(), it is possible for that child to call back into
RLS and further update state without that child being known. When CDS
is_dynamic=true (since ca99a8c47), it registers the cluster with
XdsDependencyManager, which adds a watch to XdsClient. If XdsClient
already has the results cached then the watch callback can be enqueued
immediately onto the syncContext and execute still within the
constructor.

Calling into the child with the lock held isn't great, as it allows for
this type of reentrancy bug. But that'll take larger changes to fix.

b/464116731
2025-12-04 07:25:51 -08:00
..
src rls: Avoid missed config update from reentrancy 2025-12-04 07:25:51 -08:00
BUILD.bazel bazel: Use java/proto rules from rules_java/rules_proto instead of native rules 2025-08-28 16:07:14 -07:00
build.gradle Remove org.apache.tomcat:annotations-api dep 2025-09-03 07:18:18 -07:00