phoenix icon indicating copy to clipboard operation
phoenix copied to clipboard

PHOENIX-7485: Add metrics for time taken during mutation plan creation and execution

Open sanjeet006py opened this issue 9 months ago • 14 comments

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 EnvironmentEdgeManager and EnvironmentEdge.
  • Added metrics to track time taken by executeMutation call in nano seconds. There are already metrics available to track time taken by upserts and deletes in executeMutation call 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.

sanjeet006py avatar Jan 23 '25 09:01 sanjeet006py