Hi Murthy, Please provide configs you used to start clients and servers.
Vladimir. On Wed, Apr 27, 2016 at 5:45 AM, Murthy Kakarlamudi <ksa...@gmail.com> 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 <ksa...@gmail.com> > 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 <voze...@gridgain.com> >> 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 <ksa...@gmail.com> >>> 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 <voze...@gridgain.com> >>>> 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 <ksa...@gmail.com> >>>>> 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 < >>>>>> akuznet...@gridgain.com> 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 < >>>>>>> voze...@gridgain.com> 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 < >>>>>>>> ksa...@gmail.com> wrote: >>>>>>>> >>>>>>>>> Any help on this issue please... >>>>>>>>> >>>>>>>>> On Sat, Apr 16, 2016 at 7:29 PM, Murthy Kakarlamudi < >>>>>>>>> ksa...@gmail.com> 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 >>>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >