[
https://issues.apache.org/jira/browse/ATLAS-1725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Madhan Neethiraj resolved ATLAS-1725.
-------------------------------------
Resolution: Fixed
Assignee: Apoorv Naik
Fix Version/s: (was: trunk)
> update tinkerpop version to >=3.0.2-incubating to avoid `KryoException`
> errors that complain of "Buffer too small"
> ------------------------------------------------------------------------------------------------------------------
>
> Key: ATLAS-1725
> URL: https://issues.apache.org/jira/browse/ATLAS-1725
> Project: Atlas
> Issue Type: Bug
> Components: atlas-core
> Affects Versions: 0.8-incubating
> Reporter: Ayub Pathan
> Assignee: Apoorv Naik
> Priority: Critical
> Fix For: 1.0.0
>
>
> As per TINKERPOP-817, if the query response is greater than 4096 bytes, then
> tinkerpop will fail with `KryoException` errors that complain of "Buffer too
> small". TINKERPOP-817 fixes this issue by making BufferSize configurable and
> it is available in >= tinkerpop 3.0.2-incubating version. So, bumping the
> tinkerpop version in atlas project would help to avoid this issue.
> http://tinkerpop.apache.org/docs/3.0.2-incubating/#_serialization_2
> {noformat}
> Exception in thread "main" java.lang.ExceptionInInitializerError at
> java.lang.Class.forName0(Native Method) at
> java.lang.Class.forName(Class.java:264) at
> org.apache.atlas.ApplicationProperties.getClass(ApplicationProperties.java:115)
> at
> org.apache.atlas.RepositoryMetadataModule.getDeleteHandlerImpl(RepositoryMetadataModule.java:148)
> at
> org.apache.atlas.RepositoryMetadataModule.configure(RepositoryMetadataModule.java:95)
> at com.google.inject.AbstractModule.configure(AbstractModule.java:62) at
> com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340) at
> com.google.inject.spi.Elements.getElements(Elements.java:110) at
> com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
> at
> com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
> at com.google.inject.Guice.createInjector(Guice.java:96) at
> com.google.inject.Guice.createInjector(Guice.java:84) at
> org.apache.atlas.web.listeners.GuiceServletConfig.getInjector(GuiceServletConfig.java:77)
> at
> com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:47)
> at
> org.apache.atlas.web.listeners.GuiceServletConfig.contextInitialized(GuiceServletConfig.java:131)
> at
> org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:800)
> at
> org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:444)
> at
> org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:791)
> at
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:294)
> at
> org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1349)
> at
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1342)
> at
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741)
> at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:505) at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)
> at org.eclipse.jetty.server.Server.start(Server.java:387) at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114)
> at
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
> at org.eclipse.jetty.server.Server.doStart(Server.java:354) at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> at org.apache.atlas.web.service.EmbeddedServer.start(EmbeddedServer.java:93)
> at org.apache.atlas.Atlas.main(Atlas.java:118) Caused by:
> com.esotericsoftware.kryo.KryoException: Buffer too small: capacity: 0,
> required: 1 at com.esotericsoftware.kryo.io.Input.require(Input.java:158) at
> com.esotericsoftware.kryo.io.Input.readVarInt(Input.java:355) at
> com.esotericsoftware.kryo.util.DefaultClassResolver.readClass(DefaultClassResolver.java:109)
> at com.esotericsoftware.kryo.Kryo.readClass(Kryo.java:656) at
> com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:767) at
> com.thinkaurelius.titan.graphdb.database.serialize.kryo.KryoSerializer.readClassAndObject(KryoSerializer.java:94)
> at
> com.thinkaurelius.titan.graphdb.database.serialize.StandardSerializer.readClassAndObject(StandardSerializer.java:102)
> at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.staticBuffer2Object(KCVSConfiguration.java:252)
> at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.toMap(KCVSConfiguration.java:187)
> at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.asReadConfiguration(KCVSConfiguration.java:194)
> at
> com.thinkaurelius.titan.graphdb.configuration.GraphDatabaseConfiguration.<init>(GraphDatabaseConfiguration.java:1383)
> at com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:93) at
> com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:73) at
> org.apache.atlas.repository.graph.TitanGraphProvider.getGraphInstance(TitanGraphProvider.java:105)
> at
> org.apache.atlas.repository.graph.GraphHelper.getInstance(GraphHelper.java:94)
> at
> org.apache.atlas.repository.graph.DeleteHandler.<clinit>(DeleteHandler.java:50)
> ... 32 more
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)