]> git.basschouten.com Git - openhab-addons.git/commit
[jsscripting] Fix memory leak that crashes openHAB (#13824)
authorFlorian Hotze <florianh_dev@icloud.com>
Fri, 2 Dec 2022 23:17:39 +0000 (00:17 +0100)
committerGitHub <noreply@github.com>
Fri, 2 Dec 2022 23:17:39 +0000 (00:17 +0100)
commit42b8505bef4a96012700c27ed5812734ac425792
tree4fe7e484541e756ef5fe24644874ffe5a53a4529
parent224d86e88adecb47b96dd2ef257cfcc61f54d6ec
[jsscripting] Fix memory leak that crashes openHAB (#13824)

* [jsscripting] Fix memory-leak caused by com.oracle.truffle.host.HostObject

Fixes this memory leak by making the HostAccess for the GraalJSScriptEngine available in a static final variable instead of creating it for each new engine.
Solution proposed in https://github.com/oracle/graaljs/issues/121#issuecomment-690179954.

Sharing a single engine across all Contexts (as proposed in https://github.com/oracle/graaljs/issues/121#issuecomment-880056648) is not possible, because core expects a ScriptEngine.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
* [jsscripting] Update JavaDoc

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
* [jsscripting] Close `GraalJSScriptEngine` when `OpenhabGraalJSScriptEngine` is closed

My breakpoint inside the close method of GraalJSScriptEngine did not trigger until this change was made.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
bundles/org.openhab.automation.jsscripting/src/main/java/org/openhab/automation/jsscripting/internal/OpenhabGraalJSScriptEngine.java