[ https://issues.apache.org/jira/browse/JOHNZON-161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16391897#comment-16391897 ]
Romain Manni-Bucau commented on JOHNZON-161: -------------------------------------------- It is in the javadoc: https://javadoc.io/doc/javax.json.bind/javax.json.bind-api/1.0. If you dont close it you assume no cdi bean has been used by the runtime which is unknown from user perspective - even if you control your models since jsonb can use cdi beans if desired implicitly here. Also technically there is no way it works otherwise. Weak* solution will lead to classnotfound or missed predestroy which can be a disaster in some apps. Examples not calling close are either wrong or - as i want to think - shortcuts to show something else. > JohnzonCDIExtension might create a mem leak > ------------------------------------------- > > Key: JOHNZON-161 > URL: https://issues.apache.org/jira/browse/JOHNZON-161 > Project: Johnzon > Issue Type: Task > Components: JSON-B > Affects Versions: 1.1.7 > Reporter: Mark Struberg > Priority: Major > Fix For: 1.1.8 > > > We use Json-B quite heavily and I experienced that there are tons of elements > in org.apache.johnzon.jsonb.cdi.JohnzonCdiExtension#jsonbs. > Way too much for my gut feeling. > The reason is that we do not use JsonBuilder as autocloseable is that it is > not required by the spec. > > There is also not much documentation for JohnzonCdiExtension, so I can only > guess that it is for cleanly shutting down unused JsonbBuilder instances when > the app stops. > We should probably only store WeakReferences. > > I think the safest -- This message was sent by Atlassian JIRA (v7.6.3#76005)