[
https://issues.apache.org/jira/browse/HIVE-25416?focusedWorklogId=642069&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-642069
]
ASF GitHub Bot logged work on HIVE-25416:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 26/Aug/21 00:25
Start Date: 26/Aug/21 00:25
Worklog Time Spent: 10m
Work Description: shezhiming commented on pull request #2555:
URL: https://github.com/apache/hive/pull/2555#issuecomment-905964260
@nrg4878 Could you please review this fix ?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 642069)
Time Spent: 20m (was: 10m)
> Hive metastore memory leak cause datanucleus-api-jdo bug
> --------------------------------------------------------
>
> Key: HIVE-25416
> URL: https://issues.apache.org/jira/browse/HIVE-25416
> Project: Hive
> Issue Type: Bug
> Components: Standalone Metastore
> Affects Versions: 3.1.2
> Reporter: shezm
> Assignee: shezm
> Priority: Major
> Labels: pull-request-available
> Fix For: 3.1.3
>
> Attachments: leak.jpg
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> I encountered a memory leak case. The MAT info :
> !leak.jpg!
> Full error message is :
> {code:java}
> Cannot get Long result for param = 8 for column "`FUNCS`.`FUNC_ID`" :
> Operation not allowed after ResultSet closed{code}
> This is because there is a bug in the JDOPersistenceManager.retrieveAll code.
> {code:java}
> // code placeholder
> JDOPersistenceManager{
> public void retrieveAll(Collection pcs, boolean useFetchPlan) {
> this.assertIsOpen();
> ArrayList failures = new ArrayList();
> Iterator i = pcs.iterator();
> while(i.hasNext()) {
> try {
> this.jdoRetrieve(i.next(), useFetchPlan);
> } catch (RuntimeException var6) {
> failures.add(var6);
> }
> }
> if (!failures.isEmpty()) {
> throw new JDOUserException(Localiser.msg("010038"),
> (Exception[])((Exception[])failures.toArray(new Exception[failures.size()])));
> }
> }
> }
> {code}
> In some extreme cases the function of next() does not work . This will
> result in a very large failures ArrayList like as shown above.
>
> The bug detail can see this :
> [https://github.com/datanucleus/datanucleus-api-jdo/issues/106]
> This problem is fixed in datanucleus-api-jdo version 5.2.6. So we should
> upgrade it .
>
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)