-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Go Drivers
-
Not Needed
-
Context
Currently the Go driver calls RTTMonitor.Stats for every operation on both v1 and master. That call acquires a read lock and performs a series of calculations to get an RTT statistics summary to add to error messages. Ideally we shouldn't call that method on every operation.
Definition of done
- Change the Operation.Execute code to only call RTTMonitor.Stats when generating an error value, not on every request.
- (Optional) Consider replacing the RTT values read on every request (e.g. EWMA, Min, P90, etc) with atomic.Value to avoid using an RWMutex (see GODRIVER-3094).
Pitfalls
- is related to
-
GODRIVER-3094 Use atomic.Value instead of sync.RWMutex to provide atomic read/writes to values
- Backlog