Hello! 1) Well, I guess you should use a Spring configuration and define bean there.
2) Yes, that should work. Regards, -- Ilya Kasnacheev чт, 14 февр. 2019 г. в 22:14, Max Barrios <[email protected]>: > Hi, > > 1) to inject Spring Bean to the client config, do you have a working > example of do this for Ignite? I am new to Spring and Ignite. I thought I > had done this with the below code. What ami I missing? > > 2) As of today, whether I have a predefined server cache or not, I keep > getting this “Failed to get Cassandra DataSource cause Spring application > context wasn't injected into CassandraCacheStoreFactory” error. You are > saying I need to have the Server cache defined exactly how my client code > had done it, correct? > > Max > > Sent from my iPhone > > On Feb 14, 2019, at 05:34, Ilya Kasnacheev <[email protected]> > wrote: > > Hello! > > So this configuration is sent from server node to client node, but it > lacks bean to be usable there. So you should either find a way to inject > Spring bean to client configuration, or rewrite server cache definition in > the same way as you tried to do on client. > > As I have already said, when client joins, if cache is already started on > cluster then client configuration will be thrown away and one received from > server will be used instead. > > Regards, > -- > Ilya Kasnacheev > > > чт, 14 февр. 2019 г. в 00:17, Max Barrios <[email protected]>: > >> Yes it is defined on the server node. >> >> Sent from my iPhone >> >> On Feb 13, 2019, at 06:50, Ilya Kasnacheev <[email protected]> >> wrote: >> >> Hello! >> >> Is this cache also defined on server node? Only the first cache >> configuration is used to create it, and all other ones are thrown away >> (just the name is used). >> >> Regards, >> -- >> Ilya Kasnacheev >> >> >> вт, 12 февр. 2019 г. в 06:39, Max Barrios <[email protected]>: >> >>> Hi, >>> >>> This is the code fragment from MyIgniteTest.scala: >>> >>> val cassandraDataSource = new DataSource >>> cassandraDataSource.setContactPoints("10.0.0.1") >>> val robinPolicy = new RoundRobinPolicy >>> cassandraDataSource.setLoadBalancingPolicy(robinPolicy) >>> cassandraDataSource.setReadConsistency("ONE") >>> cassandraDataSource.setWriteConsistency("ONE") >>> >>> // Read the persistence settings for Cassandra Key-Value persistance >>> val persistenceSettings = new >>> KeyValuePersistenceSettings("./src/main/resources/default-cassandra-store.xml") >>> >>> // Define Cassandra cache store factory, set the cassandra dataSource >>> and persistence settings >>> val cassandraCacheStoreFactory = new CassandraCacheStoreFactory >>> cassandraCacheStoreFactory.setDataSource(cassandraDataSource) >>> cassandraCacheStoreFactory.setPersistenceSettings(persistenceSettings) >>> >>> // Define the cache configuration, set the cassandraCacheStoreFactory >>> as cacheStoreFactory , enable write through, write behind and read through >>> val cassandraConfiguration = new CacheConfiguration >>> >>> cassandraConfiguration.setCacheStoreFactory(cassandraCacheStoreFactory) >>> >>> // Sets the cache configuration >>> val cfg = new IgniteConfiguration >>> cfg.setCacheConfiguration(cassandraConfiguration) >>> >>> // Starting Ignite. >>> Ignition.setClientMode(true) >>> val ignite = Ignition.start(cfg) >>> >>> >>> Thanks, >>> >>> Max >>> >>> On Mon, 11 Feb 2019 at 07:58, Ilya Kasnacheev <[email protected]> >>> wrote: >>> >>>> Hello! >>>> >>>> How do you pass CassandraCacheStoreFactory to your cache configuration? >>>> >>>> I can see XML fragment and code fragment in your first message, which >>>> one are you using? In your code fragment there's no call of cache >>>> configuration setter. >>>> >>>> Regards, >>>> -- >>>> Ilya Kasnacheev >>>> >>>> >>>> пт, 8 февр. 2019 г. в 23:01, Max Barrios <[email protected]>: >>>> >>>>> Hi, >>>>> >>>>> Stack trace is below: >>>>> >>>>> [error] 19/02/07 22:17:14 ERROR GridDhtPartitionsExchangeFuture: Failed >>>>> to reinitialize local partitions (preloading will be stopped): >>>>> GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion [topVer=10, >>>>> minorTopVer=0], discoEvt=DiscoveryEvent [evtNode=TcpDiscoveryNode >>>>> [id=0a3b5352-592c-450c-912c-7fe401cc4415, addrs=[0:0:0:0:0:0:0:1%lo, >>>>> 10.0.0.1, 127.0.0.1], sockAddrs=[ignite-node-01/10.0.0.1:0, >>>>> /0:0:0:0:0:0:0:1%lo:0, /127.0.0.1:0], discPort=0, order=10, intOrder=0, >>>>> lastExchangeTime=1549577833007, loc=true, >>>>> ver=2.6.0#20180710-sha1:669feacc, isClient=true], topVer=10, >>>>> nodeId8=0a3b5352, msg=null, type=NODE_JOINED, tstamp=1549577833993], >>>>> nodeId=0a3b5352, evt=NODE_JOINED] >>>>> [error] java.lang.IllegalStateException: Failed to get Cassandra >>>>> DataSource cause Spring application context wasn't injected into >>>>> CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.getDataSource(CassandraCacheStoreFactory.java:124) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:59) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:34) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1437) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1945) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:1830) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:792) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:674) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2419) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2299) >>>>> [error] at >>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>> [error] at java.lang.Thread.run(Thread.java:748) >>>>> [error] 19/02/07 22:17:14 INFO GridDhtPartitionsExchangeFuture: Finish >>>>> exchange future [startVer=AffinityTopologyVersion [topVer=10, >>>>> minorTopVer=0], resVer=null, err=java.lang.IllegalStateException: Failed >>>>> to get Cassandra DataSource cause Spring application context wasn't >>>>> injected into CassandraCacheStoreFactory] >>>>> [error] 19/02/07 22:17:14 ERROR IgniteKernal: Got exception while >>>>> starting (will rollback startup routine). >>>>> [error] class org.apache.ignite.IgniteCheckedException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7307) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.resolve(GridFutureAdapter.java:259) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:232) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:159) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:151) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.onKernalStart(GridCachePartitionExchangeManager.java:635) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:875) >>>>> [error] at >>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1086) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2014) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1723) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1151) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:671) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:611) >>>>> [error] at org.apache.ignite.Ignition.getOrStart(Ignition.java:419) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.ignite(IgniteContext.scala:150) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:63) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:86) >>>>> [error] at MyIgniteTest$.main(MyIgniteTest.scala:160) >>>>> [error] at MyIgniteTest.main(MyIgniteTest.scala) >>>>> [error] Caused by: java.lang.IllegalStateException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.getDataSource(CassandraCacheStoreFactory.java:124) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:59) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:34) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1437) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1945) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:1830) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:792) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:674) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2419) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2299) >>>>> [error] at >>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>> [error] at java.lang.Thread.run(Thread.java:748) >>>>> [error] 19/02/07 22:17:14 ERROR GridCachePartitionExchangeManager: Failed >>>>> to wait for completion of partition map exchange (preloading will not >>>>> start): GridDhtPartitionsExchangeFuture [firstDiscoEvt=DiscoveryEvent >>>>> [evtNode=TcpDiscoveryNode [id=0a3b5352-592c-450c-912c-7fe401cc4415, >>>>> addrs=[0:0:0:0:0:0:0:1%lo, 10.0.0.1, 127.0.0.1], >>>>> sockAddrs=[ignite-node-01/10.0.0.1:0, /0:0:0:0:0:0:0:1%lo:0, >>>>> /127.0.0.1:0], discPort=0, order=10, intOrder=0, >>>>> lastExchangeTime=1549577833007, loc=true, >>>>> ver=2.6.0#20180710-sha1:669feacc, isClient=true], topVer=10, >>>>> nodeId8=0a3b5352, msg=null, type=NODE_JOINED, tstamp=1549577833993], >>>>> crd=TcpDiscoveryNode [id=56340b23-60c1-4d7d-a19e-fb51066b4858, >>>>> addrs=[0:0:0:0:0:0:0:1%lo, 10.0.0.1, 127.0.0.1], >>>>> sockAddrs=[/0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, >>>>> ignite-node-01/10.0.0.1:47500], discPort=47500, order=1, intOrder=1, >>>>> lastExchangeTime=1549577833932, loc=false, >>>>> ver=2.6.0#20180710-sha1:669feacc, isClient=false], >>>>> exchId=GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion >>>>> [topVer=10, minorTopVer=0], discoEvt=DiscoveryEvent >>>>> [evtNode=TcpDiscoveryNode [id=0a3b5352-592c-450c-912c-7fe401cc4415, >>>>> addrs=[0:0:0:0:0:0:0:1%lo, 10.0.0.1, 127.0.0.1], >>>>> sockAddrs=[ignite-node-01/10.0.0.1:0, /0:0:0:0:0:0:0:1%lo:0, >>>>> /127.0.0.1:0], discPort=0, order=10, intOrder=0, >>>>> lastExchangeTime=1549577833007, loc=true, >>>>> ver=2.6.0#20180710-sha1:669feacc, isClient=true], topVer=10, >>>>> nodeId8=0a3b5352, msg=null, type=NODE_JOINED, tstamp=1549577833993], >>>>> nodeId=0a3b5352, evt=NODE_JOINED], added=true, initFut=GridFutureAdapter >>>>> [ignoreInterrupts=false, state=DONE, res=false, hash=786357198], >>>>> init=false, lastVer=null, partReleaseFut=null, exchActions=null, >>>>> affChangeMsg=null, initTs=1549577834024, centralizedAff=false, >>>>> forceAffReassignment=false, changeGlobalStateE=null, done=true, >>>>> state=CLIENT, evtLatch=0, >>>>> remaining=[56340b23-60c1-4d7d-a19e-fb51066b4858, >>>>> 38b9e6a1-131d-43c9-aac2-60d129faa9bd, >>>>> e9f79e0b-00eb-4752-afc5-be91185d56c4], super=GridFutureAdapter >>>>> [ignoreInterrupts=false, state=DONE, res=java.lang.IllegalStateException: >>>>> Failed to get Cassandra DataSource cause Spring application context >>>>> wasn't injected into CassandraCacheStoreFactory, hash=21748544]] >>>>> [error] class org.apache.ignite.IgniteCheckedException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7307) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.resolve(GridFutureAdapter.java:259) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:207) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:159) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:151) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2433) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2299) >>>>> [error] at >>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>> [error] at java.lang.Thread.run(Thread.java:748) >>>>> [error] Caused by: java.lang.IllegalStateException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.getDataSource(CassandraCacheStoreFactory.java:124) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:59) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:34) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1437) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1945) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:1830) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:792) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:674) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2419) >>>>> [error] ... 3 more >>>>> [error] 19/02/07 22:17:14 INFO GridCacheProcessor: Stopped cache >>>>> [cacheName=ignite-sys-cache] >>>>> [error] 19/02/07 22:17:14 INFO IgniteKernal: >>>>> [error] >>> >>>>> +---------------------------------------------------------------------------------+ >>>>> [error] >>> Ignite ver. >>>>> 2.6.0#20180710-sha1:669feacc5d3a4e60efcdd300dc8de99780f38eed stopped OK >>>>> [error] >>> >>>>> +---------------------------------------------------------------------------------+ >>>>> [error] >>> Grid uptime: 00:00:02.620 >>>>> [error] 19/02/07 22:17:14 ERROR IgniteContext: Failed to start Ignite. >>>>> [error] class org.apache.ignite.IgniteException: Failed to get Cassandra >>>>> DataSource cause Spring application context wasn't injected into >>>>> CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:990) >>>>> [error] at org.apache.ignite.Ignition.getOrStart(Ignition.java:422) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.ignite(IgniteContext.scala:150) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:63) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:86) >>>>> [error] at MyIgniteTest$.main(MyIgniteTest.scala:160) >>>>> [error] at MyIgniteTest.main(MyIgniteTest.scala) >>>>> [error] Caused by: class org.apache.ignite.IgniteCheckedException: Failed >>>>> to get Cassandra DataSource cause Spring application context wasn't >>>>> injected into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7307) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.resolve(GridFutureAdapter.java:259) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:232) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:159) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:151) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.onKernalStart(GridCachePartitionExchangeManager.java:635) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:875) >>>>> [error] at >>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1086) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2014) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1723) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1151) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:671) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:611) >>>>> [error] at org.apache.ignite.Ignition.getOrStart(Ignition.java:419) >>>>> [error] ... 5 more >>>>> [error] Caused by: java.lang.IllegalStateException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.getDataSource(CassandraCacheStoreFactory.java:124) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:59) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:34) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1437) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1945) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:1830) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:792) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:674) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2419) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2299) >>>>> [error] at >>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>> [error] at java.lang.Thread.run(Thread.java:748) >>>>> [error] Exception in thread "main" class >>>>> org.apache.ignite.IgniteException: Failed to get Cassandra DataSource >>>>> cause Spring application context wasn't injected into >>>>> CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:990) >>>>> [error] at org.apache.ignite.Ignition.getOrStart(Ignition.java:422) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.ignite(IgniteContext.scala:150) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:63) >>>>> [error] at >>>>> org.apache.ignite.spark.IgniteContext.<init>(IgniteContext.scala:86) >>>>> [error] at MyIgniteTest$.main(MyIgniteTest.scala:160) >>>>> [error] at MyIgniteTest.main(MyIgniteTest.scala) >>>>> [error] Caused by: class org.apache.ignite.IgniteCheckedException: Failed >>>>> to get Cassandra DataSource cause Spring application context wasn't >>>>> injected into CassandraCacheStoreFactory >>>>> [error] at >>>>> org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7307) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.resolve(GridFutureAdapter.java:259) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:232) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:159) >>>>> [error] at >>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:151) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.onKernalStart(GridCachePartitionExchangeManager.java:635) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:875) >>>>> [error] at >>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1086) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2014) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1723) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1151) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:671) >>>>> [error] at >>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:611) >>>>> name := "myignitetest" >>>>> [error] at org.apache.ignite.Ignition.getOrStart(Ignition.java:419) >>>>> [error] ... 5 more >>>>> [error] Caused by: java.lang.IllegalStateException: Failed to get >>>>> Cassandra DataSource cause Spring application context wasn't injected >>>>> into CassandraCacheStoreFactory >>>>> Added com.google.common 1.6 dependancy >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.getDataSource(CassandraCacheStoreFactory.java:124) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:59) >>>>> [error] at >>>>> org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory.create(CassandraCacheStoreFactory.java:34) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1437) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1945) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:1830) >>>>> [error] at >>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:792) >>>>> >>>>> >>>>> Thanks! >>>>> >>>>> Max >>>>> >>>>> On Fri, 8 Feb 2019 at 01:26, Ilya Kasnacheev < >>>>> [email protected]> wrote: >>>>> >>>>>> Hello! >>>>>> >>>>>> Can you provide stack trace of the exception? >>>>>> >>>>>> Regards, >>>>>> -- >>>>>> Ilya Kasnacheev >>>>>> >>>>>> >>>>>> пт, 8 февр. 2019 г. в 01:33, Max Barrios <[email protected]>: >>>>>> >>>>>>> FYI I am using Ignite Fabric 2.6.0. We use Spark 2.3.2 / Hadoop >>>>>>> 2.8.5 so upgrading to Ignite 2.7.0 means upgrading Spark/Hadoop. >>>>>>> >>>>>>> On Thu, 7 Feb 2019 at 11:58, Max Barrios <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> As far as I know, yes. Where would/should I look to check? >>>>>>>> >>>>>>>> Also, do I need to copy the ignite cassandra libraries to my >>>>>>>> client to build that client? >>>>>>>> >>>>>>>> On Thu, 7 Feb 2019 at 06:47, Ilya Kasnacheev < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hello! >>>>>>>>> >>>>>>>>> This is unusual, since you have set cassandraDataSource directly >>>>>>>>> and bean/app context should not be checked when you do. >>>>>>>>> Are you sure that it is the only cassandra cache store factory >>>>>>>>> that gets used in actual caches? >>>>>>>>> >>>>>>>>> Regards, >>>>>>>>> -- >>>>>>>>> Ilya Kasnacheev >>>>>>>>> >>>>>>>>> >>>>>>>>> чт, 7 февр. 2019 г. в 05:59, Max Barrios <[email protected]>: >>>>>>>>> >>>>>>>>>> I am running an application written in Scala that is using Spark, >>>>>>>>>> Ignite, and persisting from writeThrough cache to Cassandra. From the >>>>>>>>>> Ignite base concepts code you are supposed to set the >>>>>>>>>> CacheStoreFactory as >>>>>>>>>> such: >>>>>>>>>> >>>>>>>>>> <property name="cacheStoreFactory"> >>>>>>>>>> <bean >>>>>>>>>> class="org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory"> >>>>>>>>>> <!-- Datasource configuration bean which is responsible for >>>>>>>>>> Cassandra connection details --> >>>>>>>>>> <property name="dataSourceBean" value="cassandraDataSource"/> >>>>>>>>>> <!-- Persistent settings bean which is responsible for the >>>>>>>>>> details of how objects will be persisted to Cassandra --> >>>>>>>>>> <property name="persistenceSettingsBean" >>>>>>>>>> value="cache1_persistence_settings"/> >>>>>>>>>> </bean></property> >>>>>>>>>> >>>>>>>>>> Yet, when I run the application I get the error: >>>>>>>>>> >>>>>>>>>> java.lang.IllegalStateException: >>>>>>>>>> Failed to get Cassandra DataSource cause Spring application >>>>>>>>>> context wasn't injected into CassandraCacheStoreFactory >>>>>>>>>> >>>>>>>>>> All of the Ignite.xml, connection-settings.xml and >>>>>>>>>> cassandra-store.xml are all written the same way as the examples >>>>>>>>>> explain on >>>>>>>>>> apacheignite Cassandra integration page. >>>>>>>>>> >>>>>>>>>> I am initializing the CassandraCacheStoreFactory as follows: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> val cassandraDataSource = new DataSource >>>>>>>>>> cassandraDataSource.setContactPoints("prod-cassandra-db.ct.corp") >>>>>>>>>> val robinPolicy = new RoundRobinPolicy >>>>>>>>>> cassandraDataSource.setLoadBalancingPolicy(robinPolicy) >>>>>>>>>> cassandraDataSource.setReadConsistency("ONE") >>>>>>>>>> cassandraDataSource.setWriteConsistency("ONE") >>>>>>>>>> >>>>>>>>>> val CONFIG = "src/main/resources/default-cassandra-store.xml" >>>>>>>>>> val persistenceSettings = new KeyValuePersistenceSettings(CONFIG) >>>>>>>>>> val cassandraCacheStoreFactory = new CassandraCacheStoreFactory >>>>>>>>>> cassandraCacheStoreFactory.setDataSource(cassandraDataSource) >>>>>>>>>> >>>>>>>>>> cassandraCacheStoreFactory.setPersistenceSettings(persistenceSettings) >>>>>>>>>> >>>>>>>>>> And I am starting the Ignite code as follows: >>>>>>>>>> >>>>>>>>>> val igniteContext = new IgniteContext(sparkContext, >>>>>>>>>> config.igniteConfig, true) >>>>>>>>>> val ignite = igniteContext.ignite() >>>>>>>>>> >>>>>>>>>> What am I missing or doing wrong that is causing this error? I >>>>>>>>>> have yet to find a simple, comprehensive example in Scala for doing >>>>>>>>>> this. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>
