You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Wail Y. Alkowaileet (Jira)" <ji...@apache.org> on 2020/11/13 21:28:00 UTC

[jira] [Updated] (ASTERIXDB-2801) Function object_add_fields throws NullPointerException when adding open fields

     [ https://issues.apache.org/jira/browse/ASTERIXDB-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Wail Y. Alkowaileet updated ASTERIXDB-2801:
-------------------------------------------
    Description: 
DDL:
{code:java}
DROP DATAVERSE test IF EXISTS;
CREATE DATAVERSE test;
USE test;
CREATE TYPE TestType AS {
id: string
};
CREATE DATASET TestDS(TestType)
PRIMARY KEY id;
{code}
 

Query({color:#ff0000}throws exception{color}):
{code:java}
USE test;
SELECT object_add_fields( t, [{"field-name":"copy", "field-value":t.original}])
FROM TestDS t;
{code}
 

 

Workaround: cast _t.original_ type to string 
{code:java}
USE test;
SELECT object_add_fields( t, [{"field-name":"copy", "field-value":to_string(t.original)}])
FROM TestDS t;
{code}
 

Log:
{code:java}
12:45:12.359 [HttpExecutor(port:19001)-1] ERROR org.apache.asterix - null12:45:12.359 [HttpExecutor(port:19001)-1] ERROR org.apache.asterix - nulljava.lang.NullPointerException: null at org.apache.asterix.dataflow.data.nontagged.serde.ARecordSerializerDeserializer.<init>(ARecordSerializerDeserializer.java:75) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.formats.nontagged.SerializerDeserializerProvider.getNonTaggedSerializerDeserializer(SerializerDeserializerProvider.java:158) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.formats.nontagged.SerializerDeserializerProvider.getSerializerDeserializer(SerializerDeserializerProvider.java:100) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.JobGenHelper.mkRecordDescriptor(JobGenHelper.java:66) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.algebra.operators.physical.AssignPOperator.contributeRuntimeOperator(AssignPOperator.java:95) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator.contributeRuntimeOperator(AbstractLogicalOperator.java:171) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:111) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compilePlanImpl(PlanCompiler.java:70) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compilePlan(PlanCompiler.java:52) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$1$1.createJob(HeuristicCompilerFactoryBuilder.java:112) ~[algebricks-compiler-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.asterix.api.common.APIFramework.compileQuery(APIFramework.java:298) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.rewriteCompileQuery(QueryTranslator.java:2843) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.lambda$handleQuery$3(QueryTranslator.java:3346) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.createAndRunJob(QueryTranslator.java:3478) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.deliverResult(QueryTranslator.java:3382) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.handleQuery(QueryTranslator.java:3361) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:435) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.api.http.server.ApiServlet.post(ApiServlet.java:155) [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.hyracks.http.server.AbstractServlet.handle(AbstractServlet.java:93) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.handle(HttpRequestHandler.java:83) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:68) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:37) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_211] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_211] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_211] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211]{code}
 

  was:
DDL:

 
{code:java}
DROP DATAVERSE test IF EXISTS;
CREATE DATAVERSE test;
USE test;
CREATE TYPE TestType AS {
id: string
};
CREATE DATASET TestDS(TestType)
PRIMARY KEY id;
{code}
 

Query({color:#FF0000}throws exception{color}):

 
{code:java}
USE test;
SELECT object_add_fields( t, [{"field-name":"copy", "field-value":t.original}])
FROM TestDS t;
{code}
 

 

Workaround: cast _t.original_ type to string

 
{code:java}
USE test;
SELECT object_add_fields( t, [{"field-name":"copy", "field-value":to_string(t.original)}])
FROM TestDS t;
{code}
 


> Function object_add_fields throws NullPointerException when adding open fields
> ------------------------------------------------------------------------------
>
>                 Key: ASTERIXDB-2801
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-2801
>             Project: Apache AsterixDB
>          Issue Type: Bug
>            Reporter: Wail Y. Alkowaileet
>            Priority: Major
>
> DDL:
> {code:java}
> DROP DATAVERSE test IF EXISTS;
> CREATE DATAVERSE test;
> USE test;
> CREATE TYPE TestType AS {
> id: string
> };
> CREATE DATASET TestDS(TestType)
> PRIMARY KEY id;
> {code}
>  
> Query({color:#ff0000}throws exception{color}):
> {code:java}
> USE test;
> SELECT object_add_fields( t, [{"field-name":"copy", "field-value":t.original}])
> FROM TestDS t;
> {code}
>  
>  
> Workaround: cast _t.original_ type to string 
> {code:java}
> USE test;
> SELECT object_add_fields( t, [{"field-name":"copy", "field-value":to_string(t.original)}])
> FROM TestDS t;
> {code}
>  
> Log:
> {code:java}
> 12:45:12.359 [HttpExecutor(port:19001)-1] ERROR org.apache.asterix - null12:45:12.359 [HttpExecutor(port:19001)-1] ERROR org.apache.asterix - nulljava.lang.NullPointerException: null at org.apache.asterix.dataflow.data.nontagged.serde.ARecordSerializerDeserializer.<init>(ARecordSerializerDeserializer.java:75) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.formats.nontagged.SerializerDeserializerProvider.getNonTaggedSerializerDeserializer(SerializerDeserializerProvider.java:158) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.formats.nontagged.SerializerDeserializerProvider.getSerializerDeserializer(SerializerDeserializerProvider.java:100) ~[asterix-om-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.JobGenHelper.mkRecordDescriptor(JobGenHelper.java:66) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.algebra.operators.physical.AssignPOperator.contributeRuntimeOperator(AssignPOperator.java:95) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator.contributeRuntimeOperator(AbstractLogicalOperator.java:171) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:111) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compilePlanImpl(PlanCompiler.java:70) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compilePlan(PlanCompiler.java:52) ~[algebricks-core-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$1$1.createJob(HeuristicCompilerFactoryBuilder.java:112) ~[algebricks-compiler-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.asterix.api.common.APIFramework.compileQuery(APIFramework.java:298) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.rewriteCompileQuery(QueryTranslator.java:2843) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.lambda$handleQuery$3(QueryTranslator.java:3346) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.createAndRunJob(QueryTranslator.java:3478) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.deliverResult(QueryTranslator.java:3382) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.handleQuery(QueryTranslator.java:3361) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:435) ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.asterix.api.http.server.ApiServlet.post(ApiServlet.java:155) [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at org.apache.hyracks.http.server.AbstractServlet.handle(AbstractServlet.java:93) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.handle(HttpRequestHandler.java:83) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:68) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:37) [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_211] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_211] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_211] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211]{code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)