grpc-java/core/src
Eric Anderson c75d9bc19f core: Fix racy creation/set of the retry Future
This fixes two races: a data race where scheduledRetry is accessed
by cancel() and confusion where scheduledRetry could be set to null by
the schedule()d runnable before it is set by the schedule() return
value.

Although it seems these races can't actually cause problems due to other
conditions/constraints, it's hard to reason about. So let's plug these
preemptively, even if we can't add tests that trigger them.

ScheduledHedging was not specific to hedging, so can now be reused for
this retry case. It was renamed to avoid being misleading.
2019-01-31 16:24:34 -08:00
..
bazel-internal/resources/META-INF/services core: fix bazel NameResolverProvider not found 2018-12-05 09:45:41 -08:00
bazel-util/resources/META-INF/services core: fix bazel NameResolverProvider not found 2018-12-05 09:45:41 -08:00
jmh/java/io/grpc core: standardize logid format and add details for channelz 2018-12-17 17:22:11 -08:00
main core: Fix racy creation/set of the retry Future 2019-01-31 16:24:34 -08:00
test all: fix lint 2019-01-31 09:31:13 -08:00