
titan core 2.0 bug : com.esotericsoftware.kryo.KryoException: Buffer too small: capacity: 2, require
Question:
I have a titan graph setup using following versions of software.
Cassandra version : 2.0.6
Titan version : 0.4.2
5 cassandra server with replication factor 3.
Recently, all of sudden, we have started getting following error intermittently.
com.esotericsoftware.kryo.KryoException: Buffer too small: capacity: 2, required: 8
I searched net and found that there is a bug filed relating to same error. Bug is pertaining to kryo API. <a href="https://code.google.com/p/kryo/issues/detail?id=124" rel="nofollow">https://code.google.com/p/kryo/issues/detail?id=124</a>
Fix of above bug is not incorporated in titan-0.4.2 version.
On cassandra server we have not run repair database for many days (6 months). Can it be the issue with inconsistent data on cassandra server?
Can you please suggest the reason for this bug and how to approach solving it?
Answer1:Judging from this issue (which discusses Faunus, but is likely very related), i'm not so sure that there is a solution:
<a href="https://github.com/thinkaurelius/titan/issues/809" rel="nofollow">https://github.com/thinkaurelius/titan/issues/809</a>
According to the issue, it looks like the 0.4.x solution was to change the hardcoded limit and recompile:
<a href="https://github.com/thinkaurelius/titan/blob/0.4.4/titan-core/src/main/java/com/thinkaurelius/titan/graphdb/database/serialize/kryo/KryoSerializer.java#L37" rel="nofollow">https://github.com/thinkaurelius/titan/blob/0.4.4/titan-core/src/main/java/com/thinkaurelius/titan/graphdb/database/serialize/kryo/KryoSerializer.java#L37</a>