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

[jira] [Updated] (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:all-tabpanel ]

liutongfeng updated ATLAS-129:
------------------------------
    Description: 
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

  was:
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
######################################################################################## (Main:166)
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


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