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); } } }