[ 
https://issues.apache.org/jira/browse/HIVE-25416?focusedWorklogId=762733&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-762733
 ]

ASF GitHub Bot logged work on HIVE-25416:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 27/Apr/22 06:42
            Start Date: 27/Apr/22 06:42
    Worklog Time Spent: 10m 
      Work Description: zzzzming95 commented on PR #2555:
URL: https://github.com/apache/hive/pull/2555#issuecomment-1110604244

   > @nrg4878: Is it intentional that we left 
[HIVE-25416](https://issues.apache.org/jira/browse/HIVE-25416) open?
   
   i
   
   > @nrg4878: Is it intentional that we left 
[HIVE-25416](https://issues.apache.org/jira/browse/HIVE-25416) open?
   
   sorry , I forget to change the status , now i make it as RESOLVED.




Issue Time Tracking
-------------------

    Worklog Id:     (was: 762733)
    Time Spent: 2h 20m  (was: 2h 10m)

> Hive metastore memory leak because 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: 4.0.0
>
>         Attachments: leak.jpg
>
>          Time Spent: 2h 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.20.7#820007)

Reply via email to