Marko A. Rodriguez created TINKERPOP-1444:
---------------------------------------------

             Summary: Benchmark bytecode->Traversal creation and implement 
GremlinServer cache if necessary.
                 Key: TINKERPOP-1444
                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1444
             Project: TinkerPop
          Issue Type: Improvement
          Components: benchmark, language-variant, process, server
    Affects Versions: 3.2.2
            Reporter: Marko A. Rodriguez


Right now, when you send {{Bytecode}} to GremlinServer, it will convert the 
bytecode to a traversal either via Java reflection (Gremlin-Java) or script 
engine evaluation (e.g. Gremlin-Groovy, Gremlin-Python).

We should see how fast the process is to go from Bytecode to Traversal and if 
its "slow" we should create a {{Map<Bytecode,Traversal>}}-cache in 
GremlinServer.

The reasons it may be "slow" are:

1. {{JavaTranslator}} uses Java reflection to translate bytecode to traversal 
and that code is a little "thick" and either should be optimized (if possible) 
or, instead, bytecode/traversal translations should be cached.

2. {{Groovy/PythonTranslator}} uses string construction to generate a script 
from the bytecode. While that script may be cached, it would be good if we have 
a cache prior to that which simply just grabs the traversal from a bytecode 
cache.

I think that we will definitely want a cache as it should make things fast, but 
it will be good to know how much faster prior to diving into such work.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to