SQOOP-2772: Sqoop2: Remove the notion of PrincipalsBean
[sqoop.git] / CHANGELOG.txt
1 Release 1.99.6
2
3   SUB-TASK
4
5     SQOOP-1528: Sqoop2: Kerberos support on DoAs function
6
7     SQOOP-1757: Sqoop2: Document generic jdbc connector
8
9     SQOOP-1961: Sqoop2: addDelegationTokens is not exposed in SqoopClient
10
11     SQOOP-1978: Sqoop2: Command line support
12
13     SQOOP-1979: Sqoop2: Rest API support
14
15     SQOOP-1998: Sqoop2: Kite Connector: Hive support
16
17     SQOOP-2016: Sqoop2: Create integration test for JDBC to Hive
18
19     SQOOP-2019: Sqoop2: Handle post-function for updating/deleting resource
20
21     SQOOP-2079: Sqoop2: Remove useless functions for RBAC
22
23     SQOOP-2080: Sqoop2: Combine privileges into READ and WRITE
24
25     SQOOP-2092: Support for LONG in MInputType
26
27     SQOOP-2094: Sqoop2: Update RESTAPI.rst
28
29     SQOOP-2101: Sqoop2: Add SqoopClient support to call Restful API
30
31     SQOOP-2139: Sqoop2: Change create role API from PUT to POST
32
33     SQOOP-2144: Sqoop2: Show command for CLI
34
35     SQOOP-2146: Sqoop2: Sqoop client should return model objects for RBAC methods
36
37     SQOOP-2148: Sqoop2: Fix wrong input sequence of name and type in function new Principal and Resource
38
39     SQOOP-2160: Sqoop2: Datatypes: Provide foundation for the exhaustive type checks
40
41     SQOOP-2166: Sqoop2: Add "Authorization Exception" error code in SecurityError.java
42
43     SQOOP-2183: Sqoop2: Change resource type, privilege action and principal type from String to Enum.
44
45     SQOOP-2184: Sqoop2: Add ServerName for authorization handler
46
47     SQOOP-2198: Sqoop2: Datatypes: Add boolean/char/date support to DerbyTypeList
48
49     SQOOP-2204: Sanitize issues
50
51     SQOOP-2205: Cut 1.99.6 branch
52
53     SQOOP-2206: Update change log with 1.99.6 release
54
55     SQOOP-2207: Update POM with new version
56
57     SQOOP-2208: Create release candidate
58
59     SQOOP-2209: Run vote on RC candidates
60
61     SQOOP-2210: Release artifacts
62
63     SQOOP-2211: Finish release
64
65     SQOOP-2212: Update website
66
67     SQOOP-2220: Sqoop2: Fix the privilege check on job using the link id not the connector id 
68
69     SQOOP-2226: Sqoop2: Access denied in shell
70
71     SQOOP-2227: Sqoop2: Clear connector cache in ShowConnectorFunction.java
72
73     SQOOP-2246: Sqoop2: Use jdbcProperties when creating database connection in GenericJDBCExecutor
74
75     SQOOP-2248: Sqoop2: ErrorCodes: Move ServerError to server module
76
77     SQOOP-2249: Sqoop2: ErrorCodes: Move SecurityError to core module
78
79     SQOOP-2251: Sqoop2: ErrorCodes: Move RepositoryError to core module
80
81     SQOOP-2255: Sqoop2: Throw Exception when no permission to the resource
82
83     SQOOP-2256: Sqoop2: Creator should have access to its entities
84
85     SQOOP-2304: Update license file
86
87     SQOOP-2313: Update change log with 1.99.6 release for RC-1
88
89     SQOOP-2314: Create release candidate for RC-1
90
91     SQOOP-2315: Run vote on RC candidates for RC-1
92
93   BUG
94
95     SQOOP-1439: Sqoop2: Refactor validations
96
97     SQOOP-1516: Sqoop2: Config Input as a Top Level Entity - RepositoryAPI changes
98
99     SQOOP-1577: Sqoop2: Refactor repository dump and load tools
100
101     SQOOP-1579: Sqoop2: Data transfer to load into Hive does not work
102
103     SQOOP-1738: Sqoop2: HDFS Connector : Check for output directory
104
105     SQOOP-1746: Sqoop2: Mapreduce job is running in DEBUG mode by default
106
107     SQOOP-1790: Sqoop2: Upgrade configs with name conflicts
108
109     SQOOP-1808: Add Integration tests to for Incremental read / write between JDBC and HDFS
110
111     SQOOP-1841: Sqoop2: Upgrade from 1.99.1 to 1.99.4 onwards is broken
112
113     SQOOP-1868: Sqoop2: Document MySQL Fast Connector
114
115     SQOOP-1949: Sqoop2: HDFS append only support
116
117     SQOOP-2036: Sqoop2: JDBC Connector need to send BigDecimal for decimal type in Object array
118
119     SQOOP-2089: Sqoop2: Clone configuration object instead of overwriting global
120
121     SQOOP-2095: Sqoop2: Remove duplicate maven dependency org.mockito:mockito-all
122
123     SQOOP-2102: Binary tarball missing executable bit on sqoop2-* files
124
125     SQOOP-2106: Upgrade the version of Derby to 6 and Postgres to 1 in sqoop trunk
126
127     SQOOP-2117: Sqoop2: Shell command 'show link' should show connector name
128
129     SQOOP-2119: Sqoop2: Remove remaining imports from junit in PostgreSQL repository tests
130
131     SQOOP-2120: Sqoop2: Test classes using powermock fails badly when compiling with java target version 1.7
132
133     SQOOP-2122: Sqoop2: Build documentation only in binary packaging profile
134
135     SQOOP-2123: Sqoop2: Copy shell libraries only in binary package profile
136
137     SQOOP-2124: Sqoop2: Pre-Commit hook should report how many tests are executed
138
139     SQOOP-2129: Sqoop2: SQ_SUBMISSION deletes should cascade
140
141     SQOOP-2140: Sqoop2: Cast exception when try to cast an integer to Avro's Long type
142
143     SQOOP-2150: Sqoop2: Kite 1.0 don't allow dashes to be used in dataset names
144
145     SQOOP-2152: Sqoop2: Kite connector always assumes that FixedPoint is long regardless of the configured size
146
147     SQOOP-2153: Sqoop2: Ensure creation of valid Avro schema names
148
149     SQOOP-2155: Sqoop2: KiteDatasetExecutor is not cleaning up merged datasets
150
151     SQOOP-2156: Sqoop2: HdfsUtils.getOutputMapreduceFiles should ignore hidden files
152
153     SQOOP-2157: Sqoop2: Kite: Add simple integration test for TO direction
154
155     SQOOP-2158: Sqoop2: Pre-Commit hook is incorrectly counting number of executed tests
156
157     SQOOP-2159: Sqoop2: Use BeforeSuite/AfterSuite for startHadoop/stopHadoop in integration tests
158
159     SQOOP-2162: Sqoop2: InputEditable should be optional in JSON API
160
161     SQOOP-2163: Sqoop2: Remove jackson dependency
162
163     SQOOP-2167: Sqoop2: Change getUserName to getShortUserName in AuthorizationEngine.java
164
165     SQOOP-2169: Sqoop2: Kafka integration test bug
166
167     SQOOP-2171: Sqoop2: Incorrect basic type boxing with JDK1.7
168
169     SQOOP-2172: Sqoop2: Move ErrorCode's sub-class from sqoop-core to sqoop-common
170
171     SQOOP-2188: Sqoop2: Failed to merge Kite datasets
172
173     SQOOP-2190: Sqoop2: Remove hadoop200 profile from test-patch.py
174
175     SQOOP-2201: Sqoop2: Add possibility to read Hadoop configuration files to HFDS connector
176
177     SQOOP-2202: Sqoop2: Add validator to check existence of local directory on Sqoop 2 server
178
179     SQOOP-2213: Sqoop2: toCSVFixedPoint ClassCastException
180
181     SQOOP-2214: Sqoop2: Add ability to easily iterate over entries stored in Context
182
183     SQOOP-2215: Sqoop2: Remember all test logs in pre-commit hook
184
185     SQOOP-2219: Sqoop2: Skip missing input in DirectoryExistsValidator
186
187     SQOOP-2225: Sqoop2: Shell client clobbers server exceptions
188
189     SQOOP-2228: Sqoop2: HDFS Connector: Import data to temporary directory before moving them to target directory
190
191     SQOOP-2229: Sqoop2: Kite connector should handle doubles
192
193     SQOOP-2230: Sqoop2: Kite connector can use URIBuilder
194
195     SQOOP-2231: Sqoop2: Kite connector should use authority in link configuration
196
197     SQOOP-2232: Sqoop2: Test initializer against local filesystem
198
199     SQOOP-2233: Sqoop2: Move TestHdfsConnector class under test directory
200
201     SQOOP-2234: Sqoop2: Move DatasetURIValidator to Kite package as it's not generally usable validator
202
203     SQOOP-2235: Sqoop2: Move PrefixContext back to mapreduce execution engine
204
205     SQOOP-2236: Sqoop2: Drop outdated comment from SubmissionCallbacks class
206
207     SQOOP-2238: Sqoop2: Parquet jars missing
208
209     SQOOP-2239: Sqoop2: Remove Repository.updateSubmission() call from Mapreduce submission engine
210
211     SQOOP-2240: Sqoop2: Remove Hadoop 1.x example from catalina.properties
212
213     SQOOP-2241: Sqoop2: PreCommit hook is incorrectly counting number of executed tests
214
215     SQOOP-2242: Sqoop2: Add support for full table names into our DatabaseProvider infrastructure
216
217     SQOOP-2265: Sqoop2: Standardize on methods
218
219     SQOOP-2268: Sqoop2: Fix a typo in ShowLinkFunction
220
221     SQOOP-2273: Sqoop2: Move authorizationServlet into v1 package
222
223     SQOOP-2276: MapReduce execution error in Sqoop job
224
225     SQOOP-2277: Sqoop2: Add annotation for public usage classes in Sqoop Core
226
227     SQOOP-2278: Sqoop2: Fix bug for all user could read connector
228
229     SQOOP-2279: Sqoop2: Clean connector cache after grant and revoke statements
230
231     SQOOP-2307: Sqoop2: Fix a typo for hdfs-connector-config.properties and kafka-connector-config.properties
232
233     SQOOP-2308: Sqoop2: Fix a typo for hdfs-connector-config.properties and kafka-connector-config.properties
234
235     SQOOP-2309: Sqoop2: Add to link id in show job --all command
236
237     SQOOP-2310: Sqoop2: fix a typo for Hadoop conf directory
238
239     SQOOP-2327: Sqoop2: Change package name from Authorization to authorization
240
241   IMPROVEMENT
242
243     SQOOP-1805: Sqoop2: GenericJdbcConnector: Delta read support
244
245     SQOOP-2134: Update Kite dependency to 1.0.0
246
247     SQOOP-2250: Sqoop2: SQ_LINK_INPUT is missing a foreign key constraint
248
249   TASK
250
251     SQOOP-506: Create Sqoop integration test infrastructure.
252
253 Release 1.99.5
254
255   SUB-TASK
256
257     SQOOP-1348: Sqoop2: Remove Data class
258
259     SQOOP-1349: Sqoop2: Use configurable writable to get Intermediate Data Format
260
261     SQOOP-1526: Sqoop2: Kerberos support when starting service
262
263     SQOOP-1527: Sqoop2: Kerberos support (SPNEGO) in communication between server and client
264
265     SQOOP-1549: Simplifying the Configuration class concept in Connector api
266
267     SQOOP-1552: Revisit if we need a config list for the link/from/to configs in connector api
268
269     SQOOP-1588: Sqoop2: Kite connector write data to HDFS
270
271     SQOOP-1589: Sqoop2: Create common constants, error codes, and queries
272
273     SQOOP-1590: Sqoop2: PostgreSQL repository implementation
274
275     SQOOP-1591: Sqoop2: PostgreSQL integration tests
276
277     SQOOP-1592: Sqoop2: Remove Hadoop1 profile
278
279     SQOOP-1602: Sqoop2:  Fix the current balancing across Loaders internal to Sqoop 
280
281     SQOOP-1621: Sqoop2: Allow null as a dummy Schema
282
283     SQOOP-1624: Sqoop2: Apply repository upgrader api
284
285     SQOOP-1647: Sqoop2: Read data from HDFS in KiteConnector
286
287     SQOOP-1651: Sqoop2: Cleanup: Naming and ordering of methods in Repo relates classes
288
289     SQOOP-1681: DOC: Create an API doc for the Sqoop Execution engine ( since its extensible)
290
291     SQOOP-1702: Fix typo for SQOOP-1526
292
293     SQOOP-1703: Sqoop2: rename Type to Column Type + size to length + minor doc fixes
294
295     SQOOP-1706: Add IDF API doc/wiki  for the IDF interface and Schema -> ColumnTypes
296
297     SQOOP-1707: SQOOP2: Address the validate method in Column class
298
299     SQOOP-1708: Rename Unsupported Column type to Unknown and add java doc
300
301     SQOOP-1709: Column Type enhancements for complex types
302
303     SQOOP-1715: Make name for column required ( fix the corr tests)
304
305     SQOOP-1716: Add Options as a field in the Enum object ( so it can be used for validation)
306
307     SQOOP-1717: Sqoop2: Remove Data class from docs
308
309     SQOOP-1733: Port SQOOP-1728 to sqoop2 branch
310
311     SQOOP-1734: Port SQOOP-1725 to sqoop2 branch
312
313     SQOOP-1741: Port SQOOP-1736 to sqoop2 branch
314
315     SQOOP-1749: Support List Type in CSV IDF
316
317     SQOOP-1750: Support Map Type in  CSV IDF
318
319     SQOOP-1751: Sqoop2: Rearrange LinkConfig and ToJobConfig of Kite Connector
320
321     SQOOP-1752: Kite connector cannot submit CSV import job
322
323     SQOOP-1754: Sqoop2: Remove JarUtil class
324
325     SQOOP-1755: Sqoop2: Security guide
326
327     SQOOP-1761: Sqoop2: Unit tests for  different Column sub classes Array/Set and Map types 
328
329     SQOOP-1765: Sqoop2: Time/Timestamp format support for CSV IDF
330
331     SQOOP-1769: Fix Enum to no inherit from list
332
333     SQOOP-1771: Investigation CSV IDF FORMAT of the Array/NestedArray/ Set/ Map in Postgres and HIVE.
334
335     SQOOP-1776: Sqoop2: Delegation Token support for Authentication
336
337     SQOOP-1791: Sqoop2: Add simple authentication parameters to documentation
338
339     SQOOP-1796: Support Incremental Semantics in command line tool for Job
340
341     SQOOP-1797: Support Incremental semantics in the REST apis 
342
343     SQOOP-1798: Support a API/ command line utility to retrieve the last value or any JOB_OUTPUT
344
345     SQOOP-1799: Connector API : Ability for connector to indicate if its FROM and TO support incremental reading/ writing
346
347     SQOOP-1801: Delta Fetch Merge Config API : Validations for the Delta Fetch/Merge Configs
348
349     SQOOP-1804: Add editable and override attribute to inputs
350
351     SQOOP-1811: Sqoop2: IDF API changes
352
353     SQOOP-1813: Sqoop2: Add SqoopIDFUtils class and unit tests
354
355     SQOOP-1815: Sqoop2: Date and DateTime is not encoded in Single Quotes
356
357     SQOOP-1817: Sqoop2: Update CSVIntermediate BIT data type
358
359     SQOOP-1819: Support Enum in CSVIDF ( + add unit tests)
360
361     SQOOP-1825: Sqoop2: Handle NULLs for all types in CSV Intermediate Data Format
362
363     SQOOP-1829: Sqoop2: Define IDF object model
364
365     SQOOP-1834: Sqoop2: RBAC pluggable framework
366
367     SQOOP-1842: Sqoop2: Fix timestamp type casting
368
369     SQOOP-1845: Sqoop2: Make DateTime Column type support datetime with and without timezone
370
371     SQOOP-1846: Sqoop2: DateTime support in CSV IDF and iso8601
372
373     SQOOP-1849: Using JODA for datetime means we only have 3 digit millisecond representation for fraction
374
375     SQOOP-1870: Sqoop2: Merge SPI and connector-sdk packages
376
377     SQOOP-1876: Update the submission JSON in the doc (restAPI.rst)
378
379     SQOOP-1879: Sqoop2: Submission Engine does not set all details on SubmissionRecord in Local mode
380
381     SQOOP-1881: Randomize ports for Kafka integration tests
382
383     SQOOP-1897: Sqoop2: Submission Engine API change for better performance
384
385     SQOOP-1898: Change the API of getJars to use SET than LIST to avoid duplicate jars
386
387     SQOOP-1899: Minor change to CSVIDF to use Set instead of Lists
388
389     SQOOP-1900: Fix the SqoopWritable read/ write method to delegate the toIDF methods
390
391     SQOOP-1901: Sqoop2: Support DRY code in IDF impementations and add JSONIDF
392
393     SQOOP-1902: Sqoop2: Avro IDF class and unit tests
394
395     SQOOP-1903: Wrap up the design doc once implementation is done
396
397     SQOOP-1908: Sqoop2: Document external connector support
398
399     SQOOP-1909: Sqoop2: Connect security guide to main docs
400
401     SQOOP-1913: Sqoop2: Add jackson as a dependency
402
403     SQOOP-1915: sqoop2: parseCSV in CSVIDF doesn't correctly parse strings with commas
404
405     SQOOP-1925: Sqoop2: Clean up duplicate constants in DerbySchemaConstants, use CommonRepoConstants
406
407     SQOOP-1930: Sqoop2: Enforce a non empty schema name and column names
408
409     SQOOP-1931: Tech debt : Alternative to isTest flag in the SqoopOutputFormatExecutor
410
411     SQOOP-1935: Sqoop2: Fix TestSqoopWritable test and make getString and setString package private
412
413     SQOOP-1936: Sqoop2: Sort by comparing IDF data in shuffle phase
414
415     SQOOP-1937: Why need  SqoopWritable, ? why not just Text?
416
417     SQOOP-1938: DOC:update the sqoop MR engine implementation details
418
419     SQOOP-1940: Add hashcode and equals methods to SqoopWritable
420
421     SQOOP-1950: Sqoop2: Use TestNG
422
423     SQOOP-1956: Sqoop2: Cleanup IDF implementations
424
425     SQOOP-1960: Sqoop2: Share auth token across ResourceRequest in SqoopClient
426
427     SQOOP-1962: Sqoop2: Start sqoop2 minicluster on random port
428
429     SQOOP-1974:  Sqoop2: parseCSVString in SQOOPIDFUtils add more tests
430
431     SQOOP-1980: Sqoop2: Rule based rest API protection
432
433     SQOOP-1981: Sqoop2: Default implementation of RBAC in Sqoop
434
435     SQOOP-1982: Sqoop2: Provide username globally via AuthenticationProvider
436
437     SQOOP-1984: Sqoop2: Add error summary and details to PostgreSQL repository
438
439     SQOOP-1985: Sqoop2: On job delete cascade to submission
440
441     SQOOP-1988: Sqoop2: isNull handling should be moved to CSVIntermediateDataFormat
442
443     SQOOP-1991: Sqoop2: Define slow category in integration tests
444
445     SQOOP-1994: Sqoop2: Use common repository constants
446
447     SQOOP-2002: Sqoop2: Refactor existing security component
448
449     SQOOP-2004: Sqoop2: Make annotations run always
450
451     SQOOP-2012: DOC:Explain the connector project structure and relevant modules in sqoop to depend on
452
453     SQOOP-2013: What is the story for External Connectors to write unit and integration tests?
454
455     SQOOP-2015: Sqoop2: Create HBase code path in Kite connector
456
457     SQOOP-2026: Sqoop2: Make getUserName function in RequestContext support Kerberos
458
459     SQOOP-2028: add license header to TestConnectorManagerUtils
460
461     SQOOP-2064: Sqoop2: Update POM version on new 1.99.5 branch
462
463     SQOOP-2072: Sqoop2: Add editable and override attributes for postgres
464
465     SQOOP-2074: Sqoop2: Add input attributes documentation
466
467     SQOOP-2084: Sqoop2: Fix Indentation in input attributes documentation
468
469     SQOOP-2085: Sqoop2: Null handling in AuthorizationEngine
470
471     SQOOP-2096: Sqoop2: Fix typos in comments in SecurityConstants
472
473   BUG
474
475     SQOOP-1452: Sqoop2: Upgrade to Hadoop 2.5.1
476
477     SQOOP-1523: Sqoop2: Support for PostgreSQL database for hosting the sqoop entity repository
478
479     SQOOP-1572: Sqoop2: Duplicate Column Name in Multiple Tables Import
480
481     SQOOP-1604: Base/ Marker class for Config and Configuration
482
483     SQOOP-1636: Sqoop2: Add unique constraint to the SQI_INPUT name per type per config
484
485     SQOOP-1640: Sqoop2: Pull DatabaseProvider into sqoop-common-test module
486
487     SQOOP-1672: Sqoop2 import inserting null strings('null') for empty values in Oracle
488
489     SQOOP-1680:  DOC: Create an Public API doc for the Sqoop repository.
490
491     SQOOP-1695: Sqoop2: Removed hardcoded version in pom.xml of connector-sdk 
492
493     SQOOP-1705: SQOOP2: Support AVRO as a an implementation for the IDF interface
494
495     SQOOP-1713: Sqoop2: Remove SQOOP-1348.patch file
496
497     SQOOP-1730: Sqoop2: httpcore and httpclient version has not upgrade after hadoop upgraded
498
499     SQOOP-1740: Sqoop2:The sqoop.properties should say driver.autoupgrade
500
501     SQOOP-1747: Sqoop2: Provide more information for Kerberos initialization exception
502
503     SQOOP-1748: Sqoop2: Client throws NPE when misconfigured for Kerberos
504
505     SQOOP-1773: Sqoop2: ClassAvailable validator null handling
506
507     SQOOP-1774: Sqoop2: Allow anonymous authentication
508
509     SQOOP-1775: Sqoop2: Migrate to URL parameter user.name instead of using header
510
511     SQOOP-1777: Sqoop2: Add integration tests to Pre-Commit build
512
513     SQOOP-1778: Sqoop2: Increase default memory allocations for tests
514
515     SQOOP-1782: Sqoop2: Get submissions per job
516
517     SQOOP-1783: Sqoop2: Create derby integration upgrade tests
518
519     SQOOP-1784: Sqoop2: Sending POST request to link or job end-point might end up with NPE
520
521     SQOOP-1785: Sqoop2: Send driver validation results back to client when creating job
522
523     SQOOP-1786: Sqoop2: Stop using JSONValue.parse method call
524
525     SQOOP-1787: Sqoop2: Fix dual guava dependency warnings in maven
526
527     SQOOP-1788: Sqoop2: Add missing version for build-helper-maven-plugin
528
529     SQOOP-1789: Sqoop2: Add validation for partition column when using query based import
530
531     SQOOP-1792: Sqoop2: Default to simple authentication type
532
533     SQOOP-1806: Sqoop2: Remove the duplicate connector-config.properties file in Kite connector
534
535     SQOOP-1812: Sqoop2: Repository upgrade issue will prevent server startup
536
537     SQOOP-1816: Sqoop2: Add logging to the test DerbyProvider implementation
538
539     SQOOP-1818: Sqoop2: Allow transfer between 2 schema less data sources
540
541     SQOOP-1821: Sqoop2: External connector loading
542
543     SQOOP-1823: Sqoop2: Fix Derby schema javadocs
544
545     SQOOP-1827: Sqoop2: Add pattern SQOOP-XYZ-vX.patch to our pre-commit hook
546
547     SQOOP-1830: GenericJdBcExtractor does not create java date objects when extracting
548
549     SQOOP-1831: Sqoop2: Log filenames of detected Mapreduce files in HdfsUtils
550
551     SQOOP-1832: Sqoop2: Enforce that integration test working directory is always in target/ directory
552
553     SQOOP-1833: Sqoop2: Add elapsed time information to pre-commit hook
554
555     SQOOP-1836: Sqoop2: Convert the List in Schema Columns to Array for better lookup time
556
557     SQOOP-1837: Sqoop2: Verify that executing job has been successful in ConnectorTestCase
558
559     SQOOP-1838: Sqoop2: While running Integration tests in IDE ( we get Derby Start Error)
560
561     SQOOP-1839: Sqoop2: Mapreduce submission record should propogate failure info as well
562
563     SQOOP-1840: Sqoop2: Guard test DerbyProvider from infinite waits in Derby implementation
564
565     SQOOP-1843: Sqoop2: Fix anonymous configuration bug
566
567     SQOOP-1844: Sqoop2: Start Derby server in DerbyProvider on random port
568
569     SQOOP-1847: Sqoop2: Move rat configuration from special execution to the main execution
570
571     SQOOP-1850: Sqoop2: DerbyProvider retry ping
572
573     SQOOP-1857: Sqoop2: Add rat check to pre-commit hook
574
575     SQOOP-1858: Sqoop2: Print out warnings from git apply on output of precommit hook
576
577     SQOOP-1861: Sqoop2: ResourceRequest clobbers uncaught server exceptions
578
579     SQOOP-1862:  Sqoop2: JDBC Connector To side needs to handle converting JODA objects to sql date 
580
581     SQOOP-1871: Sqoop2: Upgrade to Hadoop 2.6.0
582
583     SQOOP-1872: IDF API should expose a method to add dependent jars
584
585     SQOOP-1874: Sqoop2: ConfigurableError should be in the configurable package
586
587     SQOOP-1875: Sqoop2: Sync MSubmission with repository and add tests for the max limit handling for submission fields
588
589     SQOOP-1882: JobManager currently ignores the TO connector IDF and assumed all IDF use String for the generic T
590
591     SQOOP-1885: Sqoop2: KafkaConnector pom.xml needs license header
592
593     SQOOP-1893: add license header to TestSqoopIDFUtils.
594
595     SQOOP-1894: Sqoop2: Print out files that failed license check in pre-commit hook
596
597     SQOOP-1895: Sqoop2: Add links to output reports to pre-commit hook
598
599     SQOOP-1896: Upgrade the Derby repo version to 5 for 1.99.5 release
600
601     SQOOP-1910: Sqoop2: Add test categories
602
603     SQOOP-1911: Sqoop2: Derby1_99_4UpgradeTest is constantly failing on pre-commit hook
604
605     SQOOP-1917: Sqoop2: "show connector --all" fails
606
607     SQOOP-1927: Sqoop2: Move CSVURIValidator into validators package
608
609     SQOOP-1929: Sqoop2: Track number of records written in Loader
610
611     SQOOP-1934: SqoopWritable and MR engine documentation
612
613     SQOOP-1943: Sqoop2: PreCommit should continue if license check fails
614
615     SQOOP-1945: Sqoop2: Add table escaping to JDBC Repository
616
617     SQOOP-1963: Generated files such as .project and .classpath files are included in source distribution 
618
619     SQOOP-1971: Sqoop2: strURL may not be initialized when calling addDelegationToken 
620
621     SQOOP-1972: Sqoop2: PreCommit hook have incorrect link for test reports
622
623     SQOOP-1973: Sqoop2: Remove maven module spi completely after merging it with connector-sdk
624
625     SQOOP-1977: Sqoop2: Pre-commit hook does not work for Python 2.6 environment
626
627     SQOOP-1995: Sqoop2: Allow nulls only if the column for that field has IsNullable to be true 
628
629     SQOOP-1996: Sqoop2: Change getNullable to isNullable
630
631     SQOOP-2018: GenericJDBCConnector SqlTypes INTEGER should be set 4 bytes
632
633     SQOOP-2021: Sqoop2: Generic JDBC Connector extractor uses wrong nulls
634
635     SQOOP-2022: Sqoop2: SqoopIDFUtils uses bit size instead of byteSize to check for INT/LONG/FLOAT/Double
636
637     SQOOP-2023: GenericJDBCConnector Handling unsigned Ints is broken
638
639     SQOOP-2027: Sqoop2: SqoopIDFUtils handling of decimal need to be fixed
640
641     SQOOP-2029:  Sqoop2: Get jobs by connector
642
643     SQOOP-2030: Should we allow creating a job with both from and to to id been the same
644
645     SQOOP-2032: Command line exception message says class not found
646
647     SQOOP-2034: Sqoop2: Clean up docstring and names in repository API
648
649     SQOOP-2041: Sqoop2: Escape identifier names
650
651     SQOOP-2043: Sqoop2: Server errors don't look informative enough in the client
652
653     SQOOP-2054: Sqoop2: Client cannot understand server exceptions
654
655     SQOOP-2077: Sqoop2: Enclose missing/extra lines in output of HdfsAsserts.assertMapreduceOutput
656
657     SQOOP-2078: Sqoop2: Add ParametrizedUtils.toArrayOfArrays utils method
658
659     SQOOP-2081: Sqoop2: Provide ability to dump content of testing table to log
660
661     SQOOP-2086: Sqoop2: Use named constraints
662
663     SQOOP-2087: Sqoop2: Named constraints should be quoted
664
665     SQOOP-2088: Sqoop2: Rename constants for named constraints to match convention
666
667     SQOOP-2099: Sqoop2: Postgresql's detectRepositoryVersion uses wrong casing
668
669     SQOOP-2100: Sqoop2: Connectors documentation is malformed
670
671     SQOOP-2109: Sqoop2: Shell module is including test dependencies when building binary artifact
672
673     SQOOP-2116: Sqoop2: RequestContext should use user short name
674
675   IMPROVEMENT
676
677     SQOOP-1678: Sqoop2: [HDFS Connector] Configurable null values
678
679     SQOOP-1727: Sqoop2: Log server initialization errors to log4j
680
681     SQOOP-1767: Sqoop2: commands in 5 minute demo docs are out-of-sync 
682
683     SQOOP-1869: Sqoop2: Expand schema matching to support two schemaless connectors
684
685     SQOOP-1944: Sqoop2: No (or wrong) log message when Derby server startup/shutdown unexpectedly
686
687     SQOOP-1966: Turn off maven's source distribution profile by default
688
689     SQOOP-1968: Optimize schema operation in getMatchingData of NameMatcher
690
691     SQOOP-1969: Support getColumnSize method for Schema class
692
693     SQOOP-2006: bad smell: NPE check in SQOOP-1995 is not obvious
694
695   NEW FEATURE
696
697     SQOOP-1763: Sqoop2: Role Based Access Control
698
699     SQOOP-1926: Sqoop2: Add annotations for visibilty and compatibility guarantees
700
701   TASK
702
703     SQOOP-1350: Sqoop2: Support all supported data types in the CSV Intermediate Data Format implementation
704
705     SQOOP-1525: Kerberos support on Sqoop 2
706
707     SQOOP-2033: Technical Guide of the Sqoop Server
708
709 Release 1.99.4
710
711   NEW FEATURE
712
713     SQOOP-777   Sqoop2: Implement intermediate data format representation policy
714
715     SQOOP-1232  Sqoop2: Provide tooling infrastructure for Sqoop2
716
717     SQOOP-1367  Sqoop2: From/To
718
719   IMPROVEMENT
720
721     SQOOP-773   Sqoop2: Batch execution support for client commands
722
723     SQOOP-1144  Sqoop2: Add fixVersion to PreCommit branch detection
724
725     SQOOP-1189  Sqoop2: Ensure that clone methods will correctly copy over all values from all parents
726
727     SQOOP-1196  Sqoop2: Add support for arbitrary compression codecs
728
729     SQOOP-1211  Sqoop2: Derby repo: Sync maximal length of versions
730
731     SQOOP-1225  Sqoop 2 documentation for connector development
732
733     SQOOP-1290  Sqoop2: Kill Tomcat in case that Sqoop Server fails to load
734
735     SQOOP-1509  Sqoop2: Sqoop2 Rest API refactoring
736
737     SQOOP-1547  Sqoop2: Connector API stabilization
738
739     SQOOP-1557  Sqoop2: SQ_CONFIGURABLE ( for entities who own configs)
740
741     SQOOP-1566  Sqoop2: Fix the upgrade logic for SQOOP-1498
742
743     SQOOP-1585  Sqoop2: Prefix mapreduce classes with MR ( no functionality change)
744
745     SQOOP-1586  Sqoop2: Rename leftovers from the SQOOP2 merge of 1367
746
747     SQOOP-1597  Sqoop2: Refactor DerbySchemaQuery into one for create/ update/ and then CRUD operarations
748
749     SQOOP-1620  Sqoop2: FileSystem should be configurable in HDFS connector
750
751   BUG
752
753     SQOOP-1208  Sqoop2: job ID column is too small
754
755     SQOOP-1218  Sqoop2: Upgrade Hadoop 2 to GA release 2.2.0
756
757     SQOOP-1233  Sqoop2: Remove unnecessary explicit call to MessageFormat
758
759     SQOOP-1247  Sqoop2: Distribution module is missing dependency on Tomcat module
760
761     SQOOP-1258  Sqoop2: FrameworkMetadataUpgrade can't handle new inputs
762
763     SQOOP-1263  Sqoop2: Using CATALINA_HOME as CATALINA_BASE
764
765     SQOOP-1264  Sqoop2: Remove unnecessary cd command calls from sqoop.sh
766
767     SQOOP-1285  Sqoop2: ToolRunner is not exiting with proper exit value on error
768
769     SQOOP-1288  Add mengwei to commiter list in our root pom.xml file
770
771     SQOOP-1291  Sqoop2: Binary package do not have top level commands executable
772
773     SQOOP-1296  Sqoop2: Revert SQOOP-1233
774
775     SQOOP-1308  Sqoop2: Database export with the Generic-JDBC-Connector loses rows
776
777     SQOOP-1320  Sqoop2: Log entire SQLExceptions chain in GenericJdbcExecutor
778
779     SQOOP-1331  Sqoop2: Add method "findConnectors" to repository API
780
781     SQOOP-1338  Sqoop2: Exclude intellij idea project files from git
782
783     SQOOP-1339  Synchronize .gitignore files
784
785     SQOOP-1354  Sqoop2: wrong maven-site-plugin version
786
787     SQOOP-1383  Sqoop2: MSSQL Export not working
788
789     SQOOP-1424  Sqoop2: Simplify SqoopCommand in shell package
790
791     SQOOP-1425  Sqoop2: Improve ClassUtils to enable use of primitive types and subclasses
792
793     SQOOP-1426  Sqoop2: ThrowableBean should correct reconstruct SqoopException
794
795     SQOOP-1436  Sqoop2: Support custom form name via the Form Annotation
796
797     SQOOP-1537  Sqoop2: File TestJobManager is missing proper license header
798
799     SQOOP-1578  Sqoop2: getJars should take from and to configurations
800
801     SQOOP-1581  Sqoop2: LoaderContext has the wrong Schema
802
803     SQOOP-1594  Sqoop2: DestroyerContext has the wrong Schema
804
805     SQOOP-1605  Sqoop2: Misc From/to cleanups
806
807     SQOOP-1619  Sqoop2: Enforce Unique constraint for name on configurable table
808
809     SQOOP-1623  Sqoop2: Derive the correct Client version for sqoop
810
811     SQOOP-1625  Repository upgrade issue
812
813     SQOOP-1629  Sqoop2: Add unique constraint on the Config table for name and type
814
815     SQOOP-1636  Sqoop2: Add unique constraint to the SQI_INPUT name per type per config
816
817     SQOOP-1639  Sqoop2: CLOB data type wrong type
818
819     SQOOP-1641  DOC: Sqoop 5 minute demo.rst update to reflect latest in code
820
821     SQOOP-1655  SQOOP2 DOC: Document getSchema() and its use in the connector dev guide
822
823     SQOOP-1660  DOC: Connector SDK docs + validation to be updated
824
825     SQOOP-1661  Sqoop2: Intermediate data format text null handling
826
827     SQOOP-1662  Sqoop2: allowNullValueInPartitionColumn should be partitionColumnNull
828
829     SQOOP-1664  Sqoop2: Remove the unused SqoopFileOutputFormat class
830
831     SQOOP-1665  Sqoop2: Misc Cleanup / rename lingering connection to link
832
833     SQOOP-1668  Sqoop2: Update existing job meets NPE ( regression from SQOOP 1510)
834
835     SQOOP-1669  Sqoop2: JDBC connector does not understand iso8610 representation using " " as separator
836
837     SQOOP-1671  Fix incorrect merge from SQOOP-1645
838
839     SQOOP-1673  DOC: Update Upgrade.rst to reflect the latest in the code
840
841     SQOOP-1674  DOC: index.rst updates for Sqoop
842
843     SQOOP-1675  Sqoop2: Update Upgrade.rst to to address Rb comments
844
845     SQOOP-1676  Sqoop2: clientAPI.rst changes to reflect latest code
846
847     SQOOP-1677  DOC: CommandLineClient.rst update to reflect latest in code
848
849     SQOOP-1679  Sqoop2: Fix inconsistent naming in shell for entity driver in sqoop2
850
851     SQOOP-1694  Sqoop2: Fix broken Hadoop100 build
852
853     SQOOP-1696  Sqoop2: TestMapReduce.testOutputFormat is failing on Hadoop 1 profile
854
855     SQOOP-1697  Sqoop2: HDFS Connector TestLoader.verifyOutput have invalid default value for Hadoop 1
856
857     SQOOP-1718  Sqoop2: CommandLineClient doc error
858
859     SQOOP-1721  Sqoop2: common jars missing for MR job
860
861     SQOOP-1723  Sqoop2: findJobsByConnector fails
862
863     SQOOP-1724  Sqoop2: Support old config types for backward compatibility in connector data upgrade
864
865     SQOOP-1725  Sqoop2: Connector upgrade in 1.99.4 fails with delete configs
866
867     SQOOP-1728  Sqoop2: Force HDFS connector as a configurable fixes
868
869     SQOOP-1729  Sqoop2: The existing genericJDBC connector code upgrade logic  is incomplete.
870
871     SQOOP-1731  Sqoop2: Generic JDBC upgrade from 1.99.3 to 1.99.4
872
873     SQOOP-1736  Sqoop2: Driver missing during upgrade
874
875     SQOOP-1740  Sqoop2:The sqoop.properties should say driver.autoupgrade
876
877     SQOOP-1742  Sqoop2: Add type to connectors during upgrade
878
879   TASK
880
881     SQOOP-1219  Sqoop2: Bump up Tomcat version to 6.0.37
882
883     SQOOP-1220  Sqoop2: Improve default catalina.properties file to work out of the box on both Hadoop 1 and 2
884
885     SQOOP-1234  Sqoop2: Clean up comments in MSubmission class
886
887     SQOOP-1235  Sqoop2: Repository should be immutable by default
888
889     SQOOP-1236  Sqoop2: Classpath generated by Submission engine should contain only unique elements
890
891     SQOOP-1266  Sqoop2: Introduce top level commands
892
893   SUB-TASK
894
895     SQOOP-927   Sqoop2: Integration: Mapreduce specific tests should be running on MiniCluster
896
897     SQOOP-1254  Sqoop2: Tool: Upgrade tool
898
899     SQOOP-1255  Sqoop2: Tool: Dump repository content to a repository independent format
900
901     SQOOP-1262  Sqoop2: Tool: Create user guide entry for the Tooling infrastructure
902
903     SQOOP-1376  Sqoop2: From/To: Refactor connector interface
904
905     SQOOP-1377  Sqoop2: From/To: Improve client/server communication
906
907     SQOOP-1379  Sqoop2: From/To: Disable tests
908
909     SQOOP-1380  Sqoop2: From/To: Refactor models
910
911     SQOOP-1381  Sqoop2: From/To: Refactor submission/execution engine
912
913     SQOOP-1444  Sqoop2: Validations: Remove all references to the original Validation infastructure
914
915     SQOOP-1469  Sqoop2: Validations: Rename constants in Status class
916
917     SQOOP-1499  Sqoop2: Refactor MJob to hold fromConfig, ToConfig and DriverConfig ( mandatory to create a job)
918
919     SQOOP-1500  Sqoop2: Rename Forms to Config, Create FromConfig and ToConfig
920
921     SQOOP-1501  Sqoop2: Refactor MConnector
922
923     SQOOP-1503  Sqoop2: Refactor MFramework (rename to MDriver) and add MDriverConfig
924
925     SQOOP-1504  Sqoop2: Refactor MConnection (rename to MLink)
926
927     SQOOP-1505  Sqoop2: Rename the repository schema objects to adhere to the model objects
928
929     SQOOP-1510  Sqoop2: Refactor JobRequestHandler for submit/abort job and SubmissionHandler for get operation only
930
931     SQOOP-1512  Refactor ConnectionRequestHandler and add ConfigurableRequestHandler
932
933     SQOOP-1513  Sqoop2: Refactor LinkRequestHandler
934
935     SQOOP-1514  Refactor FrameworkRequestHandler to DriverRequestHandler
936
937     SQOOP-1515  Sqoop2: VersionRequestHandler - fixes
938
939     SQOOP-1517  Test CommandLineClient  to accomodate the JSON API refactoring
940
941     SQOOP-1518  Sqoop2: Update the Rest API documentation
942
943     SQOOP-1542  Sqoop2: From/To: MConnector should handle null forms
944
945     SQOOP-1550  Sqoop2: Remove the indirection in MDriverConfig, let it extend the MConfig instead of has-a MConfig
946
947     SQOOP-1551  Sqoop2: Repository Upgrader api - Extensibility
948
949     SQOOP-1554  Sqoop2: Add NullConfigurationClass/ EmptyConfigurationClass to support use cases that do not have a particular type of config
950
951     SQOOP-1575  Sqoop2: Validations: Migrate HDFS connector to new validators
952
953     SQOOP-1576  Sqoop2: Validations: Migrate Repository upgrade to the new validator infrastructure
954
955     SQOOP-1628  Sqoop2: Ensure Connector/Driver/Version only support GET method
956
957     SQOOP-1637  Sqoop2: Validations: Update documentation with the new Validator infrastructure
958
959     SQOOP-1645  Sqoop2: Update label text and (optional) required info for the generic jdbc connector config properties
960
961     SQOOP-1653  Sqoop2: Link and connector handler minor fixes
962
963     SQOOP-1686  Sqoop2: Fix the JSON names for config and config values
964
965     SQOOP-1687  Sqoop2: Single resource in JSON should not be a list
966
967     SQOOP-1688  Sqoop2: Fix the Validation Response JSON for configs
968
969 Release 1.99.3
970
971   SUB-TASK
972
973     SQOOP-659: Design metadata upgrade procedure
974
975     SQOOP-924: Sqoop2: Devguide: Describe wire protocol
976
977     SQOOP-945: Sqoop2: Integration: Auxiliary methods that will support export functionality
978
979     SQOOP-994: Sqoop2: Upgrade: Add calling validation to the upgrade method
980
981     SQOOP-996: Sqoop2: Upgrade: Create upgrade tests
982
983     SQOOP-997: Sqoop2: Upgrade: Provide ability to disable the automatic upgrade
984
985     SQOOP-998: Sqoop2: Upgrade: Add framework upgrader
986
987     SQOOP-1009: Sqoop2: Integration: Create Teradata provider
988
989     SQOOP-1014: Sqoop2: Splitter: Add Bit/Boolean based implementation
990
991     SQOOP-1015: Sqoop2: Splitter: Add Datetime based implementation
992
993     SQOOP-1016: Sqoop2: Splitter: Add text char implementation
994
995     SQOOP-1022: Metadata upgrade fails with NPE getConnector method
996
997     SQOOP-1023: STMT_DELETE_FORMS_FOR_CONNECTOR query in DerbySchemaSquery looks for incorrect column
998
999     SQOOP-1024: GenericJdbcConnectorUpgrader must ignore inputs which may not exist in old version
1000
1001     SQOOP-1025: Sqoop metadata upgrade must set job id in the new job being created
1002
1003     SQOOP-1077: Sqoop2: Integration: Create Netezza provider
1004
1005     SQOOP-1087: Sqoop2: Integration: Abstract common functionality into src module
1006
1007     SQOOP-1091: Sqoop2: Submission history API - provide SqoopClient programming API
1008
1009     SQOOP-1092: Sqoop2: Submission history API - provide client shell function `show submission`
1010
1011     SQOOP-1101: Sqoop2: Basic schema: Provide implementation of the proposed data types
1012
1013     SQOOP-1102: Sqoop2: Basic schema: Generate the schema on import in Generic JDBC Connector
1014
1015     SQOOP-1103: Sqoop2: Basic schema: Provide facility transfer Schema  from server to client
1016
1017     SQOOP-1114: Sqoop2: Integration: Add tests for various Generic JDBC Connector splitters
1018
1019     SQOOP-1115: Sqoop2: Integration: Provide helper methods for synchronous job submission
1020
1021     SQOOP-1200: Sqoop2 1.99.3 Pom files version change on release branch
1022
1023     SQOOP-1201: Sqoop2: Update docs to reflect correct version on the release branch
1024
1025   BUG
1026
1027     SQOOP-515: Sqoop2: Datatype support
1028
1029     SQOOP-827: Sqoop2: MMapInput is null while retrieving from DB if pass empty map on write
1030
1031     SQOOP-897: Sqoop2: Remove script addtowar.sh and use catalina's common.loader instead
1032
1033     SQOOP-958: Sqoop2: fix version tests in Mac OS X
1034
1035     SQOOP-974: Sqoop2: Add staging table support to generic jdbc export job
1036
1037     SQOOP-982: Sqoop2: Allow user to pass custom parameters to catalina.sh
1038
1039     SQOOP-989: Sqoop2: setenv.sh overrides value of JAVA_OPTS
1040
1041     SQOOP-993: Sqoop2: Metadata upgrade
1042
1043     SQOOP-995: Sqoop2: Add cloning ability to model classes
1044
1045     SQOOP-1002: Sqoop2: Mapreduce local mode detection is not working correctly on Hadoop 2.x
1046
1047     SQOOP-1003: Sqoop2: sqoop.sh execution error
1048
1049     SQOOP-1005: Sqoop2: Update year in the notice file to 2013
1050
1051     SQOOP-1019: Sqoop2: Client side caching input forms
1052
1053     SQOOP-1036: Sqoop2: JobClient.getCounters can return NULL
1054
1055     SQOOP-1039: Sqoop2: show version with no args should show something
1056
1057     SQOOP-1040: Sqoop2: NPE in TableDisplayer
1058
1059     SQOOP-1041: Sqoop2: Framework upgrade in JdbcRepository returns the outdated value
1060
1061     SQOOP-1046: Sqoop2: Importing single row using decimal splitter will not import anything
1062
1063     SQOOP-1048: Sqoop2: NPE when importing NULL value
1064
1065     SQOOP-1049: Sqoop2: Record not imported if partition column value is NULL
1066
1067     SQOOP-1062: Misspell in "isVerboose()" method, it should be "isVerbose()"
1068
1069     SQOOP-1069: Sqoop2: Incorrect error message from FrameworkValidator
1070
1071     SQOOP-1070: Shell scripts should not rely on $PATH if $JAVA_HOME is set
1072
1073     SQOOP-1080: Sqoop2: Investigate Jenkins test failures
1074
1075     SQOOP-1081: destroy() method of ConnectorManager has not been implemented yet.
1076
1077     SQOOP-1082: Implement pre-commit testing with Jenkins
1078
1079     SQOOP-1088: Sqoop2: Submission history API
1080
1081     SQOOP-1089: Sqoop2: Accept Language header default
1082
1083     SQOOP-1095: Sqoop2: PreCommit Hook have incorrect branch name
1084
1085     SQOOP-1100: Sqoop2: Missing setBoolean() method for MutableContext interface
1086
1087     SQOOP-1104: Sqoop2: Allow versioned patches in the PreCommit hook
1088
1089     SQOOP-1105: Sqoop2: Remove our implementation of StringUtils
1090
1091     SQOOP-1112: Sqoop2: Date splitter might return splits omitting some boundaries
1092
1093     SQOOP-1113: Sqoop2: Text splitter will fail on interval "Breezy Badger"" to "Warty Warthog""
1094
1095     SQOOP-1121: Sqoop2: Serialize schema and make them available in the MR job.
1096
1097     SQOOP-1123: Sqoop2: Add eclipse project metadata folder excluded from maven
1098
1099     SQOOP-1128: Sqoop2: SqoopException being nested into another SqoopException in Repository
1100
1101     SQOOP-1130: Sqoop2: Sqoop MapReduce Job Failed when max and min boundary are both null
1102
1103     SQOOP-1131: New test added in SQOOP-1121 is using unsupported API in Hadoop 100
1104
1105     SQOOP-1136: Sqoop2: MBooleanInput forget to copy persistenceId when do clone()
1106
1107     SQOOP-1139: Sqoop2: JobManager.java indentation is inconsistent with rest of the codebase
1108
1109     SQOOP-1145: Sqoop2: Use JSON object for serializing MAP input type
1110
1111     SQOOP-1147: Sqoop2: show framework function does not behave as expected
1112
1113     SQOOP-1154: Sqoop2: Text partitioner might miss or include edge values
1114
1115     SQOOP-1169: Sqoop2: org.apache.sqoop.repository.schema.immutable should default to false
1116
1117     SQOOP-1178: Sqoop2: get connections for connector columns out of order
1118
1119     SQOOP-1180: Sqoop2: Metadata upgrade is calling validators with Model classes instead of configuration objects
1120
1121     SQOOP-1205: Sqoop2: Provide upgrade guide for end users
1122
1123     SQOOP-1210: Exporting data with malformed records causes sqoop2 jobs to hang until killed or they timeout
1124
1125   IMPROVEMENT
1126
1127     SQOOP-675: Sqoop2: Substitute submission command with top level commands start, stop and status
1128
1129     SQOOP-921: Sqoop2: Create standalone shell package
1130
1131     SQOOP-943: Sqoop2: Repository wide configuration of immutable disk structures
1132
1133     SQOOP-971: Sqoop2: Component reconfigurability
1134
1135     SQOOP-973: Sqoop2: Merge host, port and app to single server URL in Sqoop shell
1136
1137     SQOOP-983: Sqoop2: Document client synchronous mode
1138
1139     SQOOP-984: Sqoop2: Improve user experience on synchronous job submission
1140
1141     SQOOP-985: Sqoop2: Introduce synchronous job submission to Client API
1142
1143     SQOOP-990: Sqoop2: Allow users to override Sqoop2's default http port and admin port
1144
1145     SQOOP-1012: Sqoop2: Generic JDBC Connector should have one static instance of validator
1146
1147     SQOOP-1017: Sqoop2: Split FrameworkManager into two classes
1148
1149     SQOOP-1028: Remove poll timeout parameter from Sqoop shell synchronous submission
1150
1151     SQOOP-1042: Sqoop2: Name constraints in Derby repository
1152
1153     SQOOP-1043: Sqoop2: Improve error messages in Derby repository
1154
1155     SQOOP-1044: Sqoop2: Improve logging in metadata upgrade methods
1156
1157     SQOOP-1059: Sqoop2: Remove ad hoc modle cloning methods in common module
1158
1159     SQOOP-1060: Sqoop2: Increase maximal size of custom query in Generic JDBC Connector
1160
1161     SQOOP-1065: Sqoop2: Remove special lock object in FrameworkManager
1162
1163     SQOOP-1067: Sqoop2: Tests should not use /tmp/ directory for storing data
1164
1165     SQOOP-1073: Sqoop2: Introduce schema for transferred data
1166
1167     SQOOP-1075: Sqoop2: Persist Framework metadata version in repository
1168
1169     SQOOP-1111: Sqoop2: Implement version detection and structure updates into Derby repository
1170
1171     SQOOP-1141: Sqoop2: Provide ability to enable/disable connections and jobs
1172
1173     SQOOP-1142: Sqoop2: Provide creater and last edited by to metadata structures
1174
1175     SQOOP-1143: Sqoop2: Provide server audit log for operations upon metadata structures
1176
1177     SQOOP-1182: Expose compression options for Sqoop2 import
1178
1179     SQOOP-1183: Sqoop2: Add getConnector(String) to the client API
1180
1181     SQOOP-1184: Sqoop2: Improve error messages during metadata upgrade
1182
1183   NEW FEATURE
1184
1185     SQOOP-663: Sqoop2: Introduce connector SDK
1186
1187     SQOOP-1013: Sqoop2: Provide splitters for additional data types to Generic JDBC Connector
1188
1189     SQOOP-1076: Sqoop2: Introduce Boolean model type
1190
1191     SQOOP-1155: Sqoop 2 documentation for connector development
1192
1193   TASK
1194
1195     SQOOP-672: Unify logger usage across entire code base
1196
1197     SQOOP-744: Sqoop2: Supply log4j configuration for generated mapreduce job
1198
1199     SQOOP-745: Sqoop2: Change "submit" client command to "submission"
1200
1201     SQOOP-1001: Sqoop2: Document methods for overriding server port
1202
1203     SQOOP-1109: Sqoop2: Add new committers to root pom.xml file
1204
1205     SQOOP-1110: Sqoop2: Precommit: Add routine to detect if patch touch test
1206
1207 Release 1.99.2
1208
1209   SUB-TASK
1210
1211     SQOOP-831: Unit test for common module
1212
1213     SQOOP-861: Sqoop2: Integration: Create basic integration infrastructure
1214
1215     SQOOP-882: Sqoop2 integration: Auxiliary classes for various database support
1216
1217     SQOOP-896: Sqoop2: Remove PrefixContext dependency in Execution engine
1218
1219     SQOOP-908: Sqoop2 integration: Create MySQL and PostgreSQL database providers
1220
1221     SQOOP-909: Sqoop2 integration: Create Oracle and Microsoft SQL Server database providers
1222
1223     SQOOP-925: Sqoop2: Devguide: Describe client API for embedding Sqoop client in applications
1224
1225     SQOOP-930: Sqoop2: Devguide: Building and setting up developer environment
1226
1227     SQOOP-939: Sqoop2: devguide: Document how to open project in Eclipse
1228
1229     SQOOP-946: Sqoop2: Integration: Enhance the POC test case
1230
1231     SQOOP-953: Sqoop2: Integration: Schema support
1232
1233     SQOOP-987: Exclude mockito jars from being copied into the sqoop2 distribution
1234
1235   BUG
1236
1237     SQOOP-746: Sqoop2: Mapreduce job should have running with speculative execution disabled
1238
1239     SQOOP-783: Sqoop2: Merge HdfsSequenceExportExtractor and HdfsTextExportExtractor to one Extractor
1240
1241     SQOOP-799: Sqoop2: Change SqoopConnector interface to abstract class
1242
1243     SQOOP-802: Sqoop2: Convert main "Manager" classes to singletons.
1244
1245     SQOOP-811: Client shell variable substitution for recent commands
1246
1247     SQOOP-812: Sqoop2: Serialization of Configuration objects to and from json is not working properly
1248
1249     SQOOP-813: Sqoop2: LoaderExecutor might get into deadlock when exception is raised outside Loader itself
1250
1251     SQOOP-815: Sqoop2: Get version for client requires working connection to server
1252
1253     SQOOP-822: Sqoop2: Git repository revision is not fetched
1254
1255     SQOOP-835: Sqoop2: Do not recreate package-info.java each compilation
1256
1257     SQOOP-843: Sqoop2: Generic JDBC connector is committing transaction on export with autoCommit on
1258
1259     SQOOP-844: Sqoop2: HdfsExportPartitioner is not always respecting maximal number of partitions
1260
1261     SQOOP-845: Sqoop2: Improve Generic JDBC validator
1262
1263     SQOOP-850: Sqoop2: Move server initialization from server module to core
1264
1265     SQOOP-851: Sqoop2: NullPointerException in Mapreduce Submission engine initialization
1266
1267     SQOOP-852: Sqoop2: Mapreduce submission engine is not closing opened JobClient object
1268
1269     SQOOP-858: Sqoop2: Add validation messages on form level
1270
1271     SQOOP-865: Sqoop2: Client request cache is incorrectly setting the framework validations
1272
1273     SQOOP-867: Sqoop2 client shows wrong msg
1274
1275     SQOOP-868: Mismatched msg in sqoop2 client
1276
1277     SQOOP-871: Connector-level job-specific prop gives wrong help msg
1278
1279     SQOOP-872: sqoop2 client 'show framework' command isn't resolving the show.prompt_framework_opts prop
1280
1281     SQOOP-873: Sqoop2 build should ignore Intellij files
1282
1283     SQOOP-874: Sqoop2: Provide log4j configuration for client
1284
1285     SQOOP-875: Sqoop2: ClassUtils.instantiate class should not be logging on ERROR level
1286
1287     SQOOP-879: Sqoop2: NPE when deleting job object that do not have associated any submissions
1288
1289     SQOOP-880: Sqoop2: NPE when stopping job that was never executed
1290
1291     SQOOP-881: Sqoop2: Change default port from 8080
1292
1293     SQOOP-884: Sqoop2: Disable interactive client commands in batch mode
1294
1295     SQOOP-887: Sqoop2: Move string constants from FormDisplayer to resource file
1296
1297     SQOOP-888: Sqoop2: Move out checking of special condition token to Validator in Generic JDBC Manager
1298
1299     SQOOP-889: Sqoop2: Move tomcat related properties from dist/pom.xml to root pom.xml
1300
1301     SQOOP-892: Sqoop2: Validate acceptable number of mappers and reducers
1302
1303     SQOOP-893: Fix job submission progress percentage
1304
1305     SQOOP-894: Sqoop2: Increase counter and group size in derby repository
1306
1307     SQOOP-905: Sqoop 2: Job submission shows wrong date format in client console
1308
1309     SQOOP-941: Sqoop2: Do not send sensitive values from server to client
1310
1311     SQOOP-942: Sqoop2: Refactore code repetition in SqoopRequests objects
1312
1313     SQOOP-952: Sqoop2: Create job function requires uppercased type name
1314
1315     SQOOP-966: Sqoop2: Remove placeholder class IgnoredForm
1316
1317     SQOOP-980: Sqoop2: Show connection and job command hung
1318
1319   IMPROVEMENT
1320
1321     SQOOP-647: Provide facility to cache server responses on client side
1322
1323     SQOOP-660: Improve user experience in displaying connection/job metadata
1324
1325     SQOOP-678: Sqoop2: Add counters handling to map reduce submission engine
1326
1327     SQOOP-682: Sqoop2: Use templating in job.etl classes
1328
1329     SQOOP-723: Add possibility to have synchronous submissions in Sqoop 2
1330
1331     SQOOP-750: Sqoop2: Introduce show option client command
1332
1333     SQOOP-803: Sqoop2: Add gpg profile to pom file so that we can easily deploy artifacts to mvn repository
1334
1335     SQOOP-806: Sqoop2: Put "creation" and "lastUpdate" date to Connection and Job objects
1336
1337     SQOOP-807: Sqoop2: Verify whether job object can be safely removed prior removing
1338
1339     SQOOP-814: Sqoop2: Start using configuration objects in Generic JDBC Connector
1340
1341     SQOOP-826: Sqoop2: Add log4j test configuration to all maven modules
1342
1343     SQOOP-833: add *.eml "ant eclipse" (IntelliJ import) generated file, to .gitignore
1344
1345     SQOOP-841: Sqoop2: Remove final keyword from manager classes
1346
1347     SQOOP-842: Sqoop2: Put partition to template in Extractor as well
1348
1349     SQOOP-863: Sqoop2: Introduce ProgressThread into Extractor and Loader
1350
1351     SQOOP-864: Sqoop2: Introduce ETL context objects
1352
1353     SQOOP-866: Sqoop2: Introduce framework validations
1354
1355     SQOOP-876: Expose the xid and cid when show status of job in sqoop2 client
1356
1357     SQOOP-877: Sqoop2: Increase field size of output.outputDirectory property value from 25 to 50
1358
1359     SQOOP-899: Sqoop2: Properly document REST endpoints in the server handler classes
1360
1361     SQOOP-900: Sqoop2: Introduce human readable coding style for queries stored in DerbySchemaQuery
1362
1363     SQOOP-919: Sqoop2: Improve Form API for simple java handling
1364
1365     SQOOP-920: Sqoop2: Print out warnings in client shell for objects created with status ACCEPTABLE
1366
1367     SQOOP-922: Sqoop2: Shell commands are throwing exceptions when invalid function is specified
1368
1369     SQOOP-947: Sqoop2: Introduce the concept of "sensitivity" input to all supported metadata structures
1370
1371     SQOOP-967: Sqoop2: Introduce dummy configuration key to easily identify Sqoop2 job
1372
1373     SQOOP-972: Sqoop2: Load server URL from environment in shell
1374
1375     SQOOP-975: Sqoop2: Port conflict problems in tomcat
1376
1377     SQOOP-986: Sqoop2: Add detection of local mode to mapreduce submission engine
1378
1379   NEW FEATURE
1380
1381     SQOOP-643: Sqoop2: Implement simple listings for connector and job objects
1382
1383     SQOOP-664: Send user name as HTTP header in client to server communication
1384
1385     SQOOP-785: Sqoop2: Add splitter implementation for NUMERIC/DECIMAL type
1386
1387     SQOOP-895: Sqoop2: Do not serialize framework and connector configurations into mapreduce configuration object
1388
1389     SQOOP-903: Sqoop2: Add schema support to Generic JDBC Connector
1390
1391     SQOOP-918: Sqoop2: Introduce client API and change Sqoop shell to use it
1392
1393   TASK
1394
1395     SQOOP-805: Sqoop2: Document show option function in CommandClientGuide
1396
1397     SQOOP-809: Sqoop2: Remove old deprecated comments from distribution pom file
1398
1399 Release 1.99.1
1400
1401   SUB-TASK
1402
1403     SQOOP-680: Re enable unit tests for map reduce execution engine
1404
1405     SQOOP-698: Document installation procedure for Sqoop 2
1406
1407     SQOOP-699: Create content for User guide for Sqoop 2
1408
1409     SQOOP-700: Provide examples to Sqoop 2 user guide
1410
1411     SQOOP-701: Create content for Sqoop 2 Developer guide
1412
1413     SQOOP-703: Move sqoop 2 documentation to top level directory in binary artefact
1414
1415     SQOOP-708: Create documentation for Sqoop 2 client
1416
1417     SQOOP-713: Introduce maven profiles for different Hadoop versions
1418
1419     SQOOP-714: Make map reduce related code to be compatible with Hadoop 1
1420
1421     SQOOP-715: Add support for Hadoop 1 to addtowar.sh script in Sqoop 2
1422
1423     SQOOP-742: Put 5 minutes demo on index page in Sqoop 2 documentation
1424
1425     SQOOP-753: Sqoop2: Update top level README file
1426
1427     SQOOP-755: Sqoop2: Provide license file with license information for all artifacts included in binary release
1428
1429     SQOOP-756: Sqoop2: Exclude junit jar from our binary artifact
1430
1431     SQOOP-757: Sqoop2: Disable maven reports project wise
1432
1433     SQOOP-758: Sqoop2: Generate documentation in package goal
1434
1435     SQOOP-786: Sqoop2: Include jars from WAR archive in LICENSE.txt file
1436
1437     SQOOP-787: Sqoop2: Provide CHANGELOG.txt file
1438
1439     SQOOP-800: Sqoop2: Update NOTICE file
1440
1441   BUG
1442
1443     SQOOP-511: Need to set persistent id for connector if in repository already
1444
1445     SQOOP-537: TestMPersistableEntity does not contain license header
1446
1447     SQOOP-596: Implement connection resource end-to-end
1448
1449     SQOOP-608: Implement job resource from end to end
1450
1451     SQOOP-631: Sqoop2 client is not working on Mac OS X
1452
1453     SQOOP-632: Sqoop 2 client help text contains link to old incubator page
1454
1455     SQOOP-644: Remove DISCLAMER.txt file from branch sqoop2
1456
1457     SQOOP-651: adding .gitattributes to prevent CRLF and LF mismatches for source and text files
1458
1459     SQOOP-655: Generic JDBC connector for export
1460
1461     SQOOP-671: Mapreduce counters are not used in generated mapreduce jobs
1462
1463     SQOOP-673: Mapreduce submission manager should not call update() on finished submissions
1464
1465     SQOOP-674: Sqoop2: Exceptions in special map reduce threads can cause mapreduce job to freeze
1466
1467     SQOOP-686: Empty job name will result in NPE during job submission
1468
1469     SQOOP-688: Add netbeans files to gitignore and rat
1470
1471     SQOOP-690: Fix threading issues in SqoopOutputFormatLoadExecutor
1472
1473     SQOOP-692: Move execution specific error codes from CoreError to it's own error codes class
1474
1475     SQOOP-693: Intermediate data format support for export
1476
1477     SQOOP-695: Change default host on client to "localhost"
1478
1479     SQOOP-696: Client command submission status will finish gracefully when executed for non existing job
1480
1481     SQOOP-702: Refactor OutputLoadExecutor
1482
1483     SQOOP-705: Framework-defined text/sequence partitioner/extractor for HDFS
1484
1485     SQOOP-707: Update developer list in Sqoop 2 pom file
1486
1487     SQOOP-710: Remove dependency on unreleased commons-cli 1.3 from Sqoop 2 client
1488
1489     SQOOP-727: We should use more strict regular expressions in addtowar.sh script
1490
1491     SQOOP-728: Increase varchar limits for external link and exceptions in Derby repository
1492
1493     SQOOP-729: SubmissionDisplayer should display Stack Trace only in Verbose mode
1494
1495     SQOOP-738: Sqoop is not importing all data in Sqoop 2
1496
1497     SQOOP-759: Sqoop2: Loading client resource file is failing on ResourceBundle not found exception
1498
1499     SQOOP-760: Sqoop2: Fix invalid \h escape sequence in client resource file
1500
1501     SQOOP-761: HDFSTextExportExtractor loses lines around partition boundaries
1502
1503     SQOOP-764: Sqoop2: Fix typo in client resource file "prompt.conn_id"
1504
1505     SQOOP-765: Sqoop2: JDBC repository is incorrectly checking if job exists in update handler
1506
1507     SQOOP-766: Sqoop2: Fix client resources
1508
1509     SQOOP-768: Sqoop2: Compilation on hadoop profile 100 will fail
1510
1511     SQOOP-770: Sqoop2: executable scripts in binary distribution tarball are not executable
1512
1513     SQOOP-771: Sqoop2: Improve addtowar.sh
1514
1515     SQOOP-772: OutOfMemory from document generation
1516
1517     SQOOP-774: Sqoop2: exception is thrown when creating a connection object if connectionString starts with an empty space
1518
1519     SQOOP-775: Sqoop2: addtowar.sh script is silently ignoring unknown arguments
1520
1521     SQOOP-778: Remove empty SqoopUserGuide and SqoopDeveloperGuide
1522
1523     SQOOP-779: Sqoop2: NPE when JobConnectorContext has a null value
1524
1525     SQOOP-780: Sqoop2: GENERIC_JDBC_CONNECTOR_0011:The type is not supported - 2
1526
1527     SQOOP-781: Sqoop2: Improve logging in GenericJdbcImportInitializer
1528
1529     SQOOP-782: Update comment to reflect that TestHdfsExtract works fine.
1530
1531     SQOOP-784: Sqoop2: Creating job for connection with id > 1 will results in NullPointerException
1532
1533     SQOOP-788: Sqoop2: Import sometimes duplicate some data
1534
1535     SQOOP-789: Fix Hadoop-1 build
1536
1537     SQOOP-790: Remove flakiness from TestSqoopOutputformatLoadExecutor
1538
1539   IMPROVEMENT
1540
1541     SQOOP-306: Move to a maven build
1542
1543     SQOOP-347: Pull versions into properties in the pom.xml
1544
1545     SQOOP-507: Update dist/pom.xml so that maven doesn't download tomcat every time
1546
1547     SQOOP-525: Enable dist package build by default
1548
1549     SQOOP-534: Add ability to find out if MPersistableEntity do already have persistent ID
1550
1551     SQOOP-545: Add IntelliJ IDEA files to RAT exclude
1552
1553     SQOOP-567: Support connection validation in JDBC repository
1554
1555     SQOOP-568: Configuration reload period should be configurable in PropertiesConfigurationProvider
1556
1557     SQOOP-573: Do not change working directory for client
1558
1559     SQOOP-581: Client should be sending used locale back to sqoop server to retrieve locale aware data
1560
1561     SQOOP-590: Switch Sqoop 2 to Apache Tomcat 6 For Better Integration With Apache Bigtop
1562
1563     SQOOP-612: Provide unit tests for derby metadata repository
1564
1565     SQOOP-618: Remove most important FindBugs warnings and errors in Sqoop 2
1566
1567     SQOOP-619: Display user persistent id of newly created connection and job objects
1568
1569     SQOOP-620: Introduce name to connection and job objects
1570
1571     SQOOP-625: Enforce checking advertised maximal size for MStringInput
1572
1573     SQOOP-629: Provide better exception handling during server-client communication
1574
1575     SQOOP-630: Check if connection/job is in use before deleting as deleting used entity might result in FK violations
1576
1577     SQOOP-642: Provide resource reading for both interactive and batch mode processing
1578
1579     SQOOP-645: Separate job engine to separate maven module
1580
1581     SQOOP-646: Provide support for "set" metadata in Sqoop 2
1582
1583     SQOOP-648: Move all string message in client to resource file for easy translation
1584
1585     SQOOP-662: Introduce pluggable configuration objects
1586
1587     SQOOP-667: We should persist in repository all properties of MSubmission metadata class
1588
1589     SQOOP-676: Add lastUpdateDate to MSubmission
1590
1591     SQOOP-677: Destroyer needs to be called from OutputCommitter
1592
1593     SQOOP-679: Wrap exception to MSubmission metadata object
1594
1595     SQOOP-681: Split configuration in Generic JDBC connector between job and connection
1596
1597     SQOOP-684: Encode type of the job into executed map reduce job
1598
1599     SQOOP-694: Introduce client "verbose" mode
1600
1601     SQOOP-704: Exclude patches from RAT checks in Sqoop2
1602
1603     SQOOP-719: Improve user experience with addtowar.sh script in Sqoop 2
1604
1605     SQOOP-722: Improve Sqoop 2 packaging
1606
1607     SQOOP-734: Change ConnectorBean to send JSON objects rather than sets of arrays
1608
1609     SQOOP-735: Introduce output format option to Sqoop 2 import
1610
1611     SQOOP-737: Give user option to set number of extractors and loaders
1612
1613     SQOOP-762: Sqoop2: Improve logging in mapreduce execution engine
1614
1615     SQOOP-776: Sqoop2: show connection command shows password in plain text
1616
1617   NEW FEATURE
1618
1619     SQOOP-531: Define connector execution lifecycle
1620
1621     SQOOP-532: Define intefaces for connector-defined execution classes
1622
1623     SQOOP-533: Intermediate data format support for import
1624
1625     SQOOP-588: MapReduce infrastructure for executing ETL framework
1626
1627     SQOOP-589: Framework-defined text/sequence loaders for HDFS
1628
1629     SQOOP-605: Generic JDBC connector for import
1630
1631     SQOOP-610: Job submission engine for import
1632
1633     SQOOP-613: Add support for integer type to metadata model
1634
1635     SQOOP-614: Provide client side ability to clone connection or job object
1636
1637     SQOOP-623: Add support for loading Map inputs in Sqoop2
1638
1639     SQOOP-624: Add test coverage plugin to root pom file
1640
1641     SQOOP-627: Convert forms structures on connector level to configuration classes
1642
1643     SQOOP-656: End to end submission engine
1644
1645     SQOOP-658: Solve hadoop dependency distribution/loading on server side
1646
1647     SQOOP-666: Introduce execution engine
1648
1649     SQOOP-712: Add support of Hadoop 1.x to Sqoop 2
1650
1651     SQOOP-716: Create server notification REST callback to get information if job has update
1652
1653     SQOOP-739: Connectors in Sqoop 2 should be versionable
1654
1655     SQOOP-740: Provide export submission engine implementation for Sqoop 2
1656
1657   TASK
1658
1659     SQOOP-491: Create configuration directory with documented configuration files under Sqoop2.
1660
1661     SQOOP-492: Implement a documentation system for Sqoop2
1662
1663     SQOOP-493: Distribution build for Sqoop2 should contain sources
1664
1665     SQOOP-494: Create client infrastructure to allow interactive selection of options of a command.
1666
1667     SQOOP-495: Support for parameter substitution in the client shell.
1668
1669     SQOOP-496: Refine the interface for Connector and Repository to support connection metadata
1670
1671     SQOOP-497: Enhance repository interface to support Connection CRUD
1672
1673     SQOOP-501: Infrastructure to support input of sensitive information like passwords in the client shell
1674
1675     SQOOP-502: Implement show connector command end-to-end
1676
1677     SQOOP-512: Intermediate data representation
1678
1679     SQOOP-514: Layout changes for Sqoop 2 distribution
1680
1681     SQOOP-544: Split job metadata for different job types (import, export)
1682
1683     SQOOP-576: Implement command "show framework" end to end
1684
1685     SQOOP-577: Design storage in derby repository for connect and job metadata
1686
1687     SQOOP-584: Create facility to validate user supplied connection and job forms
1688
1689     SQOOP-697: Put together documentation for Sqoop 2
1690
1691     SQOOP-733: Remove unnecessary version repetition in Sqoop 2 pom files
1692
1693     SQOOP-747: Sqoop 1.99.1 release preparation
1694