----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/66361/#review201189 -----------------------------------------------------------
src/java/org/apache/sqoop/hive/HiveClientFactory.java Lines 54 (patched) <https://reviews.apache.org/r/66361/#comment282293> I think you mentioned that this is package-private visibility so it can be used in testing. You could consider using the org.assertj.core.util.VisibleForTesting annotation as well, though I'm not sure if that's actually better or worse. src/java/org/apache/sqoop/hive/HiveServer2Client.java Lines 88 (patched) <https://reviews.apache.org/r/66361/#comment282307> Why not put this into a finally statement? No need to clean up after error? src/java/org/apache/sqoop/tool/BaseSqoopTool.java Lines 136 (patched) <https://reviews.apache.org/r/66361/#comment282309> I'm fine with abbreviations, however these might confuse those reading the code in the long run. It would make it easier for newbies to onboard and help less profficient users to understand what a command means if we weren't using them. So, we might want to follow the convention of not using abbreviations in the names of fields, constants, methods, etc. What is your opinion? This might be a good quesiton for the community as well, as we don't really have coding guidelines. src/java/org/apache/sqoop/tool/BaseSqoopTool.java Line 1854 (original), 1886-1904 (patched) <https://reviews.apache.org/r/66361/#comment282310> Nice validation! You could consider extracting two helper methods here, I believe: - validateAllOptionsAreSet(SqoopOption, List<String> optionkeys) throws InvalidOptionsException - validateOnlyOneisSet(SqoopOption, List<String> optionkeys) throws InvalidOptionsException or something similar... It would help validators reuse your nice error messages in the future! - Fero Szabo On April 16, 2018, 9:12 a.m., Szabolcs Vasas wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/66361/ > ----------------------------------------------------------- > > (Updated April 16, 2018, 9:12 a.m.) > > > Review request for Sqoop. > > > Bugs: SQOOP-3309 > https://issues.apache.org/jira/browse/SQOOP-3309 > > > Repository: sqoop-trunk > > > Description > ------- > > This JIRA covers the implementation of the client for HiveServer2 and its > integration into the classes which use HiveImport. > > - HiveClient interface is introduced with 2 implementation: > - HiveImport: this is the original implementation which uses HiveCLI > - HiveServer2Client: the new clients which connects to HS2 using JDBC > connection > - The common code is extracted to HiveCommon class > - HiveClient should be instantiated using HiveClientFactory which creates and > configures the right HiveClient based on the configuration in SqoopOptions > - HiveMiniCluster is introduced with a couple of helper classes to enable > end-to-end HS2 tests > - A couple of new options are added to SqoopOptions to be able to configure > the connection to HS2 > - Validation is implemented for these new options > > > Diffs > ----- > > build.xml 7f68b573c65a61150ca78d158084586c87775d84 > ivy.xml 6be4fa20fbbf1f303c69d86942b1874e18a14afc > src/docs/user/hive-args.txt 441f54e8e0cee63595937f4e1811abc2d89f9237 > src/docs/user/hive.txt 3dc8bb463d602d525fe5f2d07d52cb97efcbab7e > src/java/org/apache/sqoop/SqoopOptions.java > 651cebd69ee7e75d06c75945e3607c4fab7eb11c > src/java/org/apache/sqoop/hive/HiveClient.java PRE-CREATION > src/java/org/apache/sqoop/hive/HiveClientCommon.java PRE-CREATION > src/java/org/apache/sqoop/hive/HiveClientFactory.java PRE-CREATION > src/java/org/apache/sqoop/hive/HiveImport.java > c2729119d31f7e585f204f2d31b2051eea71b72b > src/java/org/apache/sqoop/hive/HiveServer2Client.java PRE-CREATION > src/java/org/apache/sqoop/hive/HiveServer2ConnectionFactory.java > PRE-CREATION > src/java/org/apache/sqoop/hive/TableDefWriter.java > b7a25b7809e0d50166966a77161dc8ff603fb2d2 > src/java/org/apache/sqoop/tool/BaseSqoopTool.java > b02e4fe7fda25c7f8171c7db17d15a7987459687 > src/java/org/apache/sqoop/tool/CreateHiveTableTool.java > d259566180369a55d490144e6f865e728f4f2e61 > src/java/org/apache/sqoop/tool/ImportAllTablesTool.java > 18f7a0af48d972d5186e9414475e080f1eb765f3 > src/java/org/apache/sqoop/tool/ImportTool.java > e9920058858653bec7407bf7992eb6445401e813 > src/test/org/apache/sqoop/hive/TestHiveClientFactory.java PRE-CREATION > src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java PRE-CREATION > src/test/org/apache/sqoop/hive/TestHiveServer2Client.java PRE-CREATION > src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java PRE-CREATION > src/test/org/apache/sqoop/hive/TestTableDefWriter.java > 8bdc3beb3677312ec0ee2e612616358bca4ca838 > src/test/org/apache/sqoop/hive/minicluster/AuthenticationConfiguration.java > PRE-CREATION > src/test/org/apache/sqoop/hive/minicluster/HiveMiniCluster.java > PRE-CREATION > > src/test/org/apache/sqoop/hive/minicluster/KerberosAuthenticationConfiguration.java > PRE-CREATION > > src/test/org/apache/sqoop/hive/minicluster/NoAuthenticationConfiguration.java > PRE-CREATION > > src/test/org/apache/sqoop/hive/minicluster/PasswordAuthenticationConfiguration.java > PRE-CREATION > src/test/org/apache/sqoop/testutil/HiveServer2TestUtil.java PRE-CREATION > src/test/org/apache/sqoop/tool/TestHiveServer2OptionValidations.java > PRE-CREATION > src/test/org/apache/sqoop/tool/TestImportTool.java > 1c0cf4d863692f75bb8831e834fae47fc18b5df5 > > > Diff: https://reviews.apache.org/r/66361/diff/5/ > > > Testing > ------- > > Ran unit and third party tests suite. > > > Thanks, > > Szabolcs Vasas > >