From 3d39962dfabe0b2876cf892dfa5591b7cf36a9ed Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Fri, 22 Jul 2011 20:03:22 +0000 Subject: [PATCH] MAPREDUCE-705. User-configurable quote and delimiter characters for Sqoop records and record reparsing. Contributed by Aaron Kimball. From: Thomas White git-svn-id: https://svn.apache.org/repos/asf/incubator/sqoop/trunk@1149818 13f79535-47bb-0310-9956-ffa450edef68 --- build.xml | 5 + .../apache/hadoop/sqoop/ImportOptions.java | 283 +++++++++++- .../hadoop/sqoop/hive/TableDefWriter.java | 7 +- .../hadoop/sqoop/lib/FieldFormatter.java | 96 ++++ .../apache/hadoop/sqoop/lib/RecordParser.java | 353 ++++++++++++++ .../apache/hadoop/sqoop/lib/SqoopRecord.java | 39 ++ .../sqoop/manager/LocalMySQLManager.java | 433 +++++++++++++++--- .../apache/hadoop/sqoop/mapred/ImportJob.java | 15 +- .../sqoop/mapred/RawKeyTextOutputFormat.java | 105 +++++ .../apache/hadoop/sqoop/orm/ClassWriter.java | 166 ++++++- .../apache/hadoop/sqoop/util/FileListing.java | 24 + .../util/LoggingStreamHandlerFactory.java | 10 +- .../sqoop/util/NullStreamHandlerFactory.java | 10 +- .../hadoop/sqoop/util/PerfCounters.java | 131 ++++++ .../sqoop/util/StreamHandlerFactory.java | 6 + .../org/apache/hadoop/sqoop/AllTests.java | 7 + .../hadoop/sqoop/TestImportOptions.java | 187 ++++++++ .../apache/hadoop/sqoop/TestMultiCols.java | 2 - .../org/apache/hadoop/sqoop/TestOrderBy.java | 6 +- .../org/apache/hadoop/sqoop/TestWhere.java | 10 +- .../hadoop/sqoop/hive/TestHiveImport.java | 35 +- .../hadoop/sqoop/lib/TestFieldFormatter.java | 143 ++++++ .../hadoop/sqoop/lib/TestRecordParser.java | 356 ++++++++++++++ .../hadoop/sqoop/manager/LocalMySQLTest.java | 61 ++- .../hadoop/sqoop/manager/MySQLAuthTest.java | 1 + .../hadoop/sqoop/orm/TestParseMethods.java | 186 ++++++++ .../sqoop/testutil/ImportJobTestCase.java | 6 +- .../hadoop/sqoop/testutil/ReparseMapper.java | 107 +++++ testdata/hive/scripts/customDelimImport.q | 2 + testdata/hive/scripts/dateImport.q | 2 +- testdata/hive/scripts/failingImport.q | 2 +- testdata/hive/scripts/normalImport.q | 2 +- testdata/hive/scripts/numericImport.q | 2 +- 33 files changed, 2670 insertions(+), 130 deletions(-) create mode 100644 src/java/org/apache/hadoop/sqoop/lib/FieldFormatter.java create mode 100644 src/java/org/apache/hadoop/sqoop/lib/RecordParser.java create mode 100644 src/java/org/apache/hadoop/sqoop/lib/SqoopRecord.java create mode 100644 src/java/org/apache/hadoop/sqoop/mapred/RawKeyTextOutputFormat.java create mode 100644 src/java/org/apache/hadoop/sqoop/util/PerfCounters.java create mode 100644 src/test/org/apache/hadoop/sqoop/TestImportOptions.java create mode 100644 src/test/org/apache/hadoop/sqoop/lib/TestFieldFormatter.java create mode 100644 src/test/org/apache/hadoop/sqoop/lib/TestRecordParser.java create mode 100644 src/test/org/apache/hadoop/sqoop/orm/TestParseMethods.java create mode 100644 src/test/org/apache/hadoop/sqoop/testutil/ReparseMapper.java create mode 100644 testdata/hive/scripts/customDelimImport.q diff --git a/build.xml b/build.xml index c1f7caae..2ee8ba49 100644 --- a/build.xml +++ b/build.xml @@ -29,6 +29,7 @@ to call at top-level: ant deploy-contrib compile-core-test + @@ -59,6 +60,10 @@ to call at top-level: ant deploy-contrib compile-core-test + + +