[
https://issues.apache.org/jira/browse/DRILL-4128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15127496#comment-15127496
]
ASF GitHub Bot commented on DRILL-4128:
---------------------------------------
GitHub user jaltekruse opened a pull request:
https://github.com/apache/drill/pull/353
DRILL-4128: Fix NPE when calling getString on a JDBC ResultSet when t…
…he type is not varchar
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jaltekruse/incubator-drill 4128-jdbc-npe
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/drill/pull/353.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #353
----
commit 1b96174b1e5bafb13a873dd79f03467802d7c929
Author: Jason Altekruse <[email protected]>
Date: 2016-02-01T21:03:23Z
DRILL-4128: Fix NPE when calling getString on a JDBC ResultSet when the
type is not varchar
----
> null pointer at
> org.apache.drill.exec.vector.accessor.AbstractSqlAccessor.getString(AbstractSqlAccessor.java:101)
> -----------------------------------------------------------------------------------------------------------------
>
> Key: DRILL-4128
> URL: https://issues.apache.org/jira/browse/DRILL-4128
> Project: Apache Drill
> Issue Type: Bug
> Components: Client - JDBC
> Affects Versions: 1.0.0, 1.1.0, 1.2.0, 1.3.0, 1.4.0
> Reporter: Devender Yadav
> Priority: Blocker
> Fix For: Future
>
>
> While fetching data from ResultSet in JDBC. I got the null pointer. Details -
> java.lang.NullPointerException
> at
> org.apache.drill.exec.vector.accessor.AbstractSqlAccessor.getString(AbstractSqlAccessor.java:101)
> at
> org.apache.drill.exec.vector.accessor.BoundCheckingAccessor.getString(BoundCheckingAccessor.java:124)
> at
> org.apache.drill.jdbc.impl.TypeConvertingSqlAccessor.getString(TypeConvertingSqlAccessor.java:649)
> at
> org.apache.drill.jdbc.impl.AvaticaDrillSqlAccessor.getString(AvaticaDrillSqlAccessor.java:95)
> at
> net.hydromatic.avatica.AvaticaResultSet.getString(AvaticaResultSet.java:205)
> at
> org.apache.drill.jdbc.impl.DrillResultSetImpl.getString(DrillResultSetImpl.java:182)
> Below mentioned method is throwing null pointer becaue getObject(rowOffset)
> returns null for null values & null.toString() is throwing null pointer.
> @Override
> public String getString(int rowOffset) throws InvalidAccessException{
> return getObject(rowOffset).toString();
> }
> It should be like:
> @Override
> public String getString(int rowOffset) throws InvalidAccessException{
> return getObject(rowOffset)==null? null:getObject(rowOffset).toString();
> }
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)