[
https://issues.apache.org/jira/browse/TINKERPOP-1095?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
stephen mallette updated TINKERPOP-1095:
----------------------------------------
Attachment: allocations-before.png
allocations-after.png
gc-before.png
gc-after.png
Attached JMC analysis of memory usage "before" - the head of tp32 and "after"
the changes on TINKERPOP-1095. Note that there is less GC action and the
reduction in {{byte[]}} allocations due to the internals of the
{{SimpleScriptContext}}. The new {{GremlinScriptContext}} eliminates the
unnecessary allocations basically.
> Create a custom ScriptContext
> -----------------------------
>
> Key: TINKERPOP-1095
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1095
> Project: TinkerPop
> Issue Type: Improvement
> Components: groovy
> Affects Versions: 3.1.0-incubating
> Reporter: stephen mallette
> Assignee: stephen mallette
> Attachments: allocations-after.png, allocations-before.png,
> gc-after.png, gc-before.png
>
>
> The current {{ScriptContext}} in use with the {{ScriptEngine}} is the
> {{SimpleScriptContext}}. It doesnt' allow for additional scopes which might
> be useful when dealing with the {{ScriptEnginePluginAcceptor}} which allows
> plugins to inject "global" bindings into the a {{ScriptEngine}} instance
> (e.g. the "hdfs" object with the hadoop plugin).
> We currently inject this into the {{GLOBAL_SCOPE}} of the {{ScriptEngine}}
> which at the moment doesn't seem to conflict with anything, but I wonder if
> more separation is required.
> Another alternative would be to manage these types of "globals" with new
> methods on the {{DependencyManager}} interface.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)