[ 
https://issues.apache.org/jira/browse/ASTERIXDB-1706?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16345391#comment-16345391
 ] 

ASF subversion and git services commented on ASTERIXDB-1706:
------------------------------------------------------------

Commit 85d4627e3c89125c55756153560d093c346b4451 in asterixdb's branch 
refs/heads/master from [~mhubail]
[ https://git-wip-us.apache.org/repos/asf?p=asterixdb.git;h=85d4627 ]

[ASTERIXDB-1706][RT] Ensure All Result Frames Are Read

- user model changes: no
- storage format changes: no
- interface changes: yes
  - Removed IDatasetInputChannelMonitor

Details:
- Currently there is a possibility that the EOS
  comes in DatasetInputChannelMonitor right after
  the check for avaibale frames is performed which
  will result in missing some result frames from
  being read. When this happens, empty result will
  be returned if no frames were read before. This
  change ensures that the state between checking
  the avaiable frames and the EOS is consistent.
- Clean up HyracksDatasetReader.
- Use error code for result read failure.

Change-Id: I7d5a78fa20fe200cfffd21a215e052481c6d61ca
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2337
Sonar-Qube: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Reviewed-by: Till Westmann <ti...@apache.org>


> Sporadic integration test failure
> ---------------------------------
>
>                 Key: ASTERIXDB-1706
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1706
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: *DB - AsterixDB
>            Reporter: Till
>            Assignee: Murtadha Hubail
>            Priority: Major
>
> We do have some sporadic wrong results in the integration tests, e.g. 
> https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/org.apache.asterix$asterix-installer/1005/testReport/junit/org.apache.asterix.installer.test/ManagixExecutionIT/test_1223_/
> {noformat}
> Oct 23, 2016 5:07:42 PM org.apache.asterix.test.aql.TestExecutor executeTest
> INFO: Starting [TEST]: temporal/overlap_bins ... 
> Expected results file: 
> ../asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins/overlap_bins.1.adm
> Actual results file: 
> target/ittest/results/temporal/overlap_bins/overlap_bins.1.adm
> testFile 
> ../asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
>  raised an exception: org.apache.asterix.test.base.ComparisonException: 
> Result for 
> ../asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
>  changed at line 1:
> < { "timebins": [ interval(time("17:00:00.000Z"), time("17:30:00.000Z")), 
> interval(time("17:30:00.000Z"), time("18:00:00.000Z")), 
> interval(time("18:00:00.000Z"), time("18:30:00.000Z")), 
> interval(time("18:30:00.000Z"), time("19:00:00.000Z")) ], "datebins": [ 
> interval(date("1980-01-01"), date("1990-01-01")), 
> interval(date("1990-01-01"), date("2000-01-01")), 
> interval(date("2000-01-01"), date("2010-01-01")), 
> interval(date("2010-01-01"), date("2020-01-01")) ], "datetimebins": [ 
> interval(datetime("1800-01-01T00:00:00.000Z"), 
> datetime("1900-01-01T00:00:00.000Z")), 
> interval(datetime("1900-01-01T00:00:00.000Z"), 
> datetime("2000-01-01T00:00:00.000Z")), 
> interval(datetime("2000-01-01T00:00:00.000Z"), 
> datetime("2100-01-01T00:00:00.000Z")) ] }
> > <EOF>
> org.apache.asterix.test.base.ComparisonException: Result for 
> ../asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
>  changed at line 1:
> < { "timebins": [ interval(time("17:00:00.000Z"), time("17:30:00.000Z")), 
> interval(time("17:30:00.000Z"), time("18:00:00.000Z")), 
> interval(time("18:00:00.000Z"), time("18:30:00.000Z")), 
> interval(time("18:30:00.000Z"), time("19:00:00.000Z")) ], "datebins": [ 
> interval(date("1980-01-01"), date("1990-01-01")), 
> interval(date("1990-01-01"), date("2000-01-01")), 
> interval(date("2000-01-01"), date("2010-01-01")), 
> interval(date("2010-01-01"), date("2020-01-01")) ], "datetimebins": [ 
> interval(datetime("1800-01-01T00:00:00.000Z"), 
> datetime("1900-01-01T00:00:00.000Z")), 
> interval(datetime("1900-01-01T00:00:00.000Z"), 
> datetime("2000-01-01T00:00:00.000Z")), 
> interval(datetime("2000-01-01T00:00:00.000Z"), 
> datetime("2100-01-01T00:00:00.000Z")) ] }
> > <EOF>
>       at 
> org.apache.asterix.test.aql.TestExecutor.throwLineChanged(TestExecutor.java:203)
>       at 
> org.apache.asterix.test.aql.TestExecutor.runScriptAndCompareWithResult(TestExecutor.java:152)
>       at 
> org.apache.asterix.test.aql.TestExecutor.executeTest(TestExecutor.java:775)
>       at 
> org.apache.asterix.test.aql.TestExecutor.executeTest(TestExecutor.java:1003)
>       at 
> org.apache.asterix.test.aql.TestExecutor.executeTest(TestExecutor.java:666)
>       at 
> org.apache.asterix.installer.test.AbstractExecutionIT.test(AbstractExecutionIT.java:161)
>       at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       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.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
>       at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>       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.junit.runners.Suite.runChild(Suite.java:128)
>       at org.junit.runners.Suite.runChild(Suite.java:27)
>       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.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>       at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>       at 
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:59)
>       at 
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:120)
>       at 
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:145)
>       at org.apache.maven.surefire.Surefire.run(Surefire.java:104)
>       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:498)
>       at 
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290)
>       at 
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1017)
> ...Unexpected!
> Oct 23, 2016 5:07:42 PM org.apache.asterix.test.aql.TestExecutor executeTest
> INFO: [TEST]: temporal/overlap_bins PASSED 
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to