From 3bbb4a63140aa6c35a1062fe97be6daefda24af1 Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Fri, 22 Jul 2011 20:04:32 +0000 Subject: [PATCH] SQOOP-170. Capturing causal exception for logging. From: Arvind Prabhakar git-svn-id: https://svn.apache.org/repos/asf/incubator/sqoop/trunk@1150024 13f79535-47bb-0310-9956-ffa450edef68 --- .../com/cloudera/sqoop/mapreduce/db/DBInputFormat.java | 2 +- .../com/cloudera/sqoop/mapreduce/db/DBOutputFormat.java | 8 ++++---- .../com/cloudera/sqoop/mapreduce/db/DBRecordReader.java | 2 +- .../sqoop/mapreduce/db/DataDrivenDBInputFormat.java | 4 ++-- .../sqoop/mapreduce/db/OracleDataDrivenDBInputFormat.java | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/java/com/cloudera/sqoop/mapreduce/db/DBInputFormat.java b/src/java/com/cloudera/sqoop/mapreduce/db/DBInputFormat.java index 9c8dc8ec..76086c7a 100644 --- a/src/java/com/cloudera/sqoop/mapreduce/db/DBInputFormat.java +++ b/src/java/com/cloudera/sqoop/mapreduce/db/DBInputFormat.java @@ -215,7 +215,7 @@ conf, getConnection(), getDBConf(), conditions, fieldNames, tableName); } } catch (SQLException ex) { - throw new IOException(ex.getMessage()); + throw new IOException(ex); } } diff --git a/src/java/com/cloudera/sqoop/mapreduce/db/DBOutputFormat.java b/src/java/com/cloudera/sqoop/mapreduce/db/DBOutputFormat.java index a74f9b20..3107fcea 100644 --- a/src/java/com/cloudera/sqoop/mapreduce/db/DBOutputFormat.java +++ b/src/java/com/cloudera/sqoop/mapreduce/db/DBOutputFormat.java @@ -98,13 +98,13 @@ public void close(TaskAttemptContext context) throws IOException { } catch (SQLException ex) { LOG.warn(StringUtils.stringifyException(ex)); } - throw new IOException(e.getMessage()); + throw new IOException(e); } finally { try { statement.close(); connection.close(); } catch (SQLException ex) { - throw new IOException(ex.getMessage()); + LOG.error("Unable to close connection", ex); } } } @@ -116,7 +116,7 @@ public void write(K key, V value) throws IOException { key.write(statement); statement.addBatch(); } catch (SQLException e) { - e.printStackTrace(); + LOG.error("Exception encountered", e); } } } @@ -181,7 +181,7 @@ public RecordWriter getRecordWriter(TaskAttemptContext context) constructQuery(tableName, fieldNames)); return new DBRecordWriter(connection, statement); } catch (Exception ex) { - throw new IOException(ex.getMessage()); + throw new IOException(ex); } } diff --git a/src/java/com/cloudera/sqoop/mapreduce/db/DBRecordReader.java b/src/java/com/cloudera/sqoop/mapreduce/db/DBRecordReader.java index 3c80e3ff..9b92ecb3 100644 --- a/src/java/com/cloudera/sqoop/mapreduce/db/DBRecordReader.java +++ b/src/java/com/cloudera/sqoop/mapreduce/db/DBRecordReader.java @@ -165,7 +165,7 @@ public void close() throws IOException { connection.close(); } } catch (SQLException e) { - throw new IOException(e.getMessage()); + throw new IOException(e); } } diff --git a/src/java/com/cloudera/sqoop/mapreduce/db/DataDrivenDBInputFormat.java b/src/java/com/cloudera/sqoop/mapreduce/db/DataDrivenDBInputFormat.java index 06fb3b74..ebffebf9 100644 --- a/src/java/com/cloudera/sqoop/mapreduce/db/DataDrivenDBInputFormat.java +++ b/src/java/com/cloudera/sqoop/mapreduce/db/DataDrivenDBInputFormat.java @@ -198,7 +198,7 @@ public List getSplits(JobContext job) throws IOException { return splitter.split(job.getConfiguration(), results, getDBConf().getInputOrderBy()); } catch (SQLException e) { - throw new IOException(e.getMessage()); + throw new IOException(e); } finally { // More-or-less ignore SQL exceptions here, but log in case we need it. try { @@ -293,7 +293,7 @@ conf, getConnection(), dbConf, dbConf.getInputConditions(), dbConf.getInputFieldNames(), dbConf.getInputTableName(), dbProductName); } catch (SQLException ex) { - throw new IOException(ex.getMessage()); + throw new IOException(ex); } } diff --git a/src/java/com/cloudera/sqoop/mapreduce/db/OracleDataDrivenDBInputFormat.java b/src/java/com/cloudera/sqoop/mapreduce/db/OracleDataDrivenDBInputFormat.java index 9ca66b81..5642b9b5 100644 --- a/src/java/com/cloudera/sqoop/mapreduce/db/OracleDataDrivenDBInputFormat.java +++ b/src/java/com/cloudera/sqoop/mapreduce/db/OracleDataDrivenDBInputFormat.java @@ -65,7 +65,7 @@ protected RecordReader createDBRecordReader( conf, getConnection(), dbConf, dbConf.getInputConditions(), dbConf.getInputFieldNames(), dbConf.getInputTableName()); } catch (SQLException ex) { - throw new IOException(ex.getMessage()); + throw new IOException(ex); } } }