Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Sqoop >> mail # dev >> Review Request: SQOOP-864 Sqoop2: Introduce ETL context objects


Copy link to this message
-
Re: Review Request: SQOOP-864 Sqoop2: Introduce ETL context objects

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/9311/
-----------------------------------------------------------

(Updated Feb. 10, 2013, 8:47 p.m.)
Review request for Sqoop.
Changes
-------

Fixing missing one change.
Description
-------

This patch seems to be quite enormous, but the logic is fairly simple. I've created family of Context classes - one parent ActorContext and than for each ETL separate child. My reasoning is that each ETL class needs different set of arguments and thus should have it's own Context class. Then I've went and fix all implementations of the ETL classes to conform with the changes.

Each context class is wrapping all parameters in a generic and extensible way. The only parameters that are not part of the Context objects are configuration objects. I wanted to move them into Context classes as well, but that did not work well with the generics, so I kept them separate.
This addresses bug SQOOP-864.
    https://issues.apache.org/jira/browse/SQOOP-864
Diffs (updated)
-----

  common/src/main/java/org/apache/sqoop/etl/io/DataReader.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/etl/io/DataWriter.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/ActorContext.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/DestroyerContext.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/ExtractorContext.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/InitializerContext.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/LoaderContext.java PRE-CREATION
  common/src/main/java/org/apache/sqoop/job/etl/PartitionerContext.java PRE-CREATION
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExportDestroyer.java 2d53bdd0715de86d92ef5286855c8805301caadd
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExportInitializer.java 06fbc519ab46ea01087e93398292a749b70630e2
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExportLoader.java 5f8e129d43f208a434527edfb771daf67bdf98af
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcImportDestroyer.java f7043ea2bd53409514ac7eb5197f65a076f683b9
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcImportExtractor.java 9db332865f1fcd7e21c48d3fad0c38d2a9f7fb8d
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcImportInitializer.java a509e2b6dc1b936f9988865cbe44610d77674ee6
  connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcImportPartitioner.java b5dbc6168093f277de557051fee0afc6c2386c6c
  connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExportInitializer.java c876780d076add6f6644bd2ab7ecb403676328c0
  connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExportLoader.java 5892cbbe03bd771f8f92cb21a722e4f6607e8107
  connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestImportExtractor.java 0be713e81de7ef522b55b1e8d63483cbb9db318e
  connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestImportInitializer.java f3c1d90efacb3ba5790e9b216cddb7a7e7bae65c
  connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestImportPartitioner.java 77c47398ff3e046a2405765fb3abfb929b8704f4
  core/src/main/java/org/apache/sqoop/framework/FrameworkManager.java 6aab2db49e55c3152149d61f29dcf8d8a3f95ba5
  execution/mapreduce/src/main/java/org/apache/sqoop/job/etl/HdfsExportPartitioner.java 71e00606d05fdaa91394f9da954321c2c58a02ab
  execution/mapreduce/src/main/java/org/apache/sqoop/job/etl/HdfsSequenceExportExtractor.java 45b616678f95737a89ec5c46b589187752123a22
  execution/mapreduce/src/main/java/org/apache/sqoop/job/etl/HdfsSequenceImportLoader.java a5d6b9ca0510a2c1e0d334dacddbba8866bcc325
  execution/mapreduce/src/main/java/org/apache/sqoop/job/etl/HdfsTextExportExtractor.java ed30c91c57f383224138276ddf7e85405d5e0240
  execution/mapreduce/src/main/java/org/apache/sqoop/job/etl/HdfsTextImportLoader.java 490b1c213ae4fa5e3860c49a551ba7a3c5372407
  execution/mapreduce/src/main/java/org/apache/sqoop/job/mr/SqoopDestroyerExecutor.java f4ef95ad8caf3e82f6860d134f87694bbcc20484
  execution/mapreduce/src/main/java/org/apache/sqoop/job/mr/SqoopInputFormat.java d191e038a863a64c180403d593d5b0835f3232fa
  execution/mapreduce/src/main/java/org/apache/sqoop/job/mr/SqoopMapper.java ce847f41b6d67aaa972816fa94dda3cbbd6a49ff
  execution/mapreduce/src/main/java/org/apache/sqoop/job/mr/SqoopOutputFormatLoadExecutor.java c5f3abdd560474a624d909754b3abd05c0e538a2
  execution/mapreduce/src/test/java/org/apache/sqoop/job/TestHdfsExtract.java dbd1bbfaaeb0920202b2ba66d9b70ea316b4aaea
  execution/mapreduce/src/test/java/org/apache/sqoop/job/TestHdfsLoad.java 6e1c9588975aa40aaee202f543d7f4a73be03c37
  execution/mapreduce/src/test/java/org/apache/sqoop/job/TestMapReduce.java 427132e20bb68b1c7e20f390f6edfa3277fbff3f
  execution/mapreduce/src/test/java/org/apache/sqoop/job/mr/TestSqoopOutputFormatLoadExecutor.java 1a300aeb1d2a848993e3bce690aad906127ee14e
  spi/src/main/java/org/apache/sqoop/job/etl/Destroyer.java cf2ed9acb1463f0dfbe8660d853c7d4ac80a8124
  spi/src/main/java/org/apache/sqoop/job/etl/Extractor.java 300cf4eb4e89f7855344934feca66962c850d850
  spi/src/main/java/org/apache/sqoop/job/etl/Initializer.java 3fb6be03c2e3c989052dc23a9d831cc8d72af1da
  spi/src/main/java/org/apache/sqoop/job/etl/Loader.java 024be9453c4202a17a8eaabead14c845b71975fd
  spi/src/main/java/org/apache/sqoop/job/etl/Partitioner.java bfb4bf29fc5122f2aea11a6cb2059fb6f7eaa229
  spi/src/main/java/org/apache/sqoop/job/io/DataReader.java a50f59108cf2af3520ca2119e8123a083eb4b