Commit Graph

182 Commits

Author SHA1 Message Date
Chen Liang 576f99ba40 HADOOP-17330. Backport HADOOP-16005 NativeAzureFileSystem does not support setXAttr to branch-3.2. Contributed by Sally Zuo. 2020-10-28 15:39:18 -07:00
Steve Loughran 42c71a5790
HADOOP-15691. Add PathCapabilities to FileSystem and FileContext.
Contributed by Steve Loughran.

This complements the StreamCapabilities Interface by allowing applications to probe for a specific path on a specific instance of a FileSystem client
to offer a specific capability.

This is intended to allow applications to determine

* Whether a method is implemented before calling it and dealing with UnsupportedOperationException.
* Whether a specific feature is believed to be available in the remote store.

As well as a common set of capabilities defined in CommonPathCapabilities,
file systems are free to add their own capabilities, prefixed with
 fs. + schema + .

The plan is to identify and document more capabilities -and for file systems which add new features, for a declaration of the availability of the feature to always be available.

Note

* The remote store is not expected to be checked for the feature;
  It is more a check of client API and the client's configuration/knowledge
  of the state of the remote system.
* Permissions are not checked.
2020-08-19 17:15:06 +01:00
Steve Loughran e21cb8f96e HADOOP-16785. Improve wasb and abfs resilience on double close() calls.
This hardens the wasb and abfs output streams' resilience to being invoked
in/after close().

wasb:
  Explicity raise IOEs on operations invoked after close,
  rather than implicitly raise NPEs.
  This ensures that invocations which catch and swallow IOEs will perform as
  expected.

abfs:
  When rethrowing an IOException in the close() call, explicitly wrap it
  with a new instance of the same subclass.
  This is needed to handle failures in try-with-resources clauses, where
  any exception in closed() is added as a suppressed exception to the one
  thrown in the try {} clause
  *and you cannot attach the same exception to itself*

Contributed by Steve Loughran.

Change-Id: Ic44b494ff5da332b47d6c198ceb67b965d34dd1b
2020-01-08 12:04:11 +00:00
Sneha Vijayarajan aa9cd0a2d6
HADOOP-16660. ABFS: Make RetryCount in ExponentialRetryPolicy Configurable.
Contributed by Sneha Vijayarajan.
2019-12-08 21:32:13 -08:00
bilaharith c225efe237
HADOOP-16455. ABFS: Implement FileSystem.access() method.
Contributed by Bilahari T H.
2019-12-08 21:32:02 -08:00
Jeetesh Mangwani b1e748f45b
HADOOP-16612. Track Azure Blob File System client-perceived latency
Contributed by Jeetesh Mangwani.

This add the ability to track the end-to-end performance of ADLS Gen 2 REST APIs by measuring latency in the Hadoop ABFS driver.
The latency information is sent back to the ADLS Gen 2 REST API endpoints in the subsequent requests.
2019-12-08 21:31:51 -08:00
bilaharith ffeb6d8ece
HADOOP-16587. Make ABFS AAD endpoints configurable.
Contributed by Bilahari T H.

This also addresses HADOOP-16498: AzureADAuthenticator cannot authenticate
in China.

Change-Id: I2441dd48b50b59b912b0242f7f5a4418cf94a87c
2019-12-08 21:31:39 -08:00
Sneha Vijayarajan 8b2c7e0c4d
HADOOP-16578 : Avoid FileSystem API calls when FileSystem already exists 2019-12-08 21:31:24 -08:00
Sneha Vijayarajan 546db6428e
HADOOP-16548 : Disable Flush() over config 2019-12-08 21:31:08 -08:00
Da Zhou fe96407451
HADOOP-16640. WASB: Override getCanonicalServiceName() to return URI
(cherry picked from commit 9a8edb0aed)
2019-10-16 14:27:11 -07:00
bilaharith 3b3c0c4b87 HADOOP-16479. ABFS FileStatus.getModificationTime returns localized time instead of UTC.
Contributed by Bilahari T H

Change-Id: I532055baaadfd7c324710e4b25f60cdf0378bdc0
2019-08-27 19:08:38 +00:00
Robert Levas ce23e971b4 HADOOP-16340. ABFS driver continues to retry on IOException responses from REST operations.
Contributed by Robert Levas.

This makes the HttpException constructor protected rather than public, so it is possible
to implement custom subclasses of this exception -exceptions which will not be retried.

Change-Id: Ie8aaa23a707233c2db35948784908b6778ff3a8f
2019-08-27 19:08:29 +00:00
Da Zhou a6d50a9054 HADOOP-16376. ABFS: Override access() to no-op.
Contributed by Da Zhou.

Change-Id: Ia0024bba32250189a87eb6247808b2473c331ed0
2019-08-27 19:04:16 +00:00
Da Zhou dd636127e9 HADOOP-16269. ABFS: add listFileStatus with StartFrom.
Author:    Da Zhou
2019-08-27 19:01:21 +00:00
Da Zhou 330e450397
HADOOP-16315. ABFS: transform full UPN for named user in AclStatus
Contributed by Da Zhou

Change-Id: Ibc78322415fcbeff89c06c8586c53f5695550290
2019-08-12 09:41:52 +08:00
Arun Singh 5f2d07af1b
HADOOP-16404. ABFS default blocksize change(256MB from 512MB)
Contributed by: Arun Singh
2019-07-19 20:34:28 -07:00
Da Zhou bf0bb2470f
HADOOP-16242. ABFS: add bufferpool to AbfsOutputStream.
Contributed by Da Zhou.

(cherry picked from commit 1cef194a28)
2019-06-07 18:09:38 +01:00
Vishwajeet Dusane 907a016142
HADOOP-16182. Update abfs storage back-end with "close" flag when application is done writing to a file.
Contributed by Vishwajeet Dusane.

(cherry picked from commit 1edf1914ac)
2019-06-07 18:09:37 +01:00
Shweta Yakkali 6b115966bc
HADOOP-16157. [Clean-up] Remove NULL check before instanceof in AzureNativeFileSystemStore
(Contributed by Shweta Yakkali via Daniel Templeton)

Change-Id: I6269ae66378e46eed440a76f847ae1af1fa95450
(cherry picked from commit bb8ad096e7)
2019-06-07 18:09:37 +01:00
Shweta Yakkali 57c6060c3a
HADOOP-15860. ABFS: Throw exception when directory / file name ends with a period (.).
Contributed by Shweta Yakkali.

(cherry picked from commit 13f0ee21f2)

Change-Id: Ibd010d2e6adc15f53a9c5357482e57313bf84d2e
2019-06-07 18:09:37 +01:00
Da Zhou 3593b66693
HADOOP-15823. ABFS: Stop requiring client ID and tenant ID for MSI
(Contributed by Da Zhou via Daniel Templeton)

Change-Id: I546ab3a1df1efec635c08c388148e718dc4a9843
(cherry picked from commit e374584479)
2019-06-07 18:09:37 +01:00
Denes Gerencser ede5cbd707
HADOOP-16174. Disable wildfly logs to the console.
Follow-on to HADOOP-15851.

Author:    Denes Gerencser <dgerencser@cloudera.com>
(cherry picked from commit ddede7ae6f)
2019-06-07 18:09:37 +01:00
Steve Loughran 96489069b0
HADOOP-15851. Disable wildfly logs to the console.
Contributed by Vishwajeet Dusane.

(cherry picked from commit ef9dc6c44c)
2019-06-07 18:09:37 +01:00
Da Zhou cfaf21a4ba
HADOOP-16169. ABFS: Bug fix for getPathProperties.
Author:    Da Zhou <da.zhou@microsoft.com>
(cherry picked from commit e0260417ad)
2019-03-08 13:53:44 +00:00
Da Zhou dc38fc598d
HADOOP-16136. ABFS: Should only transform username to short name
Contributed by Da Zhou.

(cherry picked from commit 3988e75ca3)
Signed-off-by: Steve Loughran <stevel@apache.org>
2019-03-05 10:47:58 +00:00
Da Zhou 075f6b061c
HADOOP-15954. ABFS: Enable owner and group conversion for MSI and login user using OAuth.
Contributed by Da Zhou and Junhua Gu.

(cherry picked from commit 1f1655028e)
Signed-off-by: Steve Loughran <stevel@apache.org>
2019-03-05 10:44:46 +00:00
Da Zhou ae832ccffe
HADOOP-16041. Include Hadoop version in User-Agent string for ABFS.
Contributed by Shweta Yakkali.

Signed-off-by: Sean Mackrory <mackrorysd@apache.org>
(cherry picked from commit 02eb91856e)
Signed-off-by: Steve Loughran <stevel@apache.org>
2019-03-05 10:39:37 +00:00
Steve Loughran 685a41f449
HADOOP-16105. WASB in secure mode does not set connectingUsingSAS.
Contributed by Steve Loughran.

(cherry picked from commit 9cb2f470b759bbe7609a00e8f8f72779e2daae80)
2019-02-21 13:39:37 +00:00
Da Zhou 84ce0f1bfa
HADOOP-16074. WASB: Update container not found error code.
Contributed by Da Zhou.

(cherry picked from commit ba9efe06fa)
2019-02-05 14:41:15 +00:00
Da Zhou 29de303e0a
HADOOP-16048. ABFS: Fix Date format parser.
Contributed by Da Zhou.

(cherry picked from commit 00ad9e23e8)
2019-01-22 16:41:33 +00:00
Da Zhou 1d4390e16b
HADOOP-16044. ABFS: Better exception handling of DNS errors followup
Contributed by Da Zhou.

(cherry picked from commit 30863c5ae3)
2019-01-14 19:45:30 +00:00
Da Zhou 8b5fbe7a12
HADOOP-15975. ABFS: remove timeout check for DELETE and RENAME.
Contributed by Da Zhou.
2019-01-11 11:12:39 +00:00
Da Zhou 9cb6000c8a
HADOOP-16036. WASB: Disable jetty logging configuration announcement.
Contributed by Da Zhou.

(cherry picked from commit 852701f793)
2019-01-10 12:08:27 +00:00
Da Zhou 6c2500d7ca
HADOOP-15662. Better exception handling of DNS errors.
Contributed by Da Zhou.

(cherry picked from commit 7211269142)
2019-01-10 12:03:48 +00:00
Da Zhou f7de630e85
HADOOP-16040. ABFS: Bug fix for tolerateOobAppends configuration.
Contributed by Da Zhou.

(cherry picked from commit e8d1900369)
2019-01-10 11:59:29 +00:00
Da Zhou f122ae7279
HADOOP-16004. ABFS: Convert 404 error response in AbfsInputStream and AbfsOutPutStream to FileNotFoundException.
Contributed by Da Zhou.

(cherry picked from commit 346c0c8aff)
2018-12-17 11:18:12 +00:00
Da Zhou d09dbcc8fb
HADOOP-15972 ABFS: reduce list page size to to 500.
Contributed by Da Zhou.
2018-12-17 11:08:17 +00:00
Da Zhou 87d9a54968
HADOOP-15969. ABFS: getNamespaceEnabled can fail blocking user access thru ACLs.
Contributed by Da Zhou.

(cherry picked from commit b2523d8100)
2018-12-17 11:05:39 +00:00
Da Zhou 2d2212a508
HADOOP-15968. ABFS: add try catch for UGI failure when initializing ABFS.
Contributed by Da Zhou.

(cherry picked from commit a8bbd818d5)
2018-12-04 13:40:03 +00:00
Da Zhou 9bc1fd4721
HADOOP-15957. WASB: Add asterisk wildcard support for PageBlobDirSet.
Contributed by Da Zhou.

(cherry picked from commit 7ccb640a66)
2018-11-30 10:13:57 +00:00
Da Zhou 1a3a4960d9
HADOOP-15940. ABFS: For HNS account, avoid unnecessary get call when doing Rename.
Contributed by Da Zhou <da.zhou@microsoft.com>
2018-11-27 18:11:30 +00:00
Da Zhou f5d2806c81
HADOOP-15872. ABFS: Update to target 2018-11-09 REST version for ADLS Gen 2.
Contributed by Junhua Gu and Da Zhou.

(cherry picked from commit a8302e398c)
2018-11-23 14:19:36 +00:00
Da Zhou 4039840510
HADOOP-15876. Use keySet().removeAll() to remove multiple keys from Map in AzureBlobFileSystemStore
Contributed by Da Zhou.

(cherry picked from commit a13be203b7)
2018-11-13 21:48:05 +00:00
Da Zhou 7440bc5a9c
HADOOP-15812. ABFS: Improve AbfsRestOperationException format to ensure full msg can be displayed on console.
Author:    Da Zhou <da.zhou@microsoft.com>
(cherry picked from commit 9dbb2b67c6)
2018-11-09 11:07:51 +00:00
Junhua Gu 66715005f9
HADOOP-15846. ABFS: fix mask related bugs in setAcl, modifyAclEntries and removeAclEntries.
Contributed by Junhua Gu.
2018-11-08 17:20:52 +00:00
Steve Loughran 83b9b25c51
HADOOP-15809. ABFS: better exception handling when making getAccessToken call.
Contributed by Da Zhou

(cherry picked from commit 273cc2d4e9)
2018-10-05 11:29:43 +01:00
Steve Loughran c6942a315b
HADOOP-15792. typo in AzureBlobFileSystem.getIsNamespaceEnabeld.
Contributed by Abhishek Modi.

(cherry picked from commit e8b8604314)
2018-10-03 12:59:16 +01:00
Steve Loughran e5e9d7b595
HADOOP-15795. Make HTTPS the default protocol for ABFS.
Contributed by Da Zhou.

(cherry picked from commit 7051bd78b1)
2018-10-03 12:53:56 +01:00
Steve Loughran a383ac47ca
HADOOP-15801. ABFS: Fixing skipUserGroupMetadata in AzureBlobFileSystemStore.
Contributed by Da Zhou
2018-10-02 11:42:52 +01:00
Steve Loughran d5da9928c9 HADOOP-15723. ABFS: Ranger Support.
Contributed by Yuan Gao.
2018-09-25 19:13:10 +01:00