----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/39581/#review103845 -----------------------------------------------------------
Ship it! Ship It! - Jarek Cecho On Oct. 23, 2015, 6:24 a.m., Dian Fu wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/39581/ > ----------------------------------------------------------- > > (Updated Oct. 23, 2015, 6:24 a.m.) > > > Review request for Sqoop. > > > Bugs: SQOOP-2632 > https://issues.apache.org/jira/browse/SQOOP-2632 > > > Repository: sqoop-sqoop2 > > > Description > ------- > > Each SqoopMapper will process one SqoopSplit. SqoopSplit is instantiated by > the MR framework. Let's suppose that MR framework loads SqoopSplit with > classloader A. As SqoopSplit has one field partition, so when SqoopSplit is > loaded by classloader A, class Partition will also be loaded by classloader A > and field partition will be of type A.Partition. > In SqoopMapper, we will call extractor.extract(extractorContext, fromConfig, > fromJob, partition). To provide classpath isolation, we will load class > Extractor with a custom classloader B, so class Partition in Extractor will > be loaded by classloader B. This will cause type miss-match between > A.Partition and B.Partition when we call extractor.extract(extractorContext, > fromConfig, fromJob, partition. > To solve this issue, we need to make sure class Partition not be loaded by > the custom classloader B. To achieve this, we need firstly provide a > mechanism to let SqoopMapper know the class name of Partition. > > > Diffs > ----- > > > connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java > 113465a > > connector/connector-hdfs/src/main/java/org/apache/sqoop/connector/hdfs/HdfsConnector.java > 7e7c022 > > connector/connector-kite/src/main/java/org/apache/sqoop/connector/kite/KiteConnector.java > ca860b1 > connector/connector-sdk/src/main/java/org/apache/sqoop/job/etl/From.java > e9d2abe > > execution/mapreduce/src/main/java/org/apache/sqoop/execution/mapreduce/MapreduceExecutionEngine.java > c8d210e > execution/mapreduce/src/main/java/org/apache/sqoop/job/MRJobConstants.java > b7aa8c6 > > Diff: https://reviews.apache.org/r/39581/diff/ > > > Testing > ------- > > > Thanks, > > Dian Fu > >
