f365957c63
S3A to implement S3 Select through this API. The new openFile() API is asynchronous, and implemented across FileSystem and FileContext. The MapReduce V2 inputs are moved to this API, and you can actually set must/may options to pass in. This is more useful for setting things like s3a seek policy than for S3 select, as the existing input format/record readers can't handle S3 select output where the stream is shorter than the file length, and splitting plain text is suboptimal. Future work is needed there. In the meantime, any/all filesystem connectors are now free to add their own filesystem-specific configuration parameters which can be set in jobs and used to set filesystem input stream options (seek policy, retry, encryption secrets, etc). Contributed by Steve Loughran
73 lines
2.6 KiB
XML
73 lines
2.6 KiB
XML
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<FindBugsFilter>
|
|
|
|
<!-- same code as in FileSystem is triggering the same warning. -->
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3native.S3xLoginHelper" />
|
|
<Method name="checkPath" />
|
|
<Bug pattern="ES_COMPARING_STRINGS_WITH_EQ" />
|
|
</Match>
|
|
<!-- Redundant null check makes code clearer, future-proof here. -->
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.S3AFileSystem" />
|
|
<Method name="s3Exists" />
|
|
<Bug pattern="RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE" />
|
|
</Match>
|
|
|
|
<!--
|
|
This extends the serializable S3Object, so findbug checks
|
|
serializability. It is never serialized however, so its
|
|
warnings are false positives.
|
|
-->
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.InconsistentS3Object" />
|
|
<Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED" />
|
|
</Match>
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.InconsistentS3Object" />
|
|
<Bug pattern="SE_NO_SERIALVERSIONID" />
|
|
</Match>
|
|
|
|
<!--
|
|
findbugs gets confused by lambda expressions in synchronized methods
|
|
and considers references to fields to be unsynchronized.
|
|
As you can't disable the methods individually, we have to disable
|
|
them for the entire class.
|
|
-->
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.S3AInputStream"/>
|
|
<Bug pattern="IS2_INCONSISTENT_SYNC"/>
|
|
</Match>
|
|
<!--
|
|
findbugs reporting RV ignored. Not true.
|
|
"Return value of S3AReadOpContext.getReadInvoker() ignored,
|
|
but method has no side effect"
|
|
-->
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.S3AInputStream"/>
|
|
<Method name="reopen"/>
|
|
<Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
|
|
</Match>
|
|
<Match>
|
|
<Class name="org.apache.hadoop.fs.s3a.S3AFileSystem"/>
|
|
<Method name="openFileWithOptions"/>
|
|
<Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
|
|
</Match>
|
|
|
|
</FindBugsFilter>
|