Nick Allen created METRON-602:
---------------------------------

             Summary: MockHTable Scanner Not Returning Expected Results
                 Key: METRON-602
                 URL: https://issues.apache.org/jira/browse/METRON-602
             Project: Metron
          Issue Type: Sub-task
            Reporter: Nick Allen


In some cases, even when the MockHTable Put Log shows that the expected data 
has been submitted to the table, the scanner implementation does not return the 
expected results.

In this branch 
(https://github.com/nickwallen/incubator-metron/tree/METRON-597-FIX) I have 
added some additional debug statements that query the Put Log.  In validating 
the results the test uses a scanner to retrieve results.  The results retrieved 
do not match what was just extracted from the Put Log.

{code}
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.apache.metron.profiler.integration.ProfilerIntegrationTest
----read----
put: 
{"totalColumns":1,"row":"\\xFF\\xFF\\xFF\\xF7example310.0.0.2\\x00\\x00\\x00\\x00\\x11\\xA6E\\xE8","families":{"P":[{"qualifier":"value","vlen":9,"tag":[],"timestamp":1480547731528}]}}
 cell: 
\xFF\xFF\xFF\xF7example310.0.0.2\x00\x00\x00\x00\x11\xA6E\xE8/P:value/1480547731528/Put/vlen=9/seqid=0
  value: 20.0
Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 60.359 sec <<< 
FAILURE!
testExample3(org.apache.metron.profiler.integration.ProfilerIntegrationTest)  
Time elapsed: 16.272 sec  <<< FAILURE!
java.lang.AssertionError: expected:<20.0> but was:<NaN>
        at org.junit.Assert.fail(Assert.java:88)
        at org.junit.Assert.failNotEquals(Assert.java:834)
        at org.junit.Assert.assertEquals(Assert.java:553)
        at org.junit.Assert.assertEquals(Assert.java:683)
        at 
org.apache.metron.profiler.integration.ProfilerIntegrationTest.testExample3(ProfilerIntegrationTest.java:215)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at 
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at 
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at 
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)


Results :

Failed tests:   
testExample3(org.apache.metron.profiler.integration.ProfilerIntegrationTest): 
expected:<20.0> but was:<NaN>
{code}

This *could* be due to METRON-601, but this could also be a separate bug.  More 
investigation needed.



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

Reply via email to