[ https://issues.apache.org/jira/browse/ATLAS-1725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ayub Khan updated ATLAS-1725: ----------------------------- Description: 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} was: 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. {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} > 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 Khan > Priority: Critical > Fix For: trunk, 0.9-incubating > > > 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 (v6.3.15#6346)