br1ghtyang / asterixdb

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

ADMLexer needs to properly distinguish between ending record constructor and end of bag #610

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Nearly identical to issue 595.

Original issue reported on code.google.com by zheilb...@gmail.com on 13 Aug 2013 at 11:15

GoogleCodeExporter commented 8 years ago

Original comment by zheilb...@gmail.com on 16 Aug 2013 at 12:02

GoogleCodeExporter commented 8 years ago
In order to invoke the ADMDataParser, we need to bulkload. Put the following 
tuple in a file and then execute the AQL below:

// tuple
{
    "id": 1,
    "nest_rec": {
        "id": 2
}}

// aql
drop dataverse foo if exists;
create dataverse foo;
use dataverse foo;

create type bartype as open {
id: int32,
nest_rec: {
id: int32
}
}

create dataset baz(bartype) primary key id;

load dataset baz
using localfs(("path"="nc1://<absolute_path_to_file>"), ("format"="adm"));

// expected error
Unexpected ADM token kind:  while parsing record fields. [AsterixException]

// stack trace
edu.uci.ics.hyracks.api.exceptions.HyracksException: Job failed on account of:
exception during reading from external data source

    at edu.uci.ics.hyracks.control.cc.job.JobRun.waitForCompletion(JobRun.java:206)
    at edu.uci.ics.hyracks.control.cc.work.WaitForJobCompletionWork$1.run(WaitForJobCompletionWork.java:44)
    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: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: exception 
during reading from external data source
    at edu.uci.ics.asterix.metadata.feeds.ExternalDataScanOperatorDescriptor$1.initialize(ExternalDataScanOperatorDescriptor.java:57)
    at edu.uci.ics.hyracks.api.rewriter.runtime.SuperActivityOperatorNodePushable.initialize(SuperActivityOperatorNodePushable.java:81)
    at edu.uci.ics.hyracks.control.nc.Task.run(Task.java:228)
    ... 3 more
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.asterix.common.exceptions.AsterixException: Unexpected ADM token 
kind: <END_UNORDERED_LIST> while parsing record fields.
    at edu.uci.ics.asterix.runtime.operators.file.AbstractTupleParser.parse(AbstractTupleParser.java:81)
    at edu.uci.ics.asterix.external.dataset.adapter.FileSystemBasedAdapter.start(FileSystemBasedAdapter.java:50)
    at edu.uci.ics.asterix.metadata.feeds.ExternalDataScanOperatorDescriptor$1.initialize(ExternalDataScanOperatorDescriptor.java:55)
    ... 5 more
Caused by: edu.uci.ics.hyracks.api.exceptions.HyracksDataException: 
edu.uci.ics.asterix.common.exceptions.AsterixException: Unexpected ADM token 
kind: <END_UNORDERED_LIST> while parsing record fields.
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.parse(ADMDataParser.java:81)
    at edu.uci.ics.asterix.runtime.operators.file.AbstractTupleParser.parse(AbstractTupleParser.java:68)
    ... 7 more
Caused by: edu.uci.ics.asterix.common.exceptions.AsterixException: Unexpected 
ADM token kind: <END_UNORDERED_LIST> while parsing record fields.
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.parseRecord(ADMDataParser.java:537)
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.admFromLexerStream(ADMDataParser.java:345)
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.parseRecord(ADMDataParser.java:510)
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.admFromLexerStream(ADMDataParser.java:345)
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.parseAdmInstance(ADMDataParser.java:107)
    at edu.uci.ics.asterix.runtime.operators.file.ADMDataParser.parse(ADMDataParser.java:79)
    ... 8 more

edu.uci.ics.asterix.common.exceptions.AsterixException

Original comment by zheilb...@gmail.com on 21 Aug 2013 at 6:58

GoogleCodeExporter commented 8 years ago
Fix reviewed by Zachary and merged into master.

Original comment by diegogio...@gmail.com on 30 Oct 2013 at 10:35

GoogleCodeExporter commented 8 years ago
Great! Thanks Diego.

Original comment by zheilb...@gmail.com on 30 Oct 2013 at 3:42