shamim8888 / asterixdb

Automatically exported from code.google.com/p/asterixdb
0 stars 0 forks source link

NPE on type definition - requires restart of AsterixDB #742

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Reproduction:
===============
1. Define a type as described below. The output message is blank (not even an 
error) and you cannot execute *any* query prior restarting the procs.

drop dataverse kereno if exists;
create dataverse kereno;
use dataverse kereno;

create type page_info_type as open {}

create type widegroupbydata as closed {
user: string,
        action: int32,
        timespent: int32,
        query_term: string,
        ip_addr: int32,
        timestamp: int32,
        estimated_revenue: double,
        page_info: page_info_type,
        page_links: {{ page_info_type}},
user_1: string,
        action_1: int32,
        timespent_1: int32,
        query_term_1: string,
        ip_addr_1: int32,
        timestamp_1: int32,
        estimated_revenue_1: double,
        page_info_1: page_info_type,
        page_links_1: {{ page_info_type}}
}

The stack in cc.log looks as follows:
SEVERE: null
java.lang.NullPointerException
    at edu.uci.ics.asterix.om.typecomputer.impl.NonTaggedCollectionMemberResultType.computeType(NonTaggedCollectionMemberResultType.java:42)
    at edu.uci.ics.asterix.dataflow.data.common.AqlExpressionTypeComputer.getTypeForFunction(AqlExpressionTypeComputer.java:88)
    at edu.uci.ics.asterix.dataflow.data.common.AqlExpressionTypeComputer.getType(AqlExpressionTypeComputer.java:56)
    at edu.uci.ics.hyracks.algebricks.core.algebra.typing.AbstractTypeEnvironment.getType(AbstractTypeEnvironment.java:41)
    at edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator.computeOutputTypeEnvironment(UnnestOperator.java:102)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.AlgebricksOptimizationContext.computeAndSetTypeEnvironmentForOperator(AlgebricksOptimizationContext.java:255)
    at edu.uci.ics.hyracks.algebricks.rewriter.rules.ComplexUnnestToProductRule.rewritePost(ComplexUnnestToProductRule.java:110)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:122)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:96)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:96)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:96)
    at edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialFixpointRuleController.rewriteWithRuleCollection(SequentialFixpointRuleController.java:49)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.runOptimizationSets(HeuristicOptimizer.java:93)
    at edu.uci.ics.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.optimize(HeuristicOptimizer.java:80)
    at edu.uci.ics.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$1$1.optimize(HeuristicCompilerFactoryBuilder.java:81)
    at edu.uci.ics.asterix.api.common.APIFramework.compileQuery(APIFramework.java:285)
    at edu.uci.ics.asterix.aql.translator.AqlTranslator.rewriteCompileQuery(AqlTranslator.java:1428)
    at edu.uci.ics.asterix.aql.translator.AqlTranslator.handleQuery(AqlTranslator.java:1724)
    at edu.uci.ics.asterix.aql.translator.AqlTranslator.compileAndExecute(AqlTranslator.java:301)
    at edu.uci.ics.asterix.api.http.servlet.APIServlet.doPost(APIServlet.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    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:231)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:970)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:904)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
    at org.eclipse.jetty.server.Server.handle(Server.java:347)
    at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:439)
    at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:924)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:781)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:220)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:43)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:529)
    at java.lang.Thread.run(Thread.java:722)

Original issue reported on code.google.com by ker...@gmail.com on 20 Mar 2014 at 9:30

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Updated NC stack trace below:
(tag: Pigmix - Query 17: not a blocker).

java.lang.IllegalStateException: java.lang.NullPointerException
    at edu.uci.ics.asterix.transaction.management.service.logging.LogPage.internalFlush(LogPage.java:188)
    at edu.uci.ics.asterix.transaction.management.service.logging.LogPage.flush(LogPage.java:160)
    at edu.uci.ics.asterix.transaction.management.service.logging.LogFlusher.call(LogManager.java:463)
    at edu.uci.ics.asterix.transaction.management.service.logging.LogFlusher.call(LogManager.java:399)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NullPointerException
    at edu.uci.ics.asterix.transaction.management.service.transaction.TransactionContext.notifyOptracker(TransactionContext.java:151)
    at edu.uci.ics.asterix.transaction.management.service.logging.LogPage.batchUnlock(LogPage.java:213)
    at edu.uci.ics.asterix.transaction.management.service.logging.LogPage.internalFlush(LogPage.java:185)
    ... 8 more

Original comment by ker...@gmail.com on 17 Nov 2014 at 10:39