pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Johnny Zhang (Created) (JIRA)" <j...@apache.org>
Subject [jira] [Created] (PIG-2569) Fix org.apache.pig.test.TestInvoker.testSpeed
Date Sat, 03 Mar 2012 00:37:59 GMT
Fix org.apache.pig.test.TestInvoker.testSpeed
---------------------------------------------

                 Key: PIG-2569
                 URL: https://issues.apache.org/jira/browse/PIG-2569
             Project: Pig
          Issue Type: Bug
            Reporter: Johnny Zhang


the Pig unit test org.apache.pig.test.TestInvoker.testSpeed pass sometimes and fail sometimes.
I think this test need further polish, look at the code:
{noformat}
@Test
    public void testSpeed() throws IOException, SecurityException, ClassNotFoundException,
NoSuchMethodException {
        EvalFunc<Double> log = new Log();
        Tuple tup = tf_.newTuple(1);
        long start = System.currentTimeMillis();
        for (int i=0; i < 1000000; i++) {
            tup.set(0, (double) i);
            log.exec(tup);
        }
        long staticSpeed = (System.currentTimeMillis()-start);
        start = System.currentTimeMillis();
        log = new InvokeForDouble("java.lang.Math.log", "Double", "static");
        for (int i=0; i < 1000000; i++) {
            tup.set(0, (double) i);
            log.exec(tup);
        }
        long dynamicSpeed = System.currentTimeMillis()-start;
        System.err.println("Dynamic to static ratio: "+((float) dynamicSpeed)/staticSpeed);
        assertTrue( ((float) dynamicSpeed)/staticSpeed < 5);
    }
{noformat}

I understand this test is trying to prevent the initicialization time of InvokeForDouble doesn't
take too long, but the ratio 5 is hardcoded, and there is no solid logic behind it why it
is 5. For my understand, when the server resouce is low, ratio could be larger than 5, but
it doesn't mean code has problem. For our case, the code never change, but it pass in the
first ru, but fail in the second run.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message