Dmitriy, nightly builds do not include Ignite.NET. On Wed, Apr 27, 2016 at 6:45 PM, Dmitriy Setrakyan <[email protected]> wrote:
> Murthy, > > Is this what you are looking for? > https://ignite.apache.org/community/contribute.html#nightly-builds > > D. > > On Wed, Apr 27, 2016 at 8:13 AM, Murthy Kakarlamudi <[email protected]> > wrote: > >> Great..Thank you so much Vladimir. While I wait for 1.6 release, can I >> get the latest source, build it to use? Or are the pre-GA 1.6 binaries >> available to download? >> >> Thanks, >> Murthy. >> >> On Wed, Apr 27, 2016 at 9:45 AM, Vladimir Ozerov <[email protected]> >> wrote: >> >>> Murthy, >>> >>> As per initial issue - I created a ticket and fixed the bug causing your >>> initial problem (*"org.apache.ignite.**IgniteException: Spring >>> application context resource is not injected"*). The fix will be >>> included into upcoming Ignite 1.6 release. >>> >>> Vladimir. >>> >>> On Wed, Apr 27, 2016 at 11:50 AM, Vladimir Ozerov <[email protected]> >>> wrote: >>> >>>> Hi Murthy, >>>> >>>> Please provide configs you used to start clients and servers. >>>> >>>> Vladimir. >>>> >>>> On Wed, Apr 27, 2016 at 5:45 AM, Murthy Kakarlamudi <[email protected]> >>>> wrote: >>>> >>>>> Can someone please help how Ignite works for the following use case. >>>>> The server node loads data from Persistent Store into cache upon start up. >>>>> There will be a couple of client nodes (c++, .net based) that needs to >>>>> access the cache. >>>>> The server node will have the configuration for cachestore. Should the >>>>> client nodes also have the configuration for cachestore? I am hoping no >>>>> because all they need is to read the cache. >>>>> But I am assuming, if these client nodes can also update the cache >>>>> then the cachestore config is required if write through is enabled. >>>>> Please validate my assumptions. >>>>> >>>>> Thanks, >>>>> Satya... >>>>> >>>>> On Tue, Apr 26, 2016 at 9:44 AM, Murthy Kakarlamudi <[email protected]> >>>>> wrote: >>>>> >>>>>> No..I am not. I have different configs for my server node in java vs >>>>>> my client node in c++. That was the question I had. In my server node >>>>>> that >>>>>> loads the data from persistent store to cache, I configured cachestore. >>>>>> But >>>>>> my c++ node is only a client node that needs to access cache. So I was >>>>>> not >>>>>> sure if my client node config should have the cachestore details as well. >>>>>> >>>>>> Let me try the option you suggested. >>>>>> >>>>>> On Tue, Apr 26, 2016 at 9:40 AM, Vladimir Ozerov < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> HI Murthy, >>>>>>> >>>>>>> Do you start all nodes with the same XML configuration? Please >>>>>>> ensure that this is so, and all nodes know all caches from >>>>>>> configuration in >>>>>>> advance. >>>>>>> >>>>>>> Vladimir. >>>>>>> >>>>>>> On Tue, Apr 26, 2016 at 3:27 PM, Murthy Kakarlamudi < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Hi Vladimir...I made the update and still running into the same >>>>>>>> issue. >>>>>>>> >>>>>>>> Here is the updated spring config for my Java node: >>>>>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>>>>> >>>>>>>> <!-- Licensed to the Apache Software Foundation (ASF) under one or >>>>>>>> more contributor >>>>>>>> license agreements. See the NOTICE file distributed with this work >>>>>>>> for additional >>>>>>>> information regarding copyright ownership. The ASF licenses this >>>>>>>> file to >>>>>>>> You under the Apache License, Version 2.0 (the "License"); you may >>>>>>>> not use >>>>>>>> this file except in compliance with the License. You may obtain a >>>>>>>> copy of >>>>>>>> the License at http://www.apache.org/licenses/LICENSE-2.0 Unless >>>>>>>> required >>>>>>>> by applicable law or agreed to in writing, software distributed >>>>>>>> under the >>>>>>>> License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR >>>>>>>> CONDITIONS >>>>>>>> OF ANY KIND, either express or implied. See the License for the >>>>>>>> specific >>>>>>>> language governing permissions and limitations under the License. >>>>>>>> --> >>>>>>>> >>>>>>>> <!-- Ignite Spring configuration file to startup Ignite cache. This >>>>>>>> file >>>>>>>> demonstrates how to configure cache using Spring. Provided cache >>>>>>>> will be >>>>>>>> created on node startup. Use this configuration file when running >>>>>>>> HTTP REST >>>>>>>> examples (see 'examples/rest' folder). When starting a standalone >>>>>>>> node, you >>>>>>>> need to execute the following command: >>>>>>>> {IGNITE_HOME}/bin/ignite.{bat|sh} >>>>>>>> examples/config/example-cache.xml When starting Ignite from Java >>>>>>>> IDE, pass >>>>>>>> path to this file to Ignition: >>>>>>>> Ignition.start("examples/config/example-cache.xml"); --> >>>>>>>> <beans xmlns="http://www.springframework.org/schema/beans" >>>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util=" >>>>>>>> http://www.springframework.org/schema/util" >>>>>>>> xsi:schemaLocation=" >>>>>>>> http://www.springframework.org/schema/beans >>>>>>>> >>>>>>>> http://www.springframework.org/schema/beans/spring-beans.xsd >>>>>>>> http://www.springframework.org/schema/util >>>>>>>> http://www.springframework.org/schema/util/spring-util-2.5.xsd >>>>>>>> "> >>>>>>>> >>>>>>>> <bean id="myDataSource" >>>>>>>> class="org.springframework.jdbc.datasource.DriverManagerDataSource"> >>>>>>>> <property name="driverClassName" >>>>>>>> value="com.microsoft.sqlserver.jdbc.SQLServerDriver" /> >>>>>>>> <property name="url" >>>>>>>> value="jdbc:sqlserver://LAPTOP-QIT4AVOG\MSSQLSERVER64;databaseName=PrimeOne;integratedSecurity=true" >>>>>>>> /> >>>>>>>> </bean> >>>>>>>> >>>>>>>> <bean id="ignite.cfg" >>>>>>>> class="org.apache.ignite.configuration.IgniteConfiguration"> >>>>>>>> <property name="binaryConfiguration"> >>>>>>>> <bean class="org.apache.ignite.configuration.BinaryConfiguration"> >>>>>>>> <property name="compactFooter" value="false" /> >>>>>>>> </bean> >>>>>>>> </property> >>>>>>>> >>>>>>>> <property name="cacheConfiguration"> >>>>>>>> <list> >>>>>>>> <!-- Partitioned cache example configuration (Atomic mode). --> >>>>>>>> <bean class="org.apache.ignite.configuration.CacheConfiguration"> >>>>>>>> >>>>>>>> <property name="atomicityMode" value="ATOMIC" /> >>>>>>>> <property name="backups" value="1" /> >>>>>>>> <property name="readThrough" value="true" /> >>>>>>>> <property name="writeThrough" value="true" /> >>>>>>>> <property name="cacheStoreFactory"> >>>>>>>> <bean >>>>>>>> >>>>>>>> class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory"> >>>>>>>> <!-- <property name="dataSourceBean" value="myDataSource" /> --> >>>>>>>> <property name="dataSource" ref="myDataSource" /> >>>>>>>> <property name="types"> >>>>>>>> <list> >>>>>>>> <bean class="org.apache.ignite.cache.store.jdbc.JdbcType"> >>>>>>>> <property name="cacheName" value="buCache" /> >>>>>>>> <property name="databaseTable" value="BusinessUnit" /> >>>>>>>> <property name="keyType" value="java.lang.Integer" /> >>>>>>>> <property name="keyFields"> >>>>>>>> <list> >>>>>>>> <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField"> >>>>>>>> <property name="databaseFieldType"> >>>>>>>> <util:constant static-field="java.sql.Types.BIGINT" /> >>>>>>>> </property> >>>>>>>> <property name="databaseFieldName" value="BUID" /> >>>>>>>> <property name="javaFieldType" value="java.lang.Integer" /> >>>>>>>> <property name="javaFieldName" value="buid" /> >>>>>>>> </bean> >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> <property name="valueType" value="models.BusinessUnit" /> >>>>>>>> <property name="valueFields"> >>>>>>>> <list> >>>>>>>> <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField"> >>>>>>>> <property name="databaseFieldType"> >>>>>>>> <util:constant static-field="java.sql.Types.BIGINT" /> >>>>>>>> </property> >>>>>>>> <property name="databaseFieldName" value="BUID" /> >>>>>>>> <property name="javaFieldType" value="java.lang.Integer" /> >>>>>>>> <property name="javaFieldName" value="buid" /> >>>>>>>> </bean> >>>>>>>> <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField"> >>>>>>>> <property name="databaseFieldType"> >>>>>>>> <util:constant static-field="java.sql.Types.VARCHAR" /> >>>>>>>> </property> >>>>>>>> <property name="databaseFieldName" value="BUName" /> >>>>>>>> <property name="javaFieldType" value="java.lang.String" /> >>>>>>>> <property name="javaFieldName" value="buName" /> >>>>>>>> </bean> >>>>>>>> <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField"> >>>>>>>> <property name="databaseFieldType"> >>>>>>>> <util:constant static-field="java.sql.Types.BIGINT" /> >>>>>>>> </property> >>>>>>>> <property name="databaseFieldName" value="CreatedByID" /> >>>>>>>> <property name="javaFieldType" value="java.lang.Integer" /> >>>>>>>> <property name="javaFieldName" value="createdByID" /> >>>>>>>> </bean> >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> >>>>>>>> <!-- Explicitly configure TCP discovery SPI to provide list of >>>>>>>> initial >>>>>>>> nodes. --> >>>>>>>> <property name="discoverySpi"> >>>>>>>> <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> >>>>>>>> <property name="ipFinder"> >>>>>>>> <!-- Ignite provides several options for automatic discovery that >>>>>>>> can >>>>>>>> be used instead os static IP based discovery. For information on >>>>>>>> all options >>>>>>>> refer to our documentation: >>>>>>>> http://apacheignite.readme.io/docs/cluster-config --> >>>>>>>> <!-- Uncomment static IP finder to enable static-based discovery of >>>>>>>> initial nodes. --> >>>>>>>> <bean >>>>>>>> >>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> >>>>>>>> <!-- <bean >>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder"> >>>>>>>> --> >>>>>>>> <property name="addresses"> >>>>>>>> <list> >>>>>>>> <!-- In distributed environment, replace with actual host IP >>>>>>>> address. --> >>>>>>>> <value>127.0.0.1:47500..47509</value> >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> </beans> >>>>>>>> >>>>>>>> >>>>>>>> Error: >>>>>>>> >>> Cache node started. >>>>>>>> >>>>>>>> [08:27:25,045][SEVERE][exchange-worker-#38%null%][GridDhtPartitionsExchangeFuture] >>>>>>>> Failed to reinitialize local partitions (preloading will be stopped): >>>>>>>> GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion [topVer=11, >>>>>>>> minorTopVer=1], nodeId=bc7d2aa2, evt=DISCOVERY_CUSTOM_EVT] >>>>>>>> class org.apache.ignite.IgniteException: Spring application context >>>>>>>> resource is not injected. >>>>>>>> at >>>>>>>> org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.create(CacheJdbcPojoStoreFactory.java:156) >>>>>>>> at >>>>>>>> org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.create(CacheJdbcPojoStoreFactory.java:96) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1243) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1638) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCachesStart(GridCacheProcessor.java:1563) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.startCaches(GridDhtPartitionsExchangeFuture.java:956) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:523) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1297) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>> [08:27:25,063][SEVERE][exchange-worker-#38%null%][GridCachePartitionExchangeManager] >>>>>>>> Failed to wait for completion of partition map exchange (preloading >>>>>>>> will >>>>>>>> not start): GridDhtPartitionsExchangeFuture [dummy=false, >>>>>>>> forcePreload=false, reassign=false, discoEvt=DiscoveryCustomEvent >>>>>>>> [customMsg=DynamicCacheChangeBatch [reqs=[DynamicCacheChangeRequest >>>>>>>> [deploymentId=8ea535e3451-d29afc27-9b4b-4125-bbf2-232c08daa0cb, >>>>>>>> startCfg=CacheConfiguration [name=buCache, >>>>>>>> storeConcurrentLoadAllThreshold=5, rebalancePoolSize=2, >>>>>>>> rebalanceTimeout=10000, evictPlc=null, evictSync=false, >>>>>>>> evictKeyBufSize=1024, evictSyncConcurrencyLvl=4, >>>>>>>> evictSyncTimeout=10000, >>>>>>>> evictFilter=null, evictMaxOverflowRatio=10.0, eagerTtl=true, >>>>>>>> dfltLockTimeout=0, startSize=1500000, nearCfg=null, >>>>>>>> writeSync=PRIMARY_SYNC, >>>>>>>> storeFactory=CacheJdbcPojoStoreFactory [batchSizw=512, >>>>>>>> dataSrcBean=myDataSource, dialect=null, maxPoolSize=4, >>>>>>>> maxWriteAttempts=2, >>>>>>>> parallelLoadCacheMinThreshold=512, >>>>>>>> hasher=o.a.i.cache.store.jdbc.JdbcTypeDefaultHasher@78d010a2, >>>>>>>> dataSrc=null], storeKeepBinary=false, loadPrevVal=false, >>>>>>>> aff=o.a.i.cache.affinity.rendezvous.RendezvousAffinityFunction@76311661, >>>>>>>> cacheMode=PARTITIONED, atomicityMode=ATOMIC, >>>>>>>> atomicWriteOrderMode=PRIMARY, >>>>>>>> backups=1, invalidate=false, tmLookupClsName=null, rebalanceMode=ASYNC, >>>>>>>> rebalanceOrder=0, rebalanceBatchSize=524288, >>>>>>>> rebalanceBatchesPrefetchCount=2, offHeapMaxMem=-1, swapEnabled=false, >>>>>>>> maxConcurrentAsyncOps=500, writeBehindEnabled=false, >>>>>>>> writeBehindFlushSize=10240, writeBehindFlushFreq=5000, >>>>>>>> writeBehindFlushThreadCnt=1, writeBehindBatchSize=512, >>>>>>>> memMode=ONHEAP_TIERED, >>>>>>>> affMapper=o.a.i.i.processors.cache.CacheDefaultBinaryAffinityKeyMapper@2e41d426, >>>>>>>> rebalanceDelay=0, rebalanceThrottle=0, interceptor=null, >>>>>>>> longQryWarnTimeout=3000, readFromBackup=true, >>>>>>>> nodeFilter=o.a.i.configuration.CacheConfiguration$IgniteAllNodesPredicate@d211e68, >>>>>>>> sqlSchema=null, sqlEscapeAll=false, sqlOnheapRowCacheSize=10240, >>>>>>>> snapshotableIdx=false, cpOnRead=true, topValidator=null], >>>>>>>> cacheType=USER, >>>>>>>> initiatingNodeId=bc7d2aa2-4a64-467f-8097-d0f579dec0b3, >>>>>>>> nearCacheCfg=null, >>>>>>>> clientStartOnly=true, stop=false, close=false, failIfExists=false, >>>>>>>> template=false, exchangeNeeded=true, cacheFutTopVer=null, >>>>>>>> cacheName=buCache]], clientNodes=null, >>>>>>>> id=45ec9825451-cbb8263a-223e-4f3e-8492-71f2612ddae6, >>>>>>>> clientReconnect=false], affTopVer=AffinityTopologyVersion [topVer=11, >>>>>>>> minorTopVer=1], super=DiscoveryEvent [evtNode=TcpDiscoveryNode >>>>>>>> [id=bc7d2aa2-4a64-467f-8097-d0f579dec0b3, addrs=[0:0:0:0:0:0:0:1, >>>>>>>> 127.0.0.1, 192.168.0.5, 2001:0:9d38:90d7:1064:ea:bb9b:11d9, >>>>>>>> 2600:8806:0:8d00:0:0:0:1, 2600:8806:0:8d00:15e5:c0bf:286e:8785, >>>>>>>> 2600:8806:0:8d00:3ccf:1e94:1ab4:83a9], sockAddrs=[LAPTOP-QIT4AVOG/ >>>>>>>> 192.168.0.5:0, /0:0:0:0:0:0:0:1:0, LAPTOP-QIT4AVOG/192.168.0.5:0, / >>>>>>>> 127.0.0.1:0, LAPTOP-QIT4AVOG/192.168.0.5:0, /192.168.0.5:0, >>>>>>>> LAPTOP-QIT4AVOG/192.168.0.5:0, >>>>>>>> /2001:0:9d38:90d7:1064:ea:bb9b:11d9:0, LAPTOP-QIT4AVOG/ >>>>>>>> 192.168.0.5:0, /2600:8806:0:8d00:0:0:0:1:0, >>>>>>>> /2600:8806:0:8d00:15e5:c0bf:286e:8785:0, >>>>>>>> /2600:8806:0:8d00:3ccf:1e94:1ab4:83a9:0], discPort=0, order=11, >>>>>>>> intOrder=0, >>>>>>>> lastExchangeTime=1461673644205, loc=true, >>>>>>>> ver=1.5.0#20151229-sha1:f1f8cda2, >>>>>>>> isClient=true], topVer=11, nodeId8=bc7d2aa2, msg=null, >>>>>>>> type=DISCOVERY_CUSTOM_EVT, tstamp=1461673645026]], >>>>>>>> rcvdIds=GridConcurrentHashSet [elements=[]], rmtIds=null, >>>>>>>> exchId=GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion >>>>>>>> [topVer=11, minorTopVer=1], nodeId=bc7d2aa2, evt=DISCOVERY_CUSTOM_EVT], >>>>>>>> init=true, ready=false, replied=false, added=true, >>>>>>>> initFut=GridFutureAdapter [resFlag=2, res=false, >>>>>>>> startTime=1461673645026, >>>>>>>> endTime=1461673645046, ignoreInterrupts=false, lsnr=null, state=DONE], >>>>>>>> topSnapshot=null, lastVer=null, partReleaseFut=null, skipPreload=false, >>>>>>>> clientOnlyExchange=false, initTs=1461673645026, >>>>>>>> oldest=7700cd68-08b1-4571-8744-0e91dcdad9b0, oldestOrder=1, evtLatch=0, >>>>>>>> remaining=[], super=GridFutureAdapter [resFlag=1, res=class >>>>>>>> o.a.i.IgniteException: Spring application context resource is not >>>>>>>> injected., startTime=1461673645026, endTime=1461673645046, >>>>>>>> ignoreInterrupts=false, lsnr=null, state=DONE]] >>>>>>>> class org.apache.ignite.IgniteCheckedException: Spring application >>>>>>>> context resource is not injected. >>>>>>>> at >>>>>>>> org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7005) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:166) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1299) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>> Caused by: class org.apache.ignite.IgniteException: Spring >>>>>>>> application context resource is not injected. >>>>>>>> at >>>>>>>> org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.create(CacheJdbcPojoStoreFactory.java:156) >>>>>>>> at >>>>>>>> org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.create(CacheJdbcPojoStoreFactory.java:96) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1243) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1638) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCachesStart(GridCacheProcessor.java:1563) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.startCaches(GridDhtPartitionsExchangeFuture.java:956) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:523) >>>>>>>> at >>>>>>>> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1297) >>>>>>>> >>>>>>>> On Tue, Apr 26, 2016 at 8:06 AM, Vladimir Ozerov < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi Murthy, >>>>>>>>> >>>>>>>>> Seems that you faced a kind of usability issue, which happens only >>>>>>>>> in some specific cases. Please try replacing the following line in >>>>>>>>> your >>>>>>>>> config: >>>>>>>>> >>>>>>>>> <property name="dataSourceBean" value="myDataSource" /> >>>>>>>>> >>>>>>>>> with this: >>>>>>>>> >>>>>>>>> <property name="dataSource" ref="myDataSource" /> >>>>>>>>> >>>>>>>>> It should help. >>>>>>>>> >>>>>>>>> Vladimir. >>>>>>>>> >>>>>>>>> On Tue, Apr 26, 2016 at 1:36 AM, Murthy Kakarlamudi < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>>> Hi Alexey...Apologize the delay in my response. Below are the 2 >>>>>>>>>> links from gdrive for my Java and c++ projects. >>>>>>>>>> >>>>>>>>>> Java Project: >>>>>>>>>> https://drive.google.com/open?id=0B8lM91-_3MwRZmF6N0tnN1pyN2M >>>>>>>>>> >>>>>>>>>> C++ Project: >>>>>>>>>> https://drive.google.com/open?id=0B8lM91-_3MwRMGE5akVWVXc0RXc >>>>>>>>>> >>>>>>>>>> Please let me know if you have any difficulty downloading the >>>>>>>>>> projects. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Satya. >>>>>>>>>> >>>>>>>>>> On Mon, Apr 25, 2016 at 10:49 AM, Alexey Kuznetsov < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> I see in stack trace "Caused by: class >>>>>>>>>>> org.apache.ignite.IgniteException: >>>>>>>>>>> Spring application context resource is not injected." >>>>>>>>>>> >>>>>>>>>>> Also CacheJdbcPojoStoreFactory contains such declaration: >>>>>>>>>>> @SpringApplicationContextResource >>>>>>>>>>> private transient Object appCtx; >>>>>>>>>>> >>>>>>>>>>> Anybody know why appCtx may not be injected? >>>>>>>>>>> >>>>>>>>>>> Also Satya, it is possible for you to prepare small >>>>>>>>>>> reproducible example that we could debug? >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Mon, Apr 25, 2016 at 9:39 PM, Vladimir Ozerov < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>>> Alexey Kuznetsov, >>>>>>>>>>>> >>>>>>>>>>>> Provided you have more expertise with POJO store, could you >>>>>>>>>>>> please advise what could cause this exception? Seems that POJO >>>>>>>>>>>> store >>>>>>>>>>>> expects some injection, which doesn't happen. >>>>>>>>>>>> Are there any specific requirements here? C++ node starts as a >>>>>>>>>>>> regular node and also use Spring. >>>>>>>>>>>> >>>>>>>>>>>> Vladimir. >>>>>>>>>>>> >>>>>>>>>>>> On Mon, Apr 25, 2016 at 5:32 PM, Murthy Kakarlamudi < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Any help on this issue please... >>>>>>>>>>>>> >>>>>>>>>>>>> On Sat, Apr 16, 2016 at 7:29 PM, Murthy Kakarlamudi < >>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>> In my use case, I am starting a node from .net which loads >>>>>>>>>>>>>> data from SQL Server table into cache upon start up. I have to >>>>>>>>>>>>>> read those >>>>>>>>>>>>>> entries from cache from a c++ node that acts as a client. I am >>>>>>>>>>>>>> getting the >>>>>>>>>>>>>> below error trying to start the node from c++. >>>>>>>>>>>>>> >>>>>>>>>>>>>> [19:08:57] Security status [authentication=off, tls/ssl=off] >>>>>>>>>>>>>> [19:08:58,163][SEVERE][main][IgniteKernal] Failed to start >>>>>>>>>>>>>> manager: GridManagerAdapter [enabled=true, >>>>>>>>>>>>>> name=o.a.i.i.managers.discovery.GridDiscoveryManager] >>>>>>>>>>>>>> class org.apache.ignite.IgniteCheckedException: Remote node >>>>>>>>>>>>>> has peer class loading enabled flag different from local >>>>>>>>>>>>>> [locId8=f02445af, >>>>>>>>>>>>>> locPeerClassLoading=true, rmtId8=8e52f9c9, >>>>>>>>>>>>>> rmtPeerClassLoading=false, >>>>>>>>>>>>>> rmtAddrs=[LAPTOP-QIT4AVOG/0:0:0:0:0:0:0:1, LAPTOP-QIT4AVOG/ >>>>>>>>>>>>>> 127.0.0.1, LAPTOP-QIT4AVOG/192.168.0.5, >>>>>>>>>>>>>> LAPTOP-QIT4AVOG/2001:0:9d38:90d7:145b:5bf:bb9b:11d9, >>>>>>>>>>>>>> LAPTOP-QIT4AVOG/2600:8806:0:8d00:0:0:0:1, >>>>>>>>>>>>>> /2600:8806:0:8d00:3ccf:1e94:1ab4:83a9, >>>>>>>>>>>>>> /2600:8806:0:8d00:f114:bf30:2068:352d]] >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.checkAttributes(GridDiscoveryManager.java:1027) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:680) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1505) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:917) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1688) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1547) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1003) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:534) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:515) >>>>>>>>>>>>>> at org.apache.ignite.Ignition.start(Ignition.java:322) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.ignite.internal.processors.platform.PlatformAbstractBootstrap.start(PlatformAbstractBootstrap.java >>>>>>>>>>>>>> >>>>>>>>>>>>>> Below if my config for .net node: >>>>>>>>>>>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <beans xmlns="http://www.springframework.org/schema/beans" >>>>>>>>>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>>>>>>>>>>>>> xsi:schemaLocation=" >>>>>>>>>>>>>> http://www.springframework.org/schema/beans >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://www.springframework.org/schema/beans/spring-beans.xsd >>>>>>>>>>>>>> "> >>>>>>>>>>>>>> <bean id="ignite.cfg" >>>>>>>>>>>>>> class="org.apache.ignite.configuration.IgniteConfiguration"> >>>>>>>>>>>>>> <property name="connectorConfiguration"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.configuration.ConnectorConfiguration"> >>>>>>>>>>>>>> <property name="idleTimeout" value="20000"/> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <property name="cacheConfiguration"> >>>>>>>>>>>>>> <list> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.configuration.CacheConfiguration"> >>>>>>>>>>>>>> <property name="name" value="BU"/> >>>>>>>>>>>>>> <property name="writeThrough" value="true"/> >>>>>>>>>>>>>> <property name="readThrough" value="true"/> >>>>>>>>>>>>>> <property name="writeBehindEnabled" value="true"/> >>>>>>>>>>>>>> <property name="writeBehindFlushFrequency" >>>>>>>>>>>>>> value="120000"/> >>>>>>>>>>>>>> <property name="cacheStoreFactory"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.platform.dotnet.PlatformDotNetCacheStoreFactory"> >>>>>>>>>>>>>> <property name="typeName" >>>>>>>>>>>>>> value="TestIgniteDAL.SQLServerStore, TestIgniteDAL"/> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> <property name ="typeMetadata"> >>>>>>>>>>>>>> <list> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.cache.CacheTypeMetadata"> >>>>>>>>>>>>>> <!-- Type to query. --> >>>>>>>>>>>>>> <property name="valueType" >>>>>>>>>>>>>> value="BusinessUnit"/> >>>>>>>>>>>>>> <!-- Fields to be queried. --> >>>>>>>>>>>>>> <property name="queryFields"> >>>>>>>>>>>>>> <map> >>>>>>>>>>>>>> <entry key="BUID" >>>>>>>>>>>>>> value="java.lang.Integer"/> >>>>>>>>>>>>>> <entry key="BUName" >>>>>>>>>>>>>> value="java.lang.String"/> >>>>>>>>>>>>>> <entry key="CreatedByID" >>>>>>>>>>>>>> value="java.lang.Integer"/> >>>>>>>>>>>>>> <entry key="CreatedDate" >>>>>>>>>>>>>> value="java.util.Date"/> >>>>>>>>>>>>>> <entry key="ModifiedByID" >>>>>>>>>>>>>> value="java.lang.Integer"/> >>>>>>>>>>>>>> <entry key="ModifiedDate" >>>>>>>>>>>>>> value="java.util.Date"/> >>>>>>>>>>>>>> </map> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> <!-- Fields to index in ascending order. --> >>>>>>>>>>>>>> <property name="ascendingFields"> >>>>>>>>>>>>>> <map> >>>>>>>>>>>>>> <entry key="BUID" >>>>>>>>>>>>>> value="java.lang.Integer"/> >>>>>>>>>>>>>> </map> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </list> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </list> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <property name="communicationSpi"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi"> >>>>>>>>>>>>>> <property name="sharedMemoryPort" value="-1"/> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <property name="discoverySpi"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> >>>>>>>>>>>>>> <property name="ipFinder"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> >>>>>>>>>>>>>> <property name="addresses"> >>>>>>>>>>>>>> <list> >>>>>>>>>>>>>> <value>127.0.0.1:47500..47509</value> >>>>>>>>>>>>>> </list> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </beans> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Below is my config for node from c++: >>>>>>>>>>>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <!-- >>>>>>>>>>>>>> Licensed to the Apache Software Foundation (ASF) under one >>>>>>>>>>>>>> or more >>>>>>>>>>>>>> contributor license agreements. See the NOTICE file >>>>>>>>>>>>>> distributed with >>>>>>>>>>>>>> this work for additional information regarding copyright >>>>>>>>>>>>>> ownership. >>>>>>>>>>>>>> The ASF licenses this file to You under the Apache License, >>>>>>>>>>>>>> Version 2.0 >>>>>>>>>>>>>> (the "License"); you may not use this file except in >>>>>>>>>>>>>> compliance with >>>>>>>>>>>>>> the License. You may obtain a copy of the License at >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://www.apache.org/licenses/LICENSE-2.0 >>>>>>>>>>>>>> >>>>>>>>>>>>>> Unless required by applicable law or agreed to in writing, >>>>>>>>>>>>>> software >>>>>>>>>>>>>> distributed under the License is distributed on an "AS IS" >>>>>>>>>>>>>> BASIS, >>>>>>>>>>>>>> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either >>>>>>>>>>>>>> express or implied. >>>>>>>>>>>>>> See the License for the specific language governing >>>>>>>>>>>>>> permissions and >>>>>>>>>>>>>> limitations under the License. >>>>>>>>>>>>>> --> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <beans xmlns="http://www.springframework.org/schema/beans" >>>>>>>>>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>>>>>>>>>>>>> xmlns:util="http://www.springframework.org/schema/util >>>>>>>>>>>>>> " >>>>>>>>>>>>>> xsi:schemaLocation=" >>>>>>>>>>>>>> http://www.springframework.org/schema/beans >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://www.springframework.org/schema/beans/spring-beans.xsd >>>>>>>>>>>>>> http://www.springframework.org/schema/util >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://www.springframework.org/schema/util/spring-util.xsd"> >>>>>>>>>>>>>> <bean id="grid.cfg" >>>>>>>>>>>>>> class="org.apache.ignite.configuration.IgniteConfiguration"> >>>>>>>>>>>>>> <!-- Set to true to enable distributed class loading >>>>>>>>>>>>>> for examples, default is false. --> >>>>>>>>>>>>>> <property name="peerClassLoadingEnabled" >>>>>>>>>>>>>> value="true"/> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <property name="cacheConfiguration"> >>>>>>>>>>>>>> <list> >>>>>>>>>>>>>> <!-- >>>>>>>>>>>>>> Partitioned cache example configuration >>>>>>>>>>>>>> with binary objects enabled. >>>>>>>>>>>>>> Used in .NET example that is available >>>>>>>>>>>>>> only in enterprise edition. >>>>>>>>>>>>>> --> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.configuration.CacheConfiguration"> >>>>>>>>>>>>>> <property name="atomicityMode" value="ATOMIC"/> >>>>>>>>>>>>>> <property name="backups" value="1"/> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <!-- >>>>>>>>>>>>>> Partitioned cache example configuration. >>>>>>>>>>>>>> Used in .NET cache store example that is >>>>>>>>>>>>>> available only in enterprise edition. >>>>>>>>>>>>>> --> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.configuration.CacheConfiguration"> >>>>>>>>>>>>>> <property name="name" value="tx"/> >>>>>>>>>>>>>> <property name="atomicityMode" >>>>>>>>>>>>>> value="TRANSACTIONAL"/> >>>>>>>>>>>>>> <property name="backups" value="1"/> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </list> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> >>>>>>>>>>>>>> <!-- Explicitly configure TCP discovery SPI to >>>>>>>>>>>>>> provide list of initial nodes. --> >>>>>>>>>>>>>> <property name="discoverySpi"> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> >>>>>>>>>>>>>> <property name="ipFinder"> >>>>>>>>>>>>>> <!-- >>>>>>>>>>>>>> Ignite provides several options for >>>>>>>>>>>>>> automatic discovery that can be used >>>>>>>>>>>>>> instead os static IP based discovery. >>>>>>>>>>>>>> --> >>>>>>>>>>>>>> <!-- Uncomment static IP finder to enable >>>>>>>>>>>>>> static-based discovery of initial nodes. --> >>>>>>>>>>>>>> <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> >>>>>>>>>>>>>> <!-- <bean >>>>>>>>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder"> >>>>>>>>>>>>>> --> >>>>>>>>>>>>>> <property name="addresses"> >>>>>>>>>>>>>> <list> >>>>>>>>>>>>>> <!-- In distributed >>>>>>>>>>>>>> environment, replace with actual host IP address. --> >>>>>>>>>>>>>> <value>127.0.0.1:47500 >>>>>>>>>>>>>> ..47501</value> >>>>>>>>>>>>>> </list> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </property> >>>>>>>>>>>>>> </bean> >>>>>>>>>>>>>> </beans> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Below c++ code is trying to access the cache: >>>>>>>>>>>>>> int main() >>>>>>>>>>>>>> { >>>>>>>>>>>>>> IgniteConfiguration cfg; >>>>>>>>>>>>>> >>>>>>>>>>>>>> cfg.jvmInitMem = 512; >>>>>>>>>>>>>> cfg.jvmMaxMem = 512; >>>>>>>>>>>>>> >>>>>>>>>>>>>> //cfg.springCfgPath = >>>>>>>>>>>>>> "platforms/cpp/examples/config/example-cache.xml"; >>>>>>>>>>>>>> cfg.springCfgPath = "config/example-cache.xml"; >>>>>>>>>>>>>> try >>>>>>>>>>>>>> { >>>>>>>>>>>>>> // Start a node. >>>>>>>>>>>>>> Ignite grid = Ignition::Start(cfg); >>>>>>>>>>>>>> std::cout << std::endl; >>>>>>>>>>>>>> std::cout << ">>> Cache node started." << std::endl; >>>>>>>>>>>>>> std::cout << std::endl; >>>>>>>>>>>>>> >>>>>>>>>>>>>> //string key >>>>>>>>>>>>>> Cache<std::string, CBusinessObject> cache = >>>>>>>>>>>>>> grid.GetCache<std::string, CBusinessObject>("BU"); >>>>>>>>>>>>>> cache.Clear(); >>>>>>>>>>>>>> CBusinessObject obj("MSFT", 45.23); >>>>>>>>>>>>>> //save in cache >>>>>>>>>>>>>> cache.Put("MSFT", obj); >>>>>>>>>>>>>> >>>>>>>>>>>>>> //retreive from cache >>>>>>>>>>>>>> CBusinessObject result = cache.Get("MSFT"); >>>>>>>>>>>>>> >>>>>>>>>>>>>> std::cout << result.ToString(); >>>>>>>>>>>>>> >>>>>>>>>>>>>> // Stop node. >>>>>>>>>>>>>> Ignition::StopAll(false); >>>>>>>>>>>>>> } >>>>>>>>>>>>>> catch (IgniteError& err) >>>>>>>>>>>>>> { >>>>>>>>>>>>>> std::cout << "An error occurred: " << err.GetText() << >>>>>>>>>>>>>> std::endl; >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> std::cout << std::endl; >>>>>>>>>>>>>> std::cout << ">>> Execution finished, press any key to exit >>>>>>>>>>>>>> ..." << std::endl; >>>>>>>>>>>>>> std::cout << std::endl; >>>>>>>>>>>>>> >>>>>>>>>>>>>> std::cin.get(); >>>>>>>>>>>>>> >>>>>>>>>>>>>> return 0; >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks for any help. >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Alexey Kuznetsov >>>>>>>>>>> GridGain Systems >>>>>>>>>>> www.gridgain.com >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> >
