drill-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "南在南方" <i02...@qq.com>
Subject 回复: error when querying a csv file with drill.
Date Fri, 23 May 2014 14:30:51 GMT
I have tried three way (back-ticks, single quotes, double quotes).Here is the back-ticks error
report:
I succeed in quering parquet and json format file before with "double quotes" around file
classpath. I thought they were same. 
0: jdbc:drill:schema=dfs> select * from `/home/bevin/AllstarFull.csv`; 
java.lang.RuntimeException: parse failed
	at net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:237)
	at net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare_(OptiqPrepareImpl.java:195)
	at net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepareSql(OptiqPrepareImpl.java:168)
	at net.hydromatic.optiq.jdbc.OptiqStatement.parseQuery(OptiqStatement.java:402)
	at net.hydromatic.optiq.jdbc.OptiqStatement.execute(OptiqStatement.java:192)
	at sqlline.SqlLine$Commands.execute(SqlLine.java:3825)
	at sqlline.SqlLine$Commands.sql(SqlLine.java:3738)
	at sqlline.SqlLine.dispatch(SqlLine.java:882)
	at sqlline.SqlLine.begin(SqlLine.java:717)
	at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:460)
	at sqlline.SqlLine.main(SqlLine.java:443)
Caused by: org.eigenbase.sql.parser.SqlParseException: Lexical error at line 1, column 15.
 Encountered: "`" (96), after : ""
	at org.eigenbase.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:281)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:44)
	at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:138)
	at net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:235)
	... 10 more
Caused by: org.eigenbase.sql.parser.impl.TokenMgrError: Lexical error at line 1, column 15.
 Encountered: "`" (96), after : ""
	at org.eigenbase.sql.parser.impl.SqlParserImplTokenManager.getNextToken(SqlParserImplTokenManager.java:4924)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_scan_token(SqlParserImpl.java:15281)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3_245(SqlParserImpl.java:14738)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3R_38(SqlParserImpl.java:14750)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3R_42(SqlParserImpl.java:14643)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3_73(SqlParserImpl.java:14951)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.jj_2_73(SqlParserImpl.java:5338)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:1379)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:1286)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:633)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:399)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:2055)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:2017)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:377)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:573)
	at org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:599)
	at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:130)
	... 11 more


Thanks.


------------------ 原始邮件 ------------------
发件人: "Jason Altekruse";<altekrusejason@gmail.com>;
发送时间: 2014年5月23日(星期五) 晚上10:20
收件人: "Apache Drill User"<drill-user@incubator.apache.org>; 

主题: Re: error when querying a csv file with drill.



Hello Bevin,

Welcome to the Drill community! For your error it looks like there is an
issue parsing the table name. Table names are expected to be surrounded by
back-ticks instead of single quotes, for more info you can read this post
on the wiki.
https://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+in+10+Minutes

-Jason


On Fri, May 23, 2014 at 6:15 AM, 南在南方 <i02389@qq.com> wrote:

> Here is my storage-plugins.json:
> {
>   "storage":{
>     dfs: {
>       type: "file",
>       connection: "file:///"
>       },
>       formats: {
>         "psv" : {
>           type: "text",
>           extensions: [ "tbl" ],
>           delimiter: "|"
>         },
>         "csv" : {
>           type: "text",
>           extensions: [ "csv" ],
>           delimiter: ","
>         },
>         "tsv" : {
>           type: "text",
>           extensions: [ "tsv" ],
>           delimiter: "\t"
>         },
>         "parquet" : {
>           type: "parquet"
>         },
>         "json" : {
>           type: "json"
>         }
>       }
>     },
>     cp: {
>       type: "file",
>       connection: "classpath:///"
>     }
>   }
> }I connect drill with string "sqlline -u jdbc:drill:schema=dfs -n admin -p
> admin"
>
> bevin@le:/opt/apache-drill-1.0.0-m1/bin$ sqlline -u jdbc:drill:schema=dfs
> -n admin -p admin
>
>
> Loaded singnal handler: SunSignalHandler
> /home/bevin/.sqlline/sqlline.properties (没有那个文件或目录)
> scan complete in 18ms
> scan complete in 2693ms
> Connecting to jdbc:drill:schema=dfs
> Connected to: Drill (version 1.0)
> Driver: Apache Drill JDBC Driver (version 1.0)
> Autocommit status: true
> Transaction isolation: TRANSACTION_REPEATABLE_READ
> sqlline version ??? by Marc Prud'hommeauxThen run a query(the file path is
> right) :
> 0: jdbc:drill:schema=dfs> select * from "/home/bevin/AllstarFull.csv";
> 五月 23, 2014 7:09:14 下午 org.eigenbase.sql.validate.SqlValidatorException
> <init>
> 严重: org.eigenbase.sql.validate.SqlValidatorException: Table
> '/home/bevin/AllstarFull.csv' not found
> 五月 23, 2014 7:09:14 下午 org.eigenbase.util.EigenbaseException <init>
> 严重: org.eigenbase.util.EigenbaseContextException: From line 1, column 15
> to line 1, column 43
> org.eigenbase.util.EigenbaseContextException: From line 1, column 15 to
> line 1, column 43
>         at
> org.eigenbase.resource.EigenbaseResource$_Def12.ex(EigenbaseResource.java:1026)
>         at org.eigenbase.sql.SqlUtil.newContextException(SqlUtil.java:739)
>         at org.eigenbase.sql.SqlUtil.newContextException(SqlUtil.java:726)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.newValidationError(SqlValidatorImpl.java:3830)
>         at
> org.eigenbase.sql.validate.IdentifierNamespace.validateImpl(IdentifierNamespace.java:78)
>         at
> org.eigenbase.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:90)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:802)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:790)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:2776)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:3013)
>         at
> org.eigenbase.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:69)
>         at
> org.eigenbase.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:90)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:802)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:790)
>         at org.eigenbase.sql.SqlSelect.validate(SqlSelect.java:154)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:753)
>         at
> org.eigenbase.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:444)
>         at
> org.eigenbase.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:445)
>         at
> net.hydromatic.optiq.prepare.Prepare.prepareSql(Prepare.java:160)
>         at
> net.hydromatic.optiq.prepare.Prepare.prepareSql(Prepare.java:129)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:255)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare_(OptiqPrepareImpl.java:195)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepareSql(OptiqPrepareImpl.java:168)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.parseQuery(OptiqStatement.java:402)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.execute(OptiqStatement.java:192)
>         at sqlline.SqlLine$Commands.execute(SqlLine.java:3825)
>         at sqlline.SqlLine$Commands.sql(SqlLine.java:3738)
>         at sqlline.SqlLine.dispatch(SqlLine.java:882)
>         at sqlline.SqlLine.begin(SqlLine.java:717)
>         at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:460)
>         at sqlline.SqlLine.main(SqlLine.java:443)
> Caused by: org.eigenbase.sql.validate.SqlValidatorException: Table
> '/home/bevin/AllstarFull.csv' not found
>         at
> org.eigenbase.resource.EigenbaseResource$_Def9.ex(EigenbaseResource.java:963)
>         ... 27 more0: jdbc:drill:schema=dfs> select * from
> `/home/bevin/AllstarFull.csv`;
> java.lang.RuntimeException: parse failed
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:237)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare_(OptiqPrepareImpl.java:195)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepareSql(OptiqPrepareImpl.java:168)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.parseQuery(OptiqStatement.java:402)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.execute(OptiqStatement.java:192)
>         at sqlline.SqlLine$Commands.execute(SqlLine.java:3825)
>         at sqlline.SqlLine$Commands.sql(SqlLine.java:3738)
>         at sqlline.SqlLine.dispatch(SqlLine.java:882)
>         at sqlline.SqlLine.begin(SqlLine.java:717)
>         at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:460)
>         at sqlline.SqlLine.main(SqlLine.java:443)
> Caused by: org.eigenbase.sql.parser.SqlParseException: Lexical error at
> line 1, column 15.  Encountered: "`" (96), after : ""
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:281)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:44)
>         at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:138)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:235)
>         ... 10 more
> Caused by: org.eigenbase.sql.parser.impl.TokenMgrError: Lexical error at
> line 1, column 15.  Encountered: "`" (96), after : ""
>         at
> org.eigenbase.sql.parser.impl.SqlParserImplTokenManager.getNextToken(SqlParserImplTokenManager.java:4924)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_scan_token(SqlParserImpl.java:15281)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3_245(SqlParserImpl.java:14738)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3R_38(SqlParserImpl.java:14750)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3R_42(SqlParserImpl.java:14643)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_3_73(SqlParserImpl.java:14951)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_2_73(SqlParserImpl.java:5338)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:1379)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:1286)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:633)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:399)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:2055)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:2017)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:377)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:573)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:599)
>         at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:130)
>         ... 11 more0: jdbc:drill:schema=dfs> select * from
> '/home/bevin/AllstarFull.csv';
> java.lang.RuntimeException: parse failed
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:237)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare_(OptiqPrepareImpl.java:195)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepareSql(OptiqPrepareImpl.java:168)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.parseQuery(OptiqStatement.java:402)
>         at
> net.hydromatic.optiq.jdbc.OptiqStatement.execute(OptiqStatement.java:192)
>         at sqlline.SqlLine$Commands.execute(SqlLine.java:3825)
>         at sqlline.SqlLine$Commands.sql(SqlLine.java:3738)
>         at sqlline.SqlLine.dispatch(SqlLine.java:882)
>         at sqlline.SqlLine.begin(SqlLine.java:717)
>         at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:460)
>         at sqlline.SqlLine.main(SqlLine.java:443)
> Caused by: org.eigenbase.sql.parser.SqlParseException: Encountered
> "\'/home/bevin/AllstarFull.csv\'" at line 1, column 15.
> Was expecting one of:
>     <IDENTIFIER> ...
>     <QUOTED_IDENTIFIER> ...
>     <UNICODE_QUOTED_IDENTIFIER> ...
>     "LATERAL" ...
>     "(" ...
>     "UNNEST" ...
>     "TABLE" ...
>
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:281)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:44)
>         at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:138)
>         at
> net.hydromatic.optiq.prepare.OptiqPrepareImpl.prepare2_(OptiqPrepareImpl.java:235)
>         ... 10 more
> Caused by: org.eigenbase.sql.parser.impl.ParseException: Encountered
> "\'/home/bevin/AllstarFull.csv\'" at line 1, column 15.
> Was expecting one of:
>     <IDENTIFIER> ...
>     <QUOTED_IDENTIFIER> ...
>     <UNICODE_QUOTED_IDENTIFIER> ...
>     "LATERAL" ...
>     "(" ...
>     "UNNEST" ...
>     "TABLE" ...
>
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.generateParseException(SqlParserImpl.java:15443)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.jj_consume_token(SqlParserImpl.java:15272)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:1423)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:1286)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:633)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:399)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:2055)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:2017)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:377)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:573)
>         at
> org.eigenbase.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:599)
>         at org.eigenbase.sql.parser.SqlParser.parseStmt(SqlParser.java:130)
>         ... 11 moreI can't figure out what happened during the query , PLZ
> give me some help!
> THANKS
> BEVIN
Mime
  • Unnamed multipart/alternative (inline, 8-Bit, 0 bytes)
View raw message