[
https://issues.apache.org/jira/browse/HCATALOG-370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Arup Malakar updated HCATALOG-370:
----------------------------------
Attachment: J370-patch4.diff
Summary of change:
1. Made the cache ThreadLocal
2. Catching Exception in shutdown hook and teardown()
3. Still using configuration to enable/disable the cache
All the other comments have been incorporated.
For item 2. I see that most of the online resources point towards catching
*Exception* only instead of Throwable and thus Error. As Error means some
low level error with JVM in which case probably there is no point for us to
proceed and try to close other clients.
Interesting discussion:
http://stackoverflow.com/questions/581878/why-catch-exceptions-in-java-when-you-can-catch-throwables
For item 3. I am more inclined towards keeping the configuration but should
definitely remove it in the next minor release itself.
> Create a HiveMetaStoreClient cache in hcatalog
> ----------------------------------------------
>
> Key: HCATALOG-370
> URL: https://issues.apache.org/jira/browse/HCATALOG-370
> Project: HCatalog
> Issue Type: Improvement
> Components: client
> Affects Versions: 0.4
> Reporter: Rohini Palaniswamy
> Assignee: Arup Malakar
> Priority: Minor
> Attachments: J370-patch1.diff, J370-patch2.diff, J370-patch3.diff,
> J370-patch4.diff, J370.patch
>
>
> Hcat makes multiple calls to hivemetastore client and every time the
> connection is setup and destroyed which is costly. It would be nice to have a
> centralized cache, that has a connection per unique identifier (ugi,hcat
> server uri and anything else mandatory). Instead of creating clients all over
> the code, it can be retrieved from this cache. Connections in the cache can
> be closed using WeakReference and ReferenceQueue or based on some time
> interval.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira