[ 
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)

Reply via email to