You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sqoop.apache.org by "Jarek Jarcec Cecho (JIRA)" <ji...@apache.org> on 2015/03/01 05:45:04 UTC

[jira] [Updated] (SQOOP-2159) Sqoop2: Use BeforeSuite/AfterSuite for startHadoop/stopHadoop in integration tests

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

Jarek Jarcec Cecho updated SQOOP-2159:
--------------------------------------
    Attachment: SQOOP-2159.patch

> Sqoop2: Use BeforeSuite/AfterSuite for startHadoop/stopHadoop in integration tests
> ----------------------------------------------------------------------------------
>
>                 Key: SQOOP-2159
>                 URL: https://issues.apache.org/jira/browse/SQOOP-2159
>             Project: Sqoop
>          Issue Type: Bug
>    Affects Versions: 1.99.5
>            Reporter: Jarek Jarcec Cecho
>            Assignee: Jarek Jarcec Cecho
>             Fix For: 1.99.6
>
>         Attachments: SQOOP-2159.patch
>
>
> I've noticed that {{BeforeClass}} annotation in test-ng is behaving slightly differently than I was expecting. For most integration tests it behaves as anticipated - it will run before any test methods inside any test class. However when it's used with {{@DataProvider}} it will be run for every parametrized call. This means that for example {{PartitionerTest}} will initialize the {{HadoopMiniCluster}} on all 20 executions, which is adding to the slowness of this test.
> Test-ng have additional annotation called {{@BeforeSuite}} that will run only once even if given test class is using {{@DataProvider}} and hence I would suggest to use it for {{startHadoop()}} method. And similarly {{@AfterSuite}} for {{stopHadoop()}}.
> I did not measure impact on {{PartitionerTest}}, but making this change for other integration test that I'm writing got the execution from 10 down to 3 minutes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)