[
https://issues.apache.org/jira/browse/TINKERPOP-1911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16388277#comment-16388277
]
ASF GitHub Bot commented on TINKERPOP-1911:
-------------------------------------------
GitHub user spmallette opened a pull request:
https://github.com/apache/tinkerpop/pull/812
TINKERPOP-1911 Refactored JavaTranslator
Cached methods that were being reflected on every translation which
improved performance a bit. Here's how it runs before the change:
```text
Benchmark Mode Cnt
Score Error Units
JavaTranslatorBenchmark.testTranslationLong thrpt 20
13267.284 ± 1166.704 ops/s
JavaTranslatorBenchmark.testTranslationMedium thrpt 20
334756.147 ± 23429.373 ops/s
JavaTranslatorBenchmark.testTranslationShort thrpt 20
1381906.511 ± 141710.801 ops/s
JavaTranslatorBenchmark.testTranslationWithStrategy thrpt 20
36350.729 ± 2518.351 ops/s
```
and here's how it runs after:
```text
Benchmark Mode Cnt
Score Error Units
JavaTranslatorBenchmark.testTranslationLong thrpt 20
15801.483 ± 546.613 ops/s
JavaTranslatorBenchmark.testTranslationMedium thrpt 20
365673.060 ± 6101.193 ops/s
JavaTranslatorBenchmark.testTranslationShort thrpt 20
1560609.216 ± 37680.931 ops/s
JavaTranslatorBenchmark.testTranslationWithStrategy thrpt 20
39533.823 ± 1317.264 ops/s
```
Not a huge difference but seemed to be worth doing.
All tests pass with `mvn clean install && mvn verify -pl gremlin-server
-DskipIntegrationTests=false`
VOTE +1
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/tinkerpop TINKERPOP-1911
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/tinkerpop/pull/812.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #812
----
commit d9db27f4aa7b8227a557cf5bbb31203612d7548f
Author: Stephen Mallette <spmva@...>
Date: 2018-03-06T18:00:30Z
TINKERPOP-1911 Refactored JavaTranslator
Cached methods that were being reflected on every translation which
improved performance a bit.
----
> Refactor JavaTranslator to cache all reflective calls
> -----------------------------------------------------
>
> Key: TINKERPOP-1911
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1911
> Project: TinkerPop
> Issue Type: Improvement
> Components: process
> Affects Versions: 3.2.7
> Reporter: stephen mallette
> Assignee: stephen mallette
> Priority: Major
>
> For some reason {{JavaTranslator}} still has some reflection calls in it that
> are called on every {{Bytecode}} translation. We should cache the results of
> those expensive methods.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)