hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HBASE-410) [testing] Speed up the test suite
Date Thu, 15 Oct 2009 23:57:31 GMT

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

stack updated HBASE-410:

    Attachment: 410-v4.patch

Here is v4.  In the client package, it adds TestClient, TestGet, TestPut, TestHTable, TestListTables,
all to TestFromClientSide test.  It also adds new TestAdmin to replace old TestHBaseAdmin
with new junit4 version.

We probably don't want to make a few big long-running tests, or at least, ones that run too
long.   Anything over a minute or two is going to be a bit of a pain methinks.

That said, TestFromClientSide, our new omnibus client-side junit4 test takes nearly 4 minutes
now on my local machine.  The whole client package took 13minutes up on hudson last time we
had a successful build.

I'm going to commit v4.  Lets see how it does up on hudson compared to the old timings.

> [testing] Speed up the test suite
> ---------------------------------
>                 Key: HBASE-410
>                 URL: https://issues.apache.org/jira/browse/HBASE-410
>             Project: Hadoop HBase
>          Issue Type: Test
>          Components: test
>    Affects Versions: 0.2.0
>            Reporter: Bryan Duxbury
>            Priority: Minor
>             Fix For: 0.21.0
>         Attachments: 410-v2.patch, 410-v3.patch, 410-v4.patch, 410.patch
> The test suite takes a long time to run, and a lot of the time spent running is really
wasted on repeated startup and shutdown, waiting for asynchronous events to occur, and production-tuned
timeouts to occur. Additionally, we use a MiniDFS instead of the local filesystem. 
> We should:
>  - Make whatever changes are needed to the local DFS so that it can run on Windows and
use that as the basis of all of our tests
>  - Minimize redoing expensive setup where possible by combining tests into groups or
suites that can share common setup
>  - Create a way of running all the parts (Master, Regionserver, Client) in a single thread
and explicitly advancing through necessary states so that we can reliably and quickly get
what we need tested accomplished
>  - Use smaller test datasets where it would make a difference (TestTableIndex and TestTableMapReduce,
I'm looking at you!)
> A faster test suite means faster turnaround on new patches, faster Hudson, and a shorter
patch queue. Not to mention less annoyance on the part of the developers.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message