Uploaded image for project: 'TinkerPop'
  1. TinkerPop
  2. TINKERPOP-732

gremlin-server GraphSON serializer issue with tree()

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0.2-incubating
    • io
    • None

    Description

      When using the tree() step with a GraphSON serializer the server hangs (though I've seen some form of serialization errors in more complex scenarios over titan).

      The following works fine in the console but fails using the graphSON serializer:

      g.V(1).repeat(out()).until(out().count().is(0)).tree() // fails with .next() as well
      

      The following works without a problem though:

      g.V(1).repeat(out()).until(out().count().is(0))
      

      Here's the configuration file I use for these tests:

      host: localhost
      port: 8182
      threadPoolWorker: 1
      gremlinPool: 8
      scriptEvaluationTimeout: 30000
      serializedResponseTimeout: 30000
      channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
      graphs: {
        graph: conf/tinkergraph-empty.properties
      }
      plugins:
        - tinkerpop.tinkergraph
      scriptEngines: {
        gremlin-groovy: {
          imports: [java.lang.Math],
          staticImports: [java.lang.Math.PI],
          scripts: [scripts/generate-classic.groovy]}}
      serializers:
        - { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0 }
        - { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { serializeResultToString: true }}
        - { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0 }
        - { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0 }
      processors:
        - { className: org.apache.tinkerpop.gremlin.server.op.session.SessionOpProcessor, config: { sessionTimeout: 28800000 }}
      metrics: {
        consoleReporter: {enabled: true, interval: 180000},
        csvReporter: {enabled: true, interval: 180000, fileName: /tmp/gremlin-server-metrics.csv},
        jmxReporter: {enabled: true},
        slf4jReporter: {enabled: true, interval: 180000},
        gangliaReporter: {enabled: false, interval: 180000, addressingMode: MULTICAST},
        graphiteReporter: {enabled: false, interval: 180000}
      }
      threadPoolBoss: 1
      maxInitialLineLength: 4096
      maxHeaderSize: 8192
      maxChunkSize: 8192
      maxContentLength: 65536
      maxAccumulationBufferComponents: 1024
      resultIterationBatchSize: 64
      writeBufferHighWaterMark: 32768
      writeBufferHighWaterMark: 65536
      ssl: {
        enabled: false} 
      

      Attachments

        Activity

          People

            dmill Dylan Millikin
            dmill Dylan Millikin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: