Wail Alkowaileet created ASTERIXDB-1072:
-------------------------------------------

             Summary: string-concat throws an exception if the string retrieved 
from heterogeneous fields 
                 Key: ASTERIXDB-1072
                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1072
             Project: Apache AsterixDB
          Issue Type: Bug
          Components: Hyracks
         Environment: MacOS
            Reporter: Wail Alkowaileet
            Priority: Minor


Hello Team,

I was testing some of Asterix built-in functions and I ran into a bug if the 
fields are heterogeneous.

Reproduce the Problem:
let $k := [{"a":1, "b":"hello"}, {"a":2, "b":{"k": [1,2,2]}}]
for $x in $k
where $x.a = 1
return string-concat([$x.b, " world"]) 

Result:
summary: "edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64

if the 2nd "b" is string as well, the issue doesn't appear.

### Stacktrace:
015-08-14 11:32:10,634 INFO  [IPC Server handler 8 on 31888] hdfs.StateChange 
(FSNamesystem.java:completeFile(2789)) - DIR* completeFile: 
/asterix/tw_for_indexleftouterjoin_nested.adm is closed by 
DFSClient_NONMAPREDUCE_-230710321_1
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:308)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        ... 3 more
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.nextPartition(HyracksDatasetReader.java:120)
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.read(HyracksDatasetReader.java:131)
        at edu.uci.ics.asterix.result.ResultReader.read(ResultReader.java:55)
        at 
edu.uci.ics.asterix.result.ResultUtils.displayResults(ResultUtils.java:96)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.handleQuery(AqlTranslator.java:2507)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.compileAndExecute(AqlTranslator.java:377)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.handleRequest(RESTAPIServlet.java:156)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.handleRequest(QueryAPIServlet.java:1)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.doGet(RESTAPIServlet.java:129)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.doGet(QueryAPIServlet.java:1)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:546)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:483)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:228)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:956)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:188)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:891)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
        at org.eclipse.jetty.server.Server.handle(Server.java:353)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:598)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1059)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:427)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
        at java.lang.Thread.run(Thread.java:745)
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:308)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        ... 1 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        ... 3 more
Aug 14, 2015 11:32:13 AM edu.uci.ics.hyracks.control.nc.Joblet close
WARNING: Freeing leaked 262144 bytes
Aug 14, 2015 11:32:13 AM edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet 
handleRequest
SEVERE: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.nextPartition(HyracksDatasetReader.java:120)
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.read(HyracksDatasetReader.java:131)
        at edu.uci.ics.asterix.result.ResultReader.read(ResultReader.java:55)
        at 
edu.uci.ics.asterix.result.ResultUtils.displayResults(ResultUtils.java:96)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.handleQuery(AqlTranslator.java:2507)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.compileAndExecute(AqlTranslator.java:377)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.handleRequest(RESTAPIServlet.java:156)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.handleRequest(QueryAPIServlet.java:1)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.doGet(RESTAPIServlet.java:129)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.doGet(QueryAPIServlet.java:1)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:546)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:483)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:228)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:956)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:188)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:891)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
        at org.eclipse.jetty.server.Server.handle(Server.java:353)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:598)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1059)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:427)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
        at java.lang.Thread.run(Thread.java:745)
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:308)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        ... 1 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        ... 3 more

Aug 14, 2015 11:32:13 AM edu.uci.ics.asterix.test.aql.TestsUtils 
executeHttpMethod
SEVERE: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.nextPartition(HyracksDatasetReader.java:120)
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.read(HyracksDatasetReader.java:131)
        at edu.uci.ics.asterix.result.ResultReader.read(ResultReader.java:55)
        at 
edu.uci.ics.asterix.result.ResultUtils.displayResults(ResultUtils.java:96)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.handleQuery(AqlTranslator.java:2507)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.compileAndExecute(AqlTranslator.java:377)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.handleRequest(RESTAPIServlet.java:156)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.handleRequest(QueryAPIServlet.java:1)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.doGet(RESTAPIServlet.java:129)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.doGet(QueryAPIServlet.java:1)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:546)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:483)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:228)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:956)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:188)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:891)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
        at org.eclipse.jetty.server.Server.handle(Server.java:353)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:598)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1059)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:427)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
        at java.lang.Thread.run(Thread.java:745)
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:308)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        ... 1 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        ... 3 more

testFile 
src/test/resources/runtimets/queries/string/strconcat03/strconcat03.1.query.aql 
raised an exception:
java.lang.Exception: HTTP operation failed: 4
STATUS LINE: HTTP/1.1 500 Server Error
SUMMARY: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
 caused by: 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.nextPartition(HyracksDatasetReader.java:120)
 caused by: 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
 caused by: 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
STACKTRACE: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.nextPartition(HyracksDatasetReader.java:120)
        at 
edu.uci.ics.hyracks.client.dataset.HyracksDatasetReader.read(HyracksDatasetReader.java:131)
        at edu.uci.ics.asterix.result.ResultReader.read(ResultReader.java:55)
        at 
edu.uci.ics.asterix.result.ResultUtils.displayResults(ResultUtils.java:96)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.handleQuery(AqlTranslator.java:2507)
        at 
edu.uci.ics.asterix.aql.translator.AqlTranslator.compileAndExecute(AqlTranslator.java:377)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.handleRequest(RESTAPIServlet.java:156)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.handleRequest(QueryAPIServlet.java:1)
        at 
edu.uci.ics.asterix.api.http.servlet.RESTAPIServlet.doGet(RESTAPIServlet.java:129)
        at 
edu.uci.ics.asterix.api.http.servlet.QueryAPIServlet.doGet(QueryAPIServlet.java:1)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:546)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:483)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:228)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:956)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:188)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:891)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
        at org.eclipse.jetty.server.Server.handle(Server.java:353)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:598)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1059)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:427)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
        at java.lang.Thread.run(Thread.java:745)
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.hyracks.control.common.utils.ExceptionUtils.setNodeIds(ExceptionUtils.java:41)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:308)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        ... 1 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 64
        at 
edu.uci.ics.asterix.runtime.evaluators.functions.StringConcatDescriptor$2$1.evaluate(StringConcatDescriptor.java:112)
        at 
edu.uci.ics.hyracks.algebricks.core.algebra.expressions.LogicalExpressionJobGenToExpressionRuntimeProviderAdapter$ScalarEvaluatorFactoryAdapter$1.evaluate(LogicalExpressionJobGenToExpressionRuntimeProviderAdapter.java:106)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.produceTuple(AssignRuntimeFactory.java:144)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.AssignRuntimeFactory$1.nextFrame(AssignRuntimeFactory.java:127)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.AbstractFrameAppender.flush(AbstractFrameAppender.java:79)
        at 
edu.uci.ics.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender.flush(FrameFixedFieldTupleAppender.java:142)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushAndReset(AbstractOneInputOneOutputOneFramePushRuntime.java:56)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.flushIfNotFailed(AbstractOneInputOneOutputOneFramePushRuntime.java:62)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:50)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.close(AbstractOneInputOneOutputOneFramePushRuntime.java:51)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.std.EmptyTupleSourceRuntimeFactory$1.open(EmptyTupleSourceRuntimeFactory.java:52)
        at 
edu.uci.ics.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$1.initialize(AlgebricksMetaOperatorDescriptor.java:104)
        at 
edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
        at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:251)
        ... 3 more

        at 
edu.uci.ics.asterix.test.aql.TestsUtils.executeHttpMethod(TestsUtils.java:210)
        at 
edu.uci.ics.asterix.test.aql.TestsUtils.executeQuery(TestsUtils.java:227)
        at 
edu.uci.ics.asterix.test.aql.TestsUtils.executeTest(TestsUtils.java:421)
        at 
edu.uci.ics.asterix.test.runtime.ExecutionTest.test(ExecutionTest.java:140)
        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:497)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
        at org.junit.runners.Suite.runChild(Suite.java:127)
        at org.junit.runners.Suite.runChild(Suite.java:26)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
        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:309)
        at 
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
        at 
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
...Unexpected!



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

Reply via email to