[
https://issues.apache.org/jira/browse/DRILL-4755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16096251#comment-16096251
]
ASF GitHub Bot commented on DRILL-4755:
---------------------------------------
Github user asfgit closed the pull request at:
https://github.com/apache/drill/pull/867
> StringIndexOutOfBoundsException seen with CONVERT_FROM function
> ---------------------------------------------------------------
>
> Key: DRILL-4755
> URL: https://issues.apache.org/jira/browse/DRILL-4755
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Affects Versions: 1.7.0
> Reporter: Khurram Faraaz
> Assignee: Volodymyr Vysotskyi
> Labels: ready-to-commit
> Fix For: 1.11.0
>
> Attachments: date_data.csv
>
>
> StringIndexOutOfBoundsException seen with CONVERT_FROM function
> Drill git commit ID : 6286c0a4
> {noformat}
> 0: jdbc:drill:schema=dfs.tmp> select
> CONVERT_FROM(binary_string(columns[0]),'INTEGER') from `binStrDuplcs.csv`;
> Error: SYSTEM ERROR: StringIndexOutOfBoundsException: String index out of
> range: -5
> [Error Id: 7e8fd49d-c6ac-40ac-849e-cf59145ed5dd on centos-01.qa.lab:31010]
> (org.apache.drill.exec.work.foreman.ForemanException) Unexpected exception
> during fragment initialization: String index out of range: -5
> org.apache.drill.exec.work.foreman.Foreman.run():271
> java.util.concurrent.ThreadPoolExecutor.runWorker():1142
> java.util.concurrent.ThreadPoolExecutor$Worker.run():617
> java.lang.Thread.run():745
> Caused By (java.lang.StringIndexOutOfBoundsException) String index out of
> range: -5
> java.lang.String.substring():1931
>
> org.apache.drill.exec.planner.logical.PreProcessLogicalRel.getConvertFunctionException():244
> org.apache.drill.exec.planner.logical.PreProcessLogicalRel.visit():148
> org.apache.calcite.rel.logical.LogicalProject.accept():132
>
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.preprocessNode():634
>
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateAndConvert():196
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan():164
> org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan():94
> org.apache.drill.exec.work.foreman.Foreman.runSQL():978
> org.apache.drill.exec.work.foreman.Foreman.run():257
> java.util.concurrent.ThreadPoolExecutor.runWorker():1142
> java.util.concurrent.ThreadPoolExecutor$Worker.run():617
> java.lang.Thread.run():745 (state=,code=0)
> {noformat}
> Stack trace from drillbit.log
> {noformat}
> 2016-06-27 05:31:02,515 [288f45e9-44ad-bc5e-3247-3e0ec4dc68e0:foreman] INFO
> o.a.drill.exec.work.foreman.Foreman - Query text for query id
> 288f45e9-44ad-bc5e-3247-3e0ec4dc68e0: select
> CONVERT_FROM(binary_string(columns[0]),'INTEGER') from `binStrDuplcs.csv`
> 2016-06-27 05:31:02,558 [288f45e9-44ad-bc5e-3247-3e0ec4dc68e0:foreman] ERROR
> o.a.drill.exec.work.foreman.Foreman - SYSTEM ERROR:
> StringIndexOutOfBoundsException: String index out of range: -5
> [Error Id: 7e8fd49d-c6ac-40ac-849e-cf59145ed5dd on centos-01.qa.lab:31010]
> org.apache.drill.common.exceptions.UserException: SYSTEM ERROR:
> StringIndexOutOfBoundsException: String index out of range: -5
> [Error Id: 7e8fd49d-c6ac-40ac-849e-cf59145ed5dd on centos-01.qa.lab:31010]
> at
> org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:543)
> ~[drill-common-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.work.foreman.Foreman$ForemanResult.close(Foreman.java:791)
> [drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.work.foreman.Foreman.moveToState(Foreman.java:901)
> [drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:271)
> [drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [na:1.8.0_91]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [na:1.8.0_91]
> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91]
> Caused by: org.apache.drill.exec.work.foreman.ForemanException: Unexpected
> exception during fragment initialization: String index out of range: -5
> ... 4 common frames omitted
> Caused by: java.lang.StringIndexOutOfBoundsException: String index out of
> range: -5
> at java.lang.String.substring(String.java:1931) ~[na:1.8.0_91]
> at
> org.apache.drill.exec.planner.logical.PreProcessLogicalRel.getConvertFunctionException(PreProcessLogicalRel.java:244)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.planner.logical.PreProcessLogicalRel.visit(PreProcessLogicalRel.java:148)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.calcite.rel.logical.LogicalProject.accept(LogicalProject.java:132)
> ~[calcite-core-1.4.0-drill-r11.jar:1.4.0-drill-r11]
> at
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.preprocessNode(DefaultSqlHandler.java:634)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateAndConvert(DefaultSqlHandler.java:196)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:164)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:94)
> ~[drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at
> org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:978)
> [drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:257)
> [drill-java-exec-1.7.0-SNAPSHOT.jar:1.7.0-SNAPSHOT]
> ... 3 common frames omitted
> {noformat}
> Data used in test
> {noformat}
> [root@centos-01 ~]# cat binStrDuplcs.csv
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> '\\x99\\x8c\\x2f\\x77'
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)