[ 
https://issues.apache.org/jira/browse/HBASE-28222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17792430#comment-17792430
 ] 

Hudson commented on HBASE-28222:
--------------------------------

Results for branch branch-3
        [build #95 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-3/95/]: 
(/) *{color:green}+1 overall{color}*
----
details (if available):

(/) {color:green}+1 general checks{color}
-- For more information [see general 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-3/95/General_20Nightly_20Build_20Report/]




(/) {color:green}+1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3) 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-3/95/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/]


(/) {color:green}+1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-3/95/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/]


(/) {color:green}+1 source release artifact{color}
-- See build output for details.


(/) {color:green}+1 client integration test{color}


> Leak in ExportSnapshot during verifySnapshot on S3A
> ---------------------------------------------------
>
>                 Key: HBASE-28222
>                 URL: https://issues.apache.org/jira/browse/HBASE-28222
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Bryan Beaudreault
>            Assignee: Bryan Beaudreault
>            Priority: Major
>             Fix For: 2.6.0, 3.0.0-beta-1
>
>
> Each S3AFileSystem creates an S3AInstrumentation and various metrics sources, 
> with no real way to disable that. In HADOOP-18526, a bug was fixed so that 
> these are not leaked. But in order to use that, you must call 
> S3AFileSystem.close() when done.
> In ExportSnapshot, ever since HBASE-12819 we set fs.impl.disable.cache to 
> true. It looks like that was added in order to prevent conflicting calls to 
> close() between mapper and main thread when running in a single JVM.
> When verifySnapshot is enabled, SnapshotReferenceUtil.verifySnapshot iterates 
> all storefiles (could be many thousands) and calls 
> SnapshotReferenceUtil.verifyStoreFile on them. verifyStoreFile makes a number 
> of static calls which end up in CommonFSUtils.getRootDir, which does 
> Path.getFileSystem().
> Since the FS cache is disabled, every single call to Path.getFileSystem() 
> creates a new FileSystem instance. That FS is short lived, and gets GC'd. But 
> in the case of S3AFileSystem, this leaks all of the metrics stuff.
> We have two easy possible fixes:
>  # Only set fs.impl.disable.cache when running hadoop in local mode, since 
> that was the original problem.
>  # When calling verifySnapshot, create a new Configuration which does not 
> include the fs.impl.disable.cache setting.
> I tested out #2 in my environment and it fixed the leak.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to