mirror of
https://github.com/apache/impala.git
synced 2026-02-03 09:00:39 -05:00
The end time in DML profiles is incorrect that it's actually the time when admission control resources are released. This is correct for normal queries. But for DMLs, coordinator still needs to invoke the updateCatalog RPC of catalogd to finalize the HMS update. The end time should be set after the request finished. This patch fixes the DML end time by not setting it after the admission control resources are released. Instead, it's set after ClientRequestState::WaitInternal() finishes, which makes sure the updateCatalog RPC has finished. Also adds a duration field in profile by the way. For testing, this patch also adds a new debug action in catalogd (catalogd_insert_finish_delay) to inject delays in updateCatalog. Tests - Added e2e test to verify the end time of a DML profile Change-Id: I9c5dc92c2f8576ceed374d447c0ac05022a2dee6 Reviewed-on: http://gerrit.cloudera.org:8080/19644 Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>