You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "stephen mallette (JIRA)" <ji...@apache.org> on 2015/09/11 21:50:46 UTC
[jira] [Closed] (TINKERPOP3-817) Gryo serialization of large
responses fails and causes protocol desync
[ https://issues.apache.org/jira/browse/TINKERPOP3-817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stephen mallette closed TINKERPOP3-817.
---------------------------------------
Resolution: Fixed
> Gryo serialization of large responses fails and causes protocol desync
> ----------------------------------------------------------------------
>
> Key: TINKERPOP3-817
> URL: https://issues.apache.org/jira/browse/TINKERPOP3-817
> Project: TinkerPop 3
> Issue Type: Bug
> Components: driver
> Affects Versions: 3.0.1-incubating
> Reporter: Geoff Reedy
> Assignee: stephen mallette
> Fix For: 3.1.0-incubating, 3.0.2-incubating
>
>
> Serialization of large responses in Gryo is not done correctly. It looks like there is some sort of framing or fragmentation issue. I haven't tracked it down the the root cause. It can be reproduced by sending the query {{"x" * 4066}} whereas {{"x" * 4065}} works.
> With debug logging turned on, the server indicates that it is writing the correct response message but when it is serialized it comes out only as the single byte 0x01.
> The error on the client is, in this case,
> bq. io.netty.handler.codec.DecoderException: org.apache.tinkerpop.gremlin.driver.ser.SerializationException: org.apache.tinkerpop.shaded.kryo.KryoException: Buffer too small: capacity: 1, required: 8
> but different response sizes give different errors, for example, {{"x" * 10000}} gives
> bq. io.netty.handler.codec.DecoderException: org.apache.tinkerpop.gremlin.driver.ser.SerializationException: java.lang.IndexOutOfBoundsException: Index: 118, Size: 0
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)