Dan Hecht has submitted this change and it was merged. Change subject: IMPALA-4631: don't use floating point operations for time unit conversions ......................................................................
IMPALA-4631: don't use floating point operations for time unit conversions This was leading to the PlanFragmentExecutor::Close() DCHECK because with floating point we can have c * a + c * b > c * (a + b). Also note this is much more likely to happen when using the MONOTONIC_COARSE since that will result in the nested scoped timers ending up starting/stopping at exactly the same time. Additionally, the new code is faster. Change-Id: I7237f579b201f5bd3930f66e9c2c8d700c37ffeb Reviewed-on: http://gerrit.cloudera.org:8080/5434 Reviewed-by: Dan Hecht <[email protected]> Tested-by: Jim Apple <[email protected]> --- M be/src/gutil/walltime.cc M be/src/gutil/walltime.h M be/src/util/stopwatch.h M be/src/util/time.h 4 files changed, 16 insertions(+), 24 deletions(-) Approvals: Jim Apple: Verified Dan Hecht: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/5434 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I7237f579b201f5bd3930f66e9c2c8d700c37ffeb Gerrit-PatchSet: 7 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Dan Hecht <[email protected]> Gerrit-Reviewer: Dan Hecht <[email protected]> Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Internal Jenkins Gerrit-Reviewer: Jim Apple <[email protected]> Gerrit-Reviewer: Michael Ho <[email protected]>
