You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by "Venkatesh Seetharam (JIRA)" <ji...@apache.org> on 2015/08/29 01:11:46 UTC

[jira] [Commented] (ATLAS-129) Atlas cannot use Cassandra as the storage backend.

    [ https://issues.apache.org/jira/browse/ATLAS-129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14720760#comment-14720760 ] 

Venkatesh Seetharam commented on ATLAS-129:
-------------------------------------------

Atlas has support for Cassandra but the runtime bits are not shipped. If you need this now, please add the cassandra dependency in maven and rebuild it with the same conf. It should work.

Thanks!

> Atlas cannot use Cassandra as the storage backend.
> --------------------------------------------------
>
>                 Key: ATLAS-129
>                 URL: https://issues.apache.org/jira/browse/ATLAS-129
>             Project: Atlas
>          Issue Type: Bug
>            Reporter: liutongfeng
>
> When using Atlas out of Hadoop cluster, I use Cassandra as the storage backend, 
> but got the following errors, and did not work. Does Atlas support Cassandra now?
> 2015-08-28 08:47:23,238 DEBUG - [main:] ~ atlas.graph.storage.backend = cassandra (ApplicationProperties:78)
> 2015-08-28 08:47:23,238 DEBUG - [main:] ~ atlas.graph.storage.hostname = 192.168.65.102 (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.graph.index.search.backend = elasticsearch (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.graph.index.search.directory = /home/vagrant/apache-atlas-0.5-incubating/data/es (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.graph.index.search.elasticsearch.client-only = false (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.graph.index.search.elasticsearch.local-mode = true (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.graph.index.search.elasticsearch.create.sleep = 2000 (ApplicationProperties:78)
> 2015-08-28 08:47:23,239 DEBUG - [main:] ~ atlas.notification.embedded = true (ApplicationProperties:78)
> 2015-08-28 08:47:23,240 DEBUG - [main:] ~ atlas.notification.kafka.data = /home/vagrant/apache-atlas-0.5-incubating/data/kafka (ApplicationProperties:78)
> 2015-08-28 08:47:23,241 DEBUG - [main:] ~ atlas.lineage.hive.table.schema.query.hive_table = hive_table where name='%s', columns (ApplicationProperties:78)
> 2015-08-28 08:47:23,241 DEBUG - [main:] ~ atlas.lineage.hive.table.schema.query.Table = Table where name='%s', columns (ApplicationProperties:78)
> 2015-08-28 08:47:23,241 DEBUG - [main:] ~ atlas.enableTLS = false (ApplicationProperties:78)
> 2015-08-28 08:47:23,241 INFO  - [main:] ~ Loading client.properties from file:/home/vagrant/apache-atlas-0.5-incubating/conf/client.properties (ApplicationProperties:62)
> 2015-08-28 08:47:23,242 DEBUG - [main:] ~ Base path set to file:///home/vagrant/apache-atlas-0.5-incubating/conf/ (ApplicationProperties:626)
> 2015-08-28 08:47:23,242 DEBUG - [main:] ~ FileName set to client.properties (ApplicationProperties:588)
> 2015-08-28 08:47:23,242 DEBUG - [main:] ~ URL set to file:/home/vagrant/apache-atlas-0.5-incubating/conf/client.properties (ApplicationProperties:726)
> 2015-08-28 08:47:23,242 DEBUG - [main:] ~ Base path set to null (ApplicationProperties:626)
> 2015-08-28 08:47:23,242 DEBUG - [main:] ~ FileName set to null (ApplicationProperties:588)
> 2015-08-28 08:47:23,245 DEBUG - [main:] ~ Configuration loaded: (ApplicationProperties:75)
> 2015-08-28 08:47:23,245 DEBUG - [main:] ~ atlas.enableTLS = false (ApplicationProperties:78)
> 2015-08-28 08:47:23,245 DEBUG - [main:] ~ atlas.http.authentication.enabled = false (ApplicationProperties:78)
> 2015-08-28 08:47:23,245 DEBUG - [main:] ~ atlas.http.authentication.type = simple (ApplicationProperties:78)
> 2015-08-28 08:47:23,246 INFO  - [main:] ~ 
>                                Atlas Server (STARTUP)
> 	project.name:	apache-atlas
> 	project.description:	Metadata Management and Data Governance Platform over Hadoop
> 	build.user:	Administrator
> 	build.epoch:	1440658759257
> 	project.version:	0.5-incubating
> 	build.version:	0.5-incubating-rrelease
> 	vc.revision:	release
> 	vc.source.url:	scm:https://git-wip-us.apache.org/repos/asf/incubator-atlas.git/atlas-webapp
> 2015-08-28 08:47:23,246 INFO  - [main:] ~ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (Main:167)
> 2015-08-28 08:47:23,247 INFO  - [main:] ~ Server starting with TLS ? false on port 21000 (Main:168)
> 2015-08-28 08:47:23,247 INFO  - [main:] ~ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< (Main:169)
> 2015-08-28 08:47:23,275 INFO  - [main:] ~ Logging initialized @554ms (log:186)
> 2015-08-28 08:47:23,372 INFO  - [main:] ~ jetty-9.2.12.v20150709 (Server:327)
> 2015-08-28 08:47:24,326 INFO  - [main:] ~ Loading Guice modules (GuiceServletConfig:59)
> 2015-08-28 08:47:24,667 INFO  - [main:] ~ Jersey loading from packages: org.apache.atlas.web.resources,org.apache.atlas.web.params (GuiceServletConfig:79)
> 2015-08-28 08:47:25,053 DEBUG - [main:] ~ Injected solr5 index - com.thinkaurelius.titan.diskstorage.solr.Solr5Index (TitanGraphProvider:81)
> 2015-08-28 08:47:25,217 WARN  - [main:] ~ Failed startup of context o.e.j.w.WebAppContext@2cb4a576{/,file:/home/vagrant/apache-atlas-0.5-incubating/server/webapp/atlas/,STARTING}{/home/vagrant/apache-atlas-0.5-incubating/server/webapp/atlas} (WebAppContext:514)
> com.google.inject.CreationException: Unable to create injector, see the following errors:
> 1) Error in custom provider, java.lang.IllegalArgumentException: Could not find implementation class: com.thinkaurelius.titan.diskstorage.cassandra.astyanax.AstyanaxStoreManager
>   at org.apache.atlas.RepositoryMetadataModule.configure(RepositoryMetadataModule.java:50)
>   at org.apache.atlas.RepositoryMetadataModule.configure(RepositoryMetadataModule.java:50)
>   while locating com.google.inject.throwingproviders.ThrowingProviderBinder$Result annotated with @com.google.inject.internal.UniqueAnnotations$Internal(value=1)
> Caused by: java.lang.IllegalArgumentException: Could not find implementation class: com.thinkaurelius.titan.diskstorage.cassandra.astyanax.AstyanaxStoreManager
> 	at com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:47)
> 	at com.thinkaurelius.titan.diskstorage.Backend.getImplementationClass(Backend.java:421)
> 	at com.thinkaurelius.titan.diskstorage.Backend.getStorageManager(Backend.java:361)
> 	at com.thinkaurelius.titan.graphdb.configuration.GraphDatabaseConfiguration.<init>(GraphDatabaseConfiguration.java:1275)
> 	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.get(TitanGraphProvider.java:101)
> 	at org.apache.atlas.repository.graph.TitanGraphProvider.get(TitanGraphProvider.java:42)
> 	at com.google.inject.throwingproviders.ThrowingProviderBinder$SecondaryBinder$3.get(ThrowingProviderBinder.java:350)
> 	at com.google.inject.throwingproviders.ThrowingProviderBinder$SecondaryBinder$3.get(ThrowingProviderBinder.java:346)
> 	at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
> 	at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:53)
> 	at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)
> 	at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
> 	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
> 	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
> 	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
> 	at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
> 	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
> 	at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
> 	at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
> 	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
> 	at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
> 	at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
> 	at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
> 	at com.google.inject.Guice.createInjector(Guice.java:96)
> 	at com.google.inject.Guice.createInjector(Guice.java:73)
> 	at com.google.inject.Guice.createInjector(Guice.java:62)
> 	at org.apache.atlas.web.listeners.GuiceServletConfig.getInjector(GuiceServletConfig.java:67)
> 	at com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:47)
> 	at org.apache.atlas.web.listeners.GuiceServletConfig.contextInitialized(GuiceServletConfig.java:106)
> 	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:88)
> 	at org.apache.atlas.Main.main(Main.java:105)
> Caused by: java.lang.ClassNotFoundException: com.thinkaurelius.titan.diskstorage.cassandra.astyanax.AstyanaxStoreManager
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:190)
> 	at com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:42)
> 	... 47 more



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)