[ https://issues.apache.org/jira/browse/SQOOP-2737?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15051886#comment-15051886 ]
David Robson commented on SQOOP-2737: ------------------------------------- Can you please try the patch for https://issues.apache.org/jira/browse/SQOOP-2723 I have fixed the code to quote the Oracle columns so it should also resolve the issue with spaces. This is for the direct connector (using --direct option). You'll need to build the current branch. Or if you need help I can do this for you if you let me know what version of Hadoop you are running? > Cannot import table from Oracle with column with spaces in name > --------------------------------------------------------------- > > Key: SQOOP-2737 > URL: https://issues.apache.org/jira/browse/SQOOP-2737 > Project: Sqoop > Issue Type: Bug > Components: connectors/oracle > Affects Versions: 1.4.5 > Reporter: Jakub HavlĂk > Priority: Critical > > When importing database containing table(s) with spaces in column name(s) > following error is displayed: > {code} > Error: java.io.IOException: SQLException in nextKeyValue > at > org.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue(DBRecordReader.java:277) > at > org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.nextKeyValue(MapTask.java:553) > at > org.apache.hadoop.mapreduce.task.MapContextImpl.nextKeyValue(MapContextImpl.java:80) > at > org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.nextKeyValue(WrappedMapper.java:91) > at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:144) > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:784) > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) > at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:422) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671) > at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) > Caused by: java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not > found where expected > at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447) > at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) > at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951) > at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:513) > at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:227) > at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) > at > oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208) > at > oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:886) > at > oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1175) > at > oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1296) > at > oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3613) > at > oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3657) > at > oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1495) > at > org.apache.sqoop.mapreduce.db.DBRecordReader.executeQuery(DBRecordReader.java:111) > at > org.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue(DBRecordReader.java:235) > ... 11 more > {code} > As a enterprise user I would expect that I can import tables with spaces in a > column name with no issues. -- This message was sent by Atlassian JIRA (v6.3.4#6332)