[ 
https://issues.apache.org/jira/browse/HIVE-25655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stamatis Zampetakis resolved HIVE-25655.
----------------------------------------
    Fix Version/s: 4.0.0
       Resolution: Fixed

Fixed in 
[faf0a9ec1b505df225940e8c8c8ec868b689d310|https://github.com/apache/hive/commit/faf0a9ec1b505df225940e8c8c8ec868b689d310].
 Thanks [~kkasa] for the review!

> 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: Minor
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> 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)

Reply via email to