phoenix
phoenix copied to clipboard
PHOENIX-7485: Add metrics for time taken during mutation plan creation and execution
Summary of changes:
- Added metrics to capture time taken in mutation plan creation and execution for upserts and deletes.
- As the mutation plan creation and execution for a single upsert/delete can complete in less than 1 milli-second so, capturing metrics in Nano seconds. With PHOENIX-7484, it was observed that even mutation plan creation and execution is taking less than a milli second per call. If a regression is introduced in mutation plan creation and execution such that they start taking 1 milli-second per call then regression per call is not much in milli-seconds but at a scale of 2M rows being upserted/deleted it's huge. So, better to track at finer granularity to identify sub milli-second regression which can manifest as huge regression for end users.
- Added support for computing elapsed time in nano seconds in
EnvironmentEdgeManagerandEnvironmentEdge. - Added metrics to track time taken by
executeMutationcall in nano seconds. There are already metrics available to track time taken by upserts and deletes inexecuteMutationcall but they track at milli seconds granularity. If we change those to track at nano seconds granularity then this will be a breaking non-backward compatible change.