try sqoop export -D sqoop.teradata.import.use.temporary.table=false …

that prevents you from creating temp table on TeraData

- Alex 

--
Alexander Lorenz
http://mapredit.blogspot.com

On Jan 26, 2012, at 9:55 PM, Bilung Lee wrote:

> The configuration property "sqoop.export.records.per.statement" can be used 
> to configure batch size in this case.
> 
> Have you tried Cloudera Connector for Teradata?  With the temporary tables 
> used by the connector, you may be able to get around the deadlock.
> 
> 
> On Tue, Jan 24, 2012 at 5:04 PM, Srinivas Surasani <vas...@gmail.com> wrote:
> Hi All,
> 
> I'm working on Hadoop CDH3 U0 and  Sqoop CDH3 U2. 
> 
> I'm trying to export csv files from HDFS to Teradata, it works well with 
> setting mapper to "1" ( with batch loading of 1000 records at a time ). when 
> I tried increasing the number of mappers to more than one I'm getting the 
> following error. Also, is it possible to configure batch size at the time of 
> export? 
> 
> 
>  sqoop export  --verbose --driver com.teradata.jdbc.TeraDriver --connect 
> jdbc:teradata://xxxx/database=xxxx  --username xxxxx --password xxxxx --table 
> xxxx --export-dir /user/surasani/10minutes.txt --fields-terminated-by '|' -m 
> 4 --batch
> 
> 12/01/24 16:17:21 INFO mapred.JobClient:  map 3% reduce 0%
> 12/01/24 16:17:48 INFO mapred.JobClient: Task Id : 
> attempt_201112211106_68553_m_000001_2, Status : FAILED
> java.io.IOException: java.sql.BatchUpdateException: [Teradata Database] 
> [TeraJDBC 13.00.00.07] [Error 2631] [SQLState 40001] Transaction ABORTed due 
> to DeadLock.
>         at 
> com.cloudera.sqoop.mapreduce.AsyncSqlRecordWriter.write(AsyncSqlRecordWriter.java:223)
>         at 
> com.cloudera.sqoop.mapreduce.AsyncSqlRecordWriter.write(AsyncSqlRecordWriter.java:49)
>         at 
> org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.write(MapTask.java:530)
>         at 
> org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80)
>         at 
> com.cloudera.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:82)
>         at 
> com.cloudera.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:40)
>         at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:144)
>         at 
> com.cloudera.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:189)
>         at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:646)
>         at org.apache.hadoop.mapred.MapTask.run(MapTask.java:322)
>         at org.apache.hadoop.mapred.Child$4.run(Child.java:268)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:396)
>         at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1115)
>         at org.apache.hadoop.mapred.Child.main(Child.java:262)
> Caused by: java.sql.BatchUpdateException: [Teradata Database] [TeraJDBC 
> 13.00.00.07] [Error 2631] [SQLState 40001] Transaction ABORTed due to 
> DeadLock.
>         at 
> com.teradata.jdbc.jdbc_4.util.ErrorFactory.convertToBatchUpdateException(ErrorFactory.java:116)
>         at 
> com.teradata.jdbc.jdbc_4.PreparedStatement.executeBatchDMLArray(PreparedStatement.java:149)
>         at 
> com.teradata.jdbc.jdbc_3.ifjdbc_4.TeraLocalPreparedStatement.executeBatch(TeraLocalPreparedStatement.java:299)
>         at 
> com.cloudera.sqoop.mapreduce.AsyncSqlOutputFormat$AsyncSqlExecThread.run(AsyncSqlOutputFormat.java:232)
> Caused by: com.teradata.jdbc.jdbc_4.util.JDBCException: [Teradata Database] 
> [TeraJDBC 13.00.00.07] [Error 2631] [SQLState 40001] Transaction ABORTed due 
> to DeadLock.
>         at 
> com.teradata.jdbc.jdbc_4.util.ErrorFactory.makeDatabaseSQLException(ErrorFactory.java:288)
>         at 
> com.teradata.jdbc.jdbc_4.statemachine.ReceiveInitSubState.action(ReceiveInitSubState.java:102)
>         at 
> com.teradata.jdbc.jdbc_4.statemachine.StatementReceiveState.subStateMachine(StatementReceiveState.java:285)
>         at 
> com.teradata.jdbc.jdbc_4.statemachine.StatementReceiveState.action(StatementReceiveState.java:176)
>         at 
> com.teradata.jdbc.jdbc_4.statemachine.StatementController.runBody(StatementController.java:108)
>         at 
> com.teradata.jdbc.jdbc_4.statemachine.PreparedBatchStatementController.run(PreparedBatchStatementController.java:59)
>         at 
> com.teradata.jdbc.jdbc_4.Statement.executeStatement(Statement.java:331)
>         at 
> com.teradata.jdbc.jdbc_4.PreparedStatement.executeBatchDMLArray(PreparedStatement.java:138)
>         ... 2 more
>  
> 12/01/24 16:17:49 INFO mapred.JobClient:  map 4% reduce 0%
> 12/01/24 16:17:52 INFO mapred.JobClient:  map 5% reduce 0%
> 12/01/24 16:21:16 INFO mapred.JobClient: Job complete: job_201112211106_68553
> 12/01/24 16:21:16 INFO mapred.JobClient: Counters: 8
> 12/01/24 16:21:16 INFO mapred.JobClient:   Job Counters
> 12/01/24 16:21:16 INFO mapred.JobClient:     SLOTS_MILLIS_MAPS=1709245
> 12/01/24 16:21:16 INFO mapred.JobClient:     Total time spent by all reduces 
> waiting after reserving slots (ms)=0
> 12/01/24 16:21:16 INFO mapred.JobClient:     Total time spent by all maps 
> waiting after reserving slots (ms)=0
> 12/01/24 16:21:16 INFO mapred.JobClient:     Rack-local map tasks=1
> 12/01/24 16:21:16 INFO mapred.JobClient:     Launched map tasks=6
> 12/01/24 16:21:16 INFO mapred.JobClient:     Data-local map tasks=3
> 12/01/24 16:21:16 INFO mapred.JobClient:     SLOTS_MILLIS_REDUCES=0
> 12/01/24 16:21:16 INFO mapred.JobClient:     Failed map tasks=1
> 12/01/24 16:21:16 INFO mapreduce.ExportJobBase: Transferred 0 bytes in 
> 862.1506 seconds (0 bytes/sec)
> 12/01/24 16:21:16 INFO mapreduce.ExportJobBase: Exported 0 records.
> 12/01/24 16:21:16 ERROR tool.ExportTool: Error during export: Export job 
> failed!
> 
> 
> Thanks,
> Srinivas 
> 

Reply via email to