[
https://issues.apache.org/jira/browse/OOZIE-1683?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robert Kanter updated OOZIE-1683:
---------------------------------
Attachment: OOZIE-1683.patch
The patch closes the FileSystems opened by any UGIs that the
UserGroupInformationService has on shutdown. It also removes some redundant
code.
No tests, but I verified that the FileSystems are now being closed and removed
from the HDFS FileSystem cache.
> UserGroupInformationService should close any filesystems opened by it
> ---------------------------------------------------------------------
>
> Key: OOZIE-1683
> URL: https://issues.apache.org/jira/browse/OOZIE-1683
> Project: Oozie
> Issue Type: Bug
> Affects Versions: trunk
> Reporter: Robert Kanter
> Assignee: Robert Kanter
> Attachments: OOZIE-1683.patch
>
>
> When you create a FileSystem object in HDFS, it caches it. However, when
> using a UGI to get the FileSystem, it caches it to that object, not its
> “value”. In other words, if you create two UGIs for foo to impersonate bar,
> then they will each create an entry in the cache. In Oozie, we created a
> UserGroupInformationService class that basically sits on top of the HDFS
> cache and caches the UGI objects for impersonating a user so we can reuse the
> same FileSystem object each time. However, when running unit tests, we
> typically destroy and recreate the services for each test (sometimes even
> more) so Oozie’s cache was being lost and we were effectively creating a new
> FileSystem object all the time without closing it.
> Looking at a heap dump after running many of the tests, we saw that there
> were 800+ FileSystem objects open for the same FileSystem.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)