hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sergio Peña (JIRA) <j...@apache.org>
Subject [jira] [Work started] (HIVE-8330) HiveResultSet.findColumn() parameters are case sensitive
Date Thu, 02 Oct 2014 15:05:33 GMT

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

Work on HIVE-8330 started by Sergio Peña.
-----------------------------------------
> HiveResultSet.findColumn() parameters are case sensitive
> --------------------------------------------------------
>
>                 Key: HIVE-8330
>                 URL: https://issues.apache.org/jira/browse/HIVE-8330
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 0.13.1
>            Reporter: Sergio Peña
>            Assignee: Sergio Peña
>
> Look at the following code:
> {noformat}
> Class.forName("org.apache.hive.jdbc.HiveDriver");
>         Connection db = null;
>         Statement stmt = null;
>         ResultSet rs = null;
>         try {
>             db = DriverManager.getConnection("jdbc:hive2://localhost:10000/default",
"hive", "");
>             stmt = db.createStatement();
>             rs = stmt.executeQuery("SELECT * FROM sample_07 limit 1");
>             ResultSetMetaData metaData = rs.getMetaData();
>             for (int i = 1; i <= metaData.getColumnCount(); i++) {
>                 System.out.println("Column " + i + ": " + metaData.getColumnName(i));
>             }
>             while (rs.next()) {
>                 System.out.println(rs.findColumn("code"));
>             }
>         } finally {
>             DbUtils.closeQuietly(db, stmt, rs);
>         }
> {noformat}
> Above program will generate following result on my cluster:
> {noformat}
> Column 1: code
> Column 2: description
> Column 3: total_emp
> Column 4: salary
> 1
> {noformat}
> However, if the last print sentence is changed as following (using uppercase characters):
> {noformat}
> System.out.println(rs.findColumn("Code"));
> {noformat}
> The program will fail at exactly that line. The same happens if the column name is changed
as "CODE"
> Based on the JDBC ResultSet documentation, this method should be case insensitive.
> "Column names used as input to getter methods are case insensitive"
> http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message