Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0043313 | ||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
backport | [Modules] External Integration Infrastructure | critical | have not tried | 2020-02-24 18:26 | 2020-03-02 12:07 | |||
Reporter | caristu | View Status | public | |||||
Assigned To | caristu | |||||||
Priority | high | Resolution | fixed | Fixed in Version | ||||
Status | closed | Fix in branch | Fixed in SCM revision | |||||
Projection | none | ETA | none | Target Version | ||||
OS | Any | Database | Any | Java version | ||||
OS Version | Database version | Ant version | ||||||
Product Version | SCM revision | |||||||
Merge Request Status | ||||||||
Regression date | ||||||||
Regression introduced by commit | ||||||||
Regression level | ||||||||
Review Assigned To | AugustoMauch | |||||||
Support ticket | ||||||||
OBNetwork customer | No | |||||||
Regression introduced in release | ||||||||
Summary | 0043313: Memory leak in SBOImporterStore and SBOExporterStore | |||||||
Description | The SBOImporterStore is an @ApplicationScoped bean that centralizes the generation of SBOImporters. To do so, it has an injection to point to retrieve the SBOImporter beans (which are @Dependant scoped) and retrieves the correct instance depending on an Entity Mapping in particular (this is because currently we support two kind of mapping types: ManualBOB and RetailAPI) The problem is that all these created instances are living as long as the bean instance they are injected in is living. As the SBOImporterStore is @ApplicationScoped they are never being garbage collected which can eventually lead to OutOfMemory errors (see attached images with a memory dump of an environment affected by this issue). This very same problem also happens with the SBOExporterStore. See here[1] for a more detailed explanation regarding this problem. [1] https://blog.akquinet.de/2017/01/04/dont-get-trapped-into-a-memory-leak-using-cdi-instance-injection/ [^] | |||||||
Steps To Reproduce | In description | |||||||
Proposed Solution | Avoid injecting the SBOImporter and SBOExportes in their corresponding application scoped stores. | |||||||
Tags | No tags attached. | |||||||
Attached Files | ||||||||
![]() |
||||||||
|
![]() |
|
(0118065) caristu (viewer) 2020-02-24 19:23 |
Backport MR: https://gitlab.com/openbravo/product/pmods/org.openbravo.service.external.integration/-/merge_requests/1 [^] |
(0118235) caristu (viewer) 2020-03-02 12:07 |
Backported to version 2.0.401: https://gitlab.com/openbravo/product/pmods/org.openbravo.service.external.integration/-/commit/e32748ce1ac4b9db72cf5e12745c9db850838798 [^] |
![]() |
|||
Date Modified | Username | Field | Change |
2020-02-24 18:26 | caristu | New Issue | |
2020-02-24 18:26 | caristu | Assigned To | => caristu |
2020-02-24 18:26 | caristu | OBNetwork customer | => No |
2020-02-24 18:26 | caristu | Issue generated from | 0043309 |
2020-02-24 18:27 | caristu | Relationship added | blocks 0043309 |
2020-02-24 19:23 | caristu | Review Assigned To | => AugustoMauch |
2020-02-24 19:23 | caristu | Note Added: 0118065 | |
2020-03-02 12:06 | caristu | Status | new => acknowledged |
2020-03-02 12:06 | caristu | Status | acknowledged => scheduled |
2020-03-02 12:07 | caristu | Note Added: 0118235 | |
2020-03-02 12:07 | caristu | Status | scheduled => resolved |
2020-03-02 12:07 | caristu | Resolution | open => fixed |
2020-03-02 12:07 | caristu | Status | resolved => closed |
Copyright © 2000 - 2009 MantisBT Group |