You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sqoop.apache.org by "Attila Szabo (JIRA)" <ji...@apache.org> on 2018/02/02 00:33:00 UTC

[jira] [Commented] (SQOOP-3277) Sqoop from Oracle RDB database is failing with exception SQLException in nextKeyValue

    [ https://issues.apache.org/jira/browse/SQOOP-3277?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16349582#comment-16349582 ] 

Attila Szabo commented on SQOOP-3277:
-------------------------------------

Hi Chaitanya,

From the stack trace it seems the Oracle closed the connection/resultset (End of TNS data channel) by some reason which is quite unknown for us from these information, and also very much unrelated to the Sqoop codebase.

Though I've got some ideas you should check:

The stability/reliability of your network between the Sqoop cluster and your Oracle RDBMS.

The timeout settings/values in your database.

 

As this issue doesn't seem to be Sqoop related I'm closing it.

 

Kind regards,

Attila

> Sqoop from Oracle RDB database is failing with exception SQLException in nextKeyValue
> -------------------------------------------------------------------------------------
>
>                 Key: SQOOP-3277
>                 URL: https://issues.apache.org/jira/browse/SQOOP-3277
>             Project: Sqoop
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 1.4.6
>         Environment: Production :
> Sqoop from Oracle RDB database is failing with exception SQLException in nextKeyValue
> Sqoop from Oracle RDB database is failing with exception SQLException in nextKeyValue. Below is the error log
> 17/12/22 11:20:35 INFO Configuration.deprecation: mapred.job.queue.name is deprecated. Instead, use mapreduce.job.queuename
> 17/12/22 11:20:35 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1512111796128_818880
> 17/12/22 11:20:35 INFO security.ExternalTokenManagerFactory: Initialized external token manager class - com.mapr.hadoop.yarn.security.MapRTicketManager
> 17/12/22 11:20:35 INFO impl.YarnClientImpl: Submitted application application_1512111796128_818880
> 17/12/22 11:20:35 INFO mapreduce.Job: The url to track the job: https://dbsld0069.uhc.com:8090/proxy/application_1512111796128_818880/
> 17/12/22 11:20:35 INFO mapreduce.Job: Running job: job_1512111796128_818880
> 17/12/22 11:20:43 INFO mapreduce.Job: Job job_1512111796128_818880 running in uber mode : false
> 17/12/22 11:20:43 INFO mapreduce.Job:  map 0% reduce 0%
> 17/12/22 15:13:18 INFO mapreduce.Job: Task Id : attempt_1512111796128_818880_m_000000_0, Status : FAILED
> 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:565)
> 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:145)
> at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64)
> at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:796)
> at org.apache.hadoop.mapred.MapTask.run(MapTask.java:346)
> 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:1595)
> at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
> Caused by: java.sql.SQLRecoverableException: IO Error: End of TNS data channel
> at oracle.jdbc.driver.T4CPreparedStatement.fetch(T4CPreparedStatement.java:1128)
> at oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:373)
> at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:277)
> at org.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue(DBRecordReader.java:237)
> ... 12 more
> Caused by: oracle.net.ns.NetException: End of TNS data channel
> at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:308)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:260)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:185)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:102)
> at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:124)
> at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:80)
> at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1137)
> at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:290)
> at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
> at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
> at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
> at oracle.jdbc.driver.T4CPreparedStatement.fetch(T4CPreparedStatement.java:1119)
> ... 15 more
>  
>  
> --> Database from which we are sqooping data is Oracle RDB. We have tried out different work arounds.
> 1. Mapping all the columns to String while sqooping
> 2. Handling the Date/timestamp fields i.e, mapping 0000-00-00 value as null while sqooping.
> This work around successfully sqooped most of the tables but still we are facing the exception for few tables.
> Does any one came across this issue whie sqooping? Could you please provide any suggestions/help on how to resolve this
>            Reporter: Chaitanya Krishna Kande
>            Assignee: Attila Szabo
>            Priority: Blocker
>
> Sqoop from Oracle RDB database is failing with exception SQLException in nextKeyValue. Below is the error log
> 17/12/22 11:20:35 INFO Configuration.deprecation: mapred.job.queue.name is deprecated. Instead, use mapreduce.job.queuename
> 17/12/22 11:20:35 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1512111796128_818880
> 17/12/22 11:20:35 INFO security.ExternalTokenManagerFactory: Initialized external token manager class - com.mapr.hadoop.yarn.security.MapRTicketManager
> 17/12/22 11:20:35 INFO impl.YarnClientImpl: Submitted application application_1512111796128_818880
> 17/12/22 11:20:35 INFO mapreduce.Job: The url to track the job: https://dbsld0069.uhc.com:8090/proxy/application_1512111796128_818880/
> 17/12/22 11:20:35 INFO mapreduce.Job: Running job: job_1512111796128_818880
> 17/12/22 11:20:43 INFO mapreduce.Job: Job job_1512111796128_818880 running in uber mode : false
> 17/12/22 11:20:43 INFO mapreduce.Job:  map 0% reduce 0%
> 17/12/22 15:13:18 INFO mapreduce.Job: Task Id : attempt_1512111796128_818880_m_000000_0, Status : FAILED
> 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:565)
> 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:145)
> at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64)
> at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:796)
> at org.apache.hadoop.mapred.MapTask.run(MapTask.java:346)
> 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:1595)
> at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
> Caused by: java.sql.SQLRecoverableException: IO Error: End of TNS data channel
> at oracle.jdbc.driver.T4CPreparedStatement.fetch(T4CPreparedStatement.java:1128)
> at oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:373)
> at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:277)
> at org.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue(DBRecordReader.java:237)
> ... 12 more
> Caused by: oracle.net.ns.NetException: End of TNS data channel
> at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:308)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:260)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:185)
> at oracle.net.ns.NetInputStream.read(NetInputStream.java:102)
> at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:124)
> at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:80)
> at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1137)
> at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:290)
> at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
> at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
> at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
> at oracle.jdbc.driver.T4CPreparedStatement.fetch(T4CPreparedStatement.java:1119)
> ... 15 more
>  
>  
> --> Database from which we are sqooping data is Oracle RDB. We have tried out different work arounds.
> 1. Mapping all the columns to String while sqooping
> 2. Handling the Date/timestamp fields i.e, mapping 0000-00-00 value as null while sqooping.
> This work around successfully sqooped most of the tables but still we are facing the exception for few tables.
> Does any one came across this issue whie sqooping? Could you please provide any suggestions/help on how to resolve this



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)