You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Stamatis Zampetakis (Jira)" <ji...@apache.org> on 2021/10/27 14:07:00 UTC
[jira] [Assigned] (HIVE-25655) Remove ElapsedTimeLoggingWrapper
from tests
[ https://issues.apache.org/jira/browse/HIVE-25655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stamatis Zampetakis reassigned HIVE-25655:
------------------------------------------
> Remove ElapsedTimeLoggingWrapper from tests
> -------------------------------------------
>
> Key: HIVE-25655
> URL: https://issues.apache.org/jira/browse/HIVE-25655
> Project: Hive
> Issue Type: Task
> Components: Testing Infrastructure
> Affects Versions: 4.0.0
> Reporter: Stamatis Zampetakis
> Assignee: Stamatis Zampetakis
> Priority: Major
>
> The [ElapsedTimeLoggingWrapper|https://github.com/apache/hive/blob/f749ef2af27638914984c183bcfa213920f5cdd9/itests/util/src/main/java/org/apache/hadoop/hive/util/ElapsedTimeLoggingWrapper.java] introduced in HIVE-14625 is used by the [CoreCliDriver|#L68] to execute, measure, and display the time spend on some operations during the execution of {{@Before/@After}} methods.
> The benefit of logging the elapsed time for these methods is unclear. The time is usually rather short, especially compared to the actual time a query takes to run, so it is not an information which can be of much use.
> The enforced coding pattern for measuring and logging the time leads to boilerplate and makes the code harder to read and understand.
> {code:java}
> qt = new ElapsedTimeLoggingWrapper<QTestUtil>() {
> @Override
> public QTestUtil invokeInternal() throws Exception {
> return new QTestUtil(
> QTestArguments.QTestArgumentsBuilder.instance()
> .withOutDir(cliConfig.getResultsDir())
> .withLogDir(cliConfig.getLogDir())
> .withClusterType(miniMR)
> .withConfDir(hiveConfDir)
> .withInitScript(initScript)
> .withCleanupScript(cleanupScript)
> .withLlapIo(true)
> .withFsType(cliConfig.getFsType())
> .build());
> }
> }.invoke("QtestUtil instance created", LOG, true);
> {code}
> Moreover, the wrapper is not used consistently across drivers making results less uniform.
> The goal of this issue is to remove {{ElapsedTimeLoggingWrapper}} and its usages to improve code readability and maintenance.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)