You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sqoop.apache.org by Sowmya Ramesh <sr...@hortonworks.com> on 2016/07/29 22:20:15 UTC

Review Request 50620: Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50620/
-----------------------------------------------------------

Review request for Sqoop.


Bugs: SQOOP-2990
    https://issues.apache.org/jira/browse/SQOOP-2990


Repository: sqoop-trunk


Description
-------

Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index

MR job fails with

org.apache.hadoop.mapred.TaskAttemptListenerImpl: Progress of TaskAttempt attempt_1464136533286_0050_m_000000_0 is : 0.0
2016-05-25 01:35:29,288 FATAL [IPC Server handler 8 on 47839] org.apache.hadoop.mapred.TaskAttemptListenerImpl: Task: attempt_1464136533286_0050_m_000000_0 - exited : java.io.IOException: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:197)
	at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.close(MapTask.java:670)
	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:415)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1724)
	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
Caused by: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
	at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:1821)
	at oracle.jdbc.driver.OraclePreparedStatement.addBatch(OraclePreparedStatement.java:10010)
	at oracle.jdbc.driver.OraclePreparedStatementWrapper.addBatch(OraclePreparedStatementWrapper.java:1358)
	at org.apache.sqoop.mapreduce.UpdateOutputFormat$UpdateRecordWriter.getPreparedStatement(UpdateOutputFormat.java:174)
	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.execUpdate(AsyncSqlRecordWriter.java:153)
	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:194)
	... 8 more


Diffs
-----

  src/java/org/apache/sqoop/mapreduce/OracleUpsertOutputFormat.java f79aaa9 

Diff: https://reviews.apache.org/r/50620/diff/


Testing
-------

Manual testing


Thanks,

Sowmya Ramesh


Re: Review Request 50620: Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index

Posted by Venkat Ranganathan <n....@live.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50620/#review154060
-----------------------------------------------------------


Ship it!




Can you upload the patch to JIRA

- Venkat Ranganathan


On July 29, 2016, 3:20 p.m., Sowmya Ramesh wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/50620/
> -----------------------------------------------------------
> 
> (Updated July 29, 2016, 3:20 p.m.)
> 
> 
> Review request for Sqoop.
> 
> 
> Bugs: SQOOP-2990
>     https://issues.apache.org/jira/browse/SQOOP-2990
> 
> 
> Repository: sqoop-trunk
> 
> 
> Description
> -------
> 
> Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index
> 
> MR job fails with
> 
> org.apache.hadoop.mapred.TaskAttemptListenerImpl: Progress of TaskAttempt attempt_1464136533286_0050_m_000000_0 is : 0.0
> 2016-05-25 01:35:29,288 FATAL [IPC Server handler 8 on 47839] org.apache.hadoop.mapred.TaskAttemptListenerImpl: Task: attempt_1464136533286_0050_m_000000_0 - exited : java.io.IOException: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:197)
> 	at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.close(MapTask.java:670)
> 	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
> 	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.security.auth.Subject.doAs(Subject.java:415)
> 	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1724)
> 	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
> Caused by: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:1821)
> 	at oracle.jdbc.driver.OraclePreparedStatement.addBatch(OraclePreparedStatement.java:10010)
> 	at oracle.jdbc.driver.OraclePreparedStatementWrapper.addBatch(OraclePreparedStatementWrapper.java:1358)
> 	at org.apache.sqoop.mapreduce.UpdateOutputFormat$UpdateRecordWriter.getPreparedStatement(UpdateOutputFormat.java:174)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.execUpdate(AsyncSqlRecordWriter.java:153)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:194)
> 	... 8 more
> 
> 
> Diffs
> -----
> 
>   src/java/org/apache/sqoop/mapreduce/OracleUpsertOutputFormat.java f79aaa9 
> 
> Diff: https://reviews.apache.org/r/50620/diff/
> 
> 
> Testing
> -------
> 
> Manual testing
> 
> 
> Thanks,
> 
> Sowmya Ramesh
> 
>


Re: Review Request 50620: Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index

Posted by Venkat Ranganathan <n....@live.com>.

> On Sept. 21, 2016, 11:45 p.m., lin peng wrote:
> > update the class  org.apache.sqoop.mapreduce.OracleUpsertOutputFormat ,the method  getUpdateStatement()
> > 
> >  Set<String> updateKeyLookup = new LinkedHashSet<String>();
> >       for (String updateKey : updateCols) {
> >         updateKeyLookup.add(OracleUtils.escapeIdentifier(updateKey));
> >       }

+1


- Venkat


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50620/#review149957
-----------------------------------------------------------


On July 29, 2016, 3:20 p.m., Sowmya Ramesh wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/50620/
> -----------------------------------------------------------
> 
> (Updated July 29, 2016, 3:20 p.m.)
> 
> 
> Review request for Sqoop.
> 
> 
> Bugs: SQOOP-2990
>     https://issues.apache.org/jira/browse/SQOOP-2990
> 
> 
> Repository: sqoop-trunk
> 
> 
> Description
> -------
> 
> Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index
> 
> MR job fails with
> 
> org.apache.hadoop.mapred.TaskAttemptListenerImpl: Progress of TaskAttempt attempt_1464136533286_0050_m_000000_0 is : 0.0
> 2016-05-25 01:35:29,288 FATAL [IPC Server handler 8 on 47839] org.apache.hadoop.mapred.TaskAttemptListenerImpl: Task: attempt_1464136533286_0050_m_000000_0 - exited : java.io.IOException: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:197)
> 	at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.close(MapTask.java:670)
> 	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
> 	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.security.auth.Subject.doAs(Subject.java:415)
> 	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1724)
> 	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
> Caused by: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:1821)
> 	at oracle.jdbc.driver.OraclePreparedStatement.addBatch(OraclePreparedStatement.java:10010)
> 	at oracle.jdbc.driver.OraclePreparedStatementWrapper.addBatch(OraclePreparedStatementWrapper.java:1358)
> 	at org.apache.sqoop.mapreduce.UpdateOutputFormat$UpdateRecordWriter.getPreparedStatement(UpdateOutputFormat.java:174)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.execUpdate(AsyncSqlRecordWriter.java:153)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:194)
> 	... 8 more
> 
> 
> Diffs
> -----
> 
>   src/java/org/apache/sqoop/mapreduce/OracleUpsertOutputFormat.java f79aaa9 
> 
> Diff: https://reviews.apache.org/r/50620/diff/
> 
> 
> Testing
> -------
> 
> Manual testing
> 
> 
> Thanks,
> 
> Sowmya Ramesh
> 
>


Re: Review Request 50620: Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index

Posted by lin peng <li...@126.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50620/#review149957
-----------------------------------------------------------



update the class  org.apache.sqoop.mapreduce.OracleUpsertOutputFormat ,the method  getUpdateStatement()

 Set<String> updateKeyLookup = new LinkedHashSet<String>();
      for (String updateKey : updateCols) {
        updateKeyLookup.add(OracleUtils.escapeIdentifier(updateKey));
      }

- lin peng


On \u4e03\u6708 29, 2016, 10:20 p.m., Sowmya Ramesh wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/50620/
> -----------------------------------------------------------
> 
> (Updated \u4e03\u6708 29, 2016, 10:20 p.m.)
> 
> 
> Review request for Sqoop.
> 
> 
> Bugs: SQOOP-2990
>     https://issues.apache.org/jira/browse/SQOOP-2990
> 
> 
> Repository: sqoop-trunk
> 
> 
> Description
> -------
> 
> Sqoop(oracle) export [updateTableToOracle] with "--update-mode allowinsert" : app fails with java.sql.SQLException: Missing IN or OUT parameter at index
> 
> MR job fails with
> 
> org.apache.hadoop.mapred.TaskAttemptListenerImpl: Progress of TaskAttempt attempt_1464136533286_0050_m_000000_0 is : 0.0
> 2016-05-25 01:35:29,288 FATAL [IPC Server handler 8 on 47839] org.apache.hadoop.mapred.TaskAttemptListenerImpl: Task: attempt_1464136533286_0050_m_000000_0 - exited : java.io.IOException: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:197)
> 	at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.close(MapTask.java:670)
> 	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
> 	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.security.auth.Subject.doAs(Subject.java:415)
> 	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1724)
> 	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
> Caused by: java.sql.SQLException: Missing IN or OUT parameter at index:: 13
> 	at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:1821)
> 	at oracle.jdbc.driver.OraclePreparedStatement.addBatch(OraclePreparedStatement.java:10010)
> 	at oracle.jdbc.driver.OraclePreparedStatementWrapper.addBatch(OraclePreparedStatementWrapper.java:1358)
> 	at org.apache.sqoop.mapreduce.UpdateOutputFormat$UpdateRecordWriter.getPreparedStatement(UpdateOutputFormat.java:174)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.execUpdate(AsyncSqlRecordWriter.java:153)
> 	at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.close(AsyncSqlRecordWriter.java:194)
> 	... 8 more
> 
> 
> Diffs
> -----
> 
>   src/java/org/apache/sqoop/mapreduce/OracleUpsertOutputFormat.java f79aaa9 
> 
> Diff: https://reviews.apache.org/r/50620/diff/
> 
> 
> Testing
> -------
> 
> Manual testing
> 
> 
> Thanks,
> 
> Sowmya Ramesh
> 
>