Hi Murthy,

The stack trace you provided shows that you still use old unpatched
version. This could be observed by the line "at
org.apache.ignite.Ignition.start(Ignition.java:322)". Patched version do
not perform this call any more and goes directly to the
"IgnitionEx.start()".
You can see the fix made by myself here:
https://github.com/apache/ignite/commit/22263773313dde6694f41d8eff2cd7af3fb72936#diff-016bf8b9581f2cf9c0e7255d54bd9f83R43

Could you please double-check that correct version of ignite-core.jar is
picked?

Vladimir.


On Mon, May 2, 2016 at 7:33 PM, Murthy Kakarlamudi <[email protected]> wrote:

> Hi Denis..Thanks for your response. I tried that too, but am getting an
> Spring Context not Injected error as below:
>
> [12:56:43,819][SEVERE][main][IgniteKernal] Got exception while starting
>> (will rollback startup routine).
>> 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:1260)
>>         at
>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:785)
>>         at
>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:922)
>>         at
>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1736)
>>         at
>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1589)
>>         at
>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1042)
>>         at
>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:569)
>>         at
>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:516)
>>         at org.apache.ignite.Ignition.start(Ignition.java:322)
>>         at
>> org.apache.ignite.internal.processors.platform.PlatformAbstractBootstrap.start(PlatformAbstractBootstrap.java:36)
>>         at
>> org.apache.ignite.internal.processors.platform.PlatformIgnition.start(PlatformIgnition.java:72)
>>
>
>
> Below is the c++ client config I used that had Java based Cachestore
> Implementation details. Please let me know if I am doing anything wrong
> here.
>
> <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="myDataSource"
> class="org.springframework.jdbc.datasource.DriverManagerDataSource">
> <property name="driverClassName"
> value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
> <property name="url"
> value="jdbc:sqlserver://localhost;databaseName=test;integratedSecurity=true"
> />
> </bean>
> <bean id="ignite.cfg"
> class="org.apache.ignite.configuration.IgniteConfiguration">
>         <!-- Set to true to enable distributed class loading for examples,
> default is false. -->
>
> <property name="clientMode" value="true"/>
> <property name="binaryConfiguration">
> <bean class="org.apache.ignite.configuration.BinaryConfiguration">
> <property name="compactFooter" value="false" />
> <property name="idMapper">
> <bean class="org.apache.ignite.binary.BinaryBasicIdMapper">
> <constructor-arg name="isLowerCase" value="true" />
> </bean>
> </property>
> <property name="nameMapper">
> <bean class="org.apache.ignite.binary.BinaryBasicNameMapper">
> <constructor-arg name="isSimpleName" value="true" />
> </bean>
> </property>
> </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.
>                     -->
>                     <!-- 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>
>
>
>>
> On Mon, May 2, 2016 at 12:18 PM, Denis Magda <[email protected]> wrote:
>
>> Hi Murthy,
>>
>> In my understanding you can only set Java based CacheStore
>> implementations. That’s why there are no .net and c++ examples for this
>> kind of functionality.
>>
>> You need to specify Java based CacheStore implementation via an XML
>> configuration and everything should work fine out of the box after that.
>>
>> Regards,
>> Denis
>>
>> On May 2, 2016, at 8:08 PM, Murthy Kakarlamudi <[email protected]> wrote:
>>
>> Any help on this issue please. Basically I am stuck at a point where I
>> have to access the database from c++ client node. I could not find an
>> equivalent java/.net cachestore example for c++. Looking for guidance on
>> how to access persistence store from c++.
>>
>> Thanks,
>> Murthy.
>>
>> On Sat, Apr 30, 2016 at 1:19 PM, Murthy Kakarlamudi <[email protected]>
>> wrote:
>>
>>> Thanks Denis...this config helped me bypass the error.
>>>
>>> Now I am getting the same error that I used to get in 1.5. Valentin...my
>>> understanding was that you put a fix for this error in 1.6 version. I am
>>> still seeing this error in 1.6 too. Error below. Do I have to enable any
>>> config setting to bypass this error?
>>>
>>> [12:56:43,819][SEVERE][main][IgniteKernal] Got exception while starting
>>> (will rollback startup routine).
>>> 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:1260)
>>>         at
>>> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:785)
>>>         at
>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:922)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1736)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1589)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1042)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:569)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:516)
>>>         at org.apache.ignite.Ignition.start(Ignition.java:322)
>>>         at
>>> org.apache.ignite.internal.processors.platform.PlatformAbstractBootstrap.start(PlatformAbstractBootstrap.java:36)
>>>         at
>>> org.apache.ignite.internal.processors.platform.PlatformIgnition.start(PlatformIgnition.java:72)
>>> [12:56:43,886][SEVERE][tcp-client-disco-sock-writer-#2%null%][TcpDiscoverySpi]
>>> Failed to send message: TcpDiscoveryPingResponse [clientExists=false,
>>> super=TcpDiscoveryAbstractMessage [sndNodeId=null,
>>> id=e8db9186451-09fe6718-3c5c-4699-ac48-b083a1726632, verifierNodeId=null,
>>> topVer=0, pendingIdx=0, failedNodes=null, isClient=true]]
>>> class org.apache.ignite.IgniteCheckedException: Failed to serialize
>>> object: TcpDiscoveryPingResponse [clientExists=false,
>>> super=TcpDiscoveryAbstractMessage [sndNodeId=null,
>>> id=e8db9186451-09fe6718-3c5c-4699-ac48-b083a1726632, verifierNodeId=null,
>>> topVer=0, pendingIdx=0, failedNodes=null, isClient=true]]
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshaller.marshal(JdkMarshaller.java:82)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.writeToSocket(TcpDiscoverySpi.java:1380)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.writeToSocket(TcpDiscoverySpi.java:1351)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ClientImpl$SocketWriter.body(ClientImpl.java:1071)
>>>         at
>>> org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
>>> Caused by: java.net.SocketException: Socket closed
>>>         at
>>> java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:116)
>>>         at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
>>>         at
>>> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
>>>         at
>>> java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshallerOutputStreamWrapper.flush(JdkMarshallerOutputStreamWrapper.java:58)
>>>         at
>>> java.io.ObjectOutputStream$BlockDataOutputStream.flush(ObjectOutputStream.java:1823)
>>>         at java.io.ObjectOutputStream.flush(ObjectOutputStream.java:719)
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshaller.marshal(JdkMarshaller.java:79)
>>>         ... 4 more
>>> [12:56:43] Ignite node stopped OK [uptime=00:00:05:890]
>>> An error occurred: Spring application context resource is not injected.
>>>
>>> My Java server node config:
>>> <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://localhost;databaseName=test;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" />
>>> <property name="idMapper">
>>> <bean class="org.apache.ignite.binary.BinaryBasicIdMapper">
>>> <constructor-arg name="isLowerCase" value="true" />
>>> </bean>
>>> </property>
>>> <property name="nameMapper">
>>> <bean class="org.apache.ignite.binary.BinaryBasicNameMapper">
>>> <constructor-arg name="isSimpleName" value="true" />
>>> </bean>
>>> </property>
>>> </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>
>>>
>>> C++ Client node config:
>>> <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="myDataSource"
>>> class="org.springframework.jdbc.datasource.DriverManagerDataSource">
>>> <property name="driverClassName"
>>> value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
>>> <property name="url"
>>> value="jdbc:sqlserver://localhost;databaseName=test;integratedSecurity=true"
>>> />
>>> </bean>
>>> <bean id="ignite.cfg"
>>> class="org.apache.ignite.configuration.IgniteConfiguration">
>>>         <!-- Set to true to enable distributed class loading for
>>> examples, default is false. -->
>>>
>>> <property name="clientMode" value="true"/>
>>> <property name="binaryConfiguration">
>>> <bean class="org.apache.ignite.configuration.BinaryConfiguration">
>>> <property name="compactFooter" value="false" />
>>> <property name="idMapper">
>>> <bean class="org.apache.ignite.binary.BinaryBasicIdMapper">
>>> <constructor-arg name="isLowerCase" value="true" />
>>> </bean>
>>> </property>
>>> <property name="nameMapper">
>>> <bean class="org.apache.ignite.binary.BinaryBasicNameMapper">
>>> <constructor-arg name="isSimpleName" value="true" />
>>> </bean>
>>> </property>
>>> </bean>
>>> </property>
>>> <!--
>>>         <property name="cacheConfiguration">
>>>             <list>
>>>                 <bean
>>> class="org.apache.ignite.configuration.CacheConfiguration">
>>> <property name="atomicityMode" value="ATOMIC"/>
>>>                     <property name="backups" value="1"/>
>>>                 </bean>
>>>             </list>
>>>         </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.
>>>                     -->
>>>                     <!-- 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>
>>>
>>> On Sat, Apr 30, 2016 at 11:43 AM, Denis Magda <[email protected]>
>>> wrote:
>>>
>>>> Start your java server node setting up BinaryConfiguration in a way
>>>> that C++ and Java nodes can co-exist together
>>>>
>>>> BinaryConfiguration bCfg = new BinaryConfiguration();
>>>>
>>>> bCfg.setCompactFooter(false);
>>>> bCfg.setNameMapper(new BinaryBasicNameMapper(true));
>>>> bCfg.setIdMapper(new BinaryBasicIdMapper(true));
>>>>
>>>>
>>>> igniteCfg.setBinaryConfiguration(bCfg);
>>>>
>>>> //start Ignite server node.
>>>>
>>>> If you use Spring xml config for the java server node then you can
>>>> easily map the Java code above to XML.
>>>>
>>>> —
>>>> Denis
>>>>
>>>> On Apr 30, 2016, at 9:37 PM, Murthy Kakarlamudi <[email protected]>
>>>> wrote:
>>>>
>>>> In looking closely at the error:
>>>> Caused by: class org.apache.ignite.spi.IgniteSpiException: Local
>>>> node's binary configuration is not equal to remote node's binary
>>>> configuration [locNodeId=a210c5ba-9c22-4c95-8764-f475fe1498fb,
>>>> rmtNodeId=15796c03-7fd9-426d-af18-deb8d80fc786, locBinaryCfg={
>>>> *globIdMapper=**org.apache.ignite.binary.**BinaryBasicIdMapper,*
>>>> compactFooter=false, globSerializer=null}, rmtBinaryCfg={
>>>> *globIdMapper=**null*, compactFooter=false, globSerializer=null}]
>>>>
>>>> globIdMapper is different between local and remote. Probably that is
>>>> the error Ignite is complaining about. Any idea how to bypass this setting?
>>>>
>>>> On Fri, Apr 29, 2016 at 7:29 PM, Murthy Kakarlamudi <[email protected]>
>>>> wrote:
>>>>
>>>>> Hello Igor,
>>>>>      As I was not able to get past the error with missing dynamic link
>>>>> library by running my c++ application, I took a different approach.
>>>>>
>>>>> My java server node is started that loaded entries from a SQL Server
>>>>> table into cache. Then I tried running ignite.exe creating by building c++
>>>>> binaries passing in the spring config that I used to start my java server
>>>>> node and am running into the below error:
>>>>>
>>>>> [19:23:19,228][SEVERE][main][IgniteKernal] Failed to start manager:
>>>>> GridManagerAdapter [enabled=true,
>>>>> name=o.a.i.i.managers.discovery.GridDiscoveryManager]
>>>>> class org.apache.ignite.IgniteCheckedException: Failed to start SPI:
>>>>> TcpDiscoverySpi [addrRslvr=null, sockTimeout=5000, ackTimeout=5000,
>>>>> reconCnt=10, maxAckTimeout=600000, forceSrvMode=false,
>>>>> clientReconnectDisabled=false]
>>>>>         at
>>>>> org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:258)
>>>>>         at
>>>>> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:675)
>>>>>         at
>>>>> org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1523)
>>>>>         at
>>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:893)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1736)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1589)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1042)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:569)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:516)
>>>>>         at org.apache.ignite.Ignition.start(Ignition.java:322)
>>>>>         at
>>>>> org.apache.ignite.internal.processors.platform.PlatformAbstractBootstrap.start(PlatformAbstractBootstrap.java:36)
>>>>>         at
>>>>> org.apache.ignite.internal.processors.platform.PlatformIgnition.start(PlatformIgnition.java:72)
>>>>> Caused by: class org.apache.ignite.spi.IgniteSpiException: Local
>>>>> node's binary configuration is not equal to remote node's binary
>>>>> configuration [locNodeId=a210c5ba-9c22-4c95-8764-f475fe1498fb,
>>>>> rmtNodeId=15796c03-7fd9-426d-af18-deb8d80fc786,
>>>>> locBinaryCfg={globIdMapper=org.apache.ignite.binary.BinaryBasicIdMapper,
>>>>> compactFooter=false, globSerializer=null}, 
>>>>> rmtBinaryCfg={globIdMapper=null,
>>>>> compactFooter=false, globSerializer=null}]
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.checkFailedError(TcpDiscoverySpi.java:1643)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:884)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:333)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:1831)
>>>>>         at
>>>>> org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:255)
>>>>>         ... 11 more
>>>>> [19:23:19,311][SEVERE][main][IgniteKernal] Got exception while
>>>>> starting (will rollback startup routine).
>>>>> class org.apache.ignite.IgniteCheckedException: Failed to start
>>>>> manager: GridManagerAdapter [enabled=true,
>>>>> name=org.apache.ignite.internal.managers.discovery.GridDiscoveryManager]
>>>>>         at
>>>>> org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1528)
>>>>>         at
>>>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:893)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1736)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1589)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1042)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:569)
>>>>>         at
>>>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:516)
>>>>>         at org.apache.ignite.Ignition.start(Ignition.java:322)
>>>>>         at
>>>>> org.apache.ignite.internal.processors.platform.PlatformAbstractBootstrap.start(PlatformAbstractBootstrap.java:36)
>>>>>         at
>>>>> org.apache.ignite.internal.processors.platform.PlatformIgnition.start(PlatformIgnition.java:72)
>>>>> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to
>>>>> start SPI: TcpDiscoverySpi [addrRslvr=null, sockTimeout=5000,
>>>>> ackTimeout=5000, reconCnt=10, maxAckTimeout=600000, forceSrvMode=false,
>>>>> clientReconnectDisabled=false]
>>>>>         at
>>>>> org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:258)
>>>>>         at
>>>>> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:675)
>>>>>         at
>>>>> org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1523)
>>>>>         ... 9 more
>>>>> Caused by: class org.apache.ignite.spi.IgniteSpiException: Local
>>>>> node's binary configuration is not equal to remote node's binary
>>>>> configuration [locNodeId=a210c5ba-9c22-4c95-8764-f475fe1498fb,
>>>>> rmtNodeId=15796c03-7fd9-426d-af18-deb8d80fc786,
>>>>> locBinaryCfg={globIdMapper=org.apache.ignite.binary.BinaryBasicIdMapper,
>>>>> compactFooter=false, globSerializer=null}, 
>>>>> rmtBinaryCfg={globIdMapper=null,
>>>>> compactFooter=false, globSerializer=null}]
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.checkFailedError(TcpDiscoverySpi.java:1643)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:884)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:333)
>>>>>         at
>>>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:1831)
>>>>>         at
>>>>> org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:255)
>>>>>
>>>>> Can you please help...
>>>>>
>>>>> On Fri, Apr 29, 2016 at 4:19 PM, Murthy Kakarlamudi <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> I cleaned up 1.6 libraries and tried to build my c++ project and got
>>>>>> the link error. That's a good sign. I went ahead, built the 1.6 libraries
>>>>>> and them my c++ project. But now when I am trying to run it, getting the
>>>>>> below error:
>>>>>>
>>>>>> <image.png>
>>>>>>
>>>>>> On Fri, Apr 29, 2016 at 3:14 PM, Igor Sapego <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> It seems like you link with the outdated version of the
>>>>>>> ignite.common.dll.
>>>>>>> Your library path seems to be correct though. Try checking your
>>>>>>> configuration
>>>>>>> more thoughtfully.
>>>>>>>
>>>>>>> Also, if you have changed your environment variable maybe it makes
>>>>>>> sense
>>>>>>> to restart VS if you didn't do that so it can pick up environment
>>>>>>> changes.
>>>>>>>
>>>>>>> You may want to try to clean 1.6 libraries just to see if your
>>>>>>> project will give
>>>>>>> you an error when you are trying to build it (there should be
>>>>>>> linking error if you
>>>>>>> are linking with the right libraries).
>>>>>>>
>>>>>>> Please tell if anything of that will help.
>>>>>>>
>>>>>>> Best Regards,
>>>>>>> Igor
>>>>>>>
>>>>>>> On Fri, Apr 29, 2016 at 10:03 PM, Murthy Kakarlamudi <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> That runs fine. No errors.
>>>>>>>>
>>>>>>>> On Fri, Apr 29, 2016 at 2:45 PM, Igor Sapego <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Murthi,
>>>>>>>>>
>>>>>>>>> What about ignite.exe file from the
>>>>>>>>> %IGNITE_HOME%/platforms/cpp/project/vs/$(Platform)/$(Configuration)?
>>>>>>>>> Are you able to run it? Does it give you the same error?
>>>>>>>>>
>>>>>>>>> Best Regards,
>>>>>>>>> Igor
>>>>>>>>>
>>>>>>>>> On Fri, Apr 29, 2016 at 9:07 PM, Murthy Kakarlamudi <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> These are the steps I have taken:
>>>>>>>>>>
>>>>>>>>>> 1. Downloaded 1.6 binary from Jenkins build -
>>>>>>>>>> https://builds.apache.org/view/H-L/view/Ignite/job/Ignite-nightly/lastSuccessfulBuild/
>>>>>>>>>> 2. Updated my IGNITE_HOME variable to point to 1.6
>>>>>>>>>> <image.png>
>>>>>>>>>> 3. Opened  ignite.sln in
>>>>>>>>>> apache-ignite-fabric-1.6.0-SNAPSHOT-bin\platforms\cpp\project\vs 
>>>>>>>>>> folder and
>>>>>>>>>> built the solution.
>>>>>>>>>> 4. In my sample c++ solution I have the below settings at the
>>>>>>>>>> project level
>>>>>>>>>> <image.png>
>>>>>>>>>> <image.png>
>>>>>>>>>>
>>>>>>>>>> Below is my Cache Config:
>>>>>>>>>> <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="clientMode" 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>
>>>>>>>>>>
>>>>>>>>>> On Fri, Apr 29, 2016 at 1:44 PM, Igor Sapego <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> It seems like you are trying to use client node binary from
>>>>>>>>>>> Ignite 1.5 for
>>>>>>>>>>> Ignite 1.6. You should build client node binary for the 1.6
>>>>>>>>>>> instead to use
>>>>>>>>>>> with Ignite 1.6 as they are not cross-compatible.
>>>>>>>>>>>
>>>>>>>>>>> Best Regards,
>>>>>>>>>>> Igor
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Apr 29, 2016 at 8:39 PM, Igor Sapego <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi,
>>>>>>>>>>>>
>>>>>>>>>>>> Where have you got your C++ client node binary from?
>>>>>>>>>>>>
>>>>>>>>>>>> Best Regards,
>>>>>>>>>>>> Igor
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, Apr 29, 2016 at 8:32 PM, Murthy Kakarlamudi <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi All,
>>>>>>>>>>>>>     I downloaded the latest 1.6 binary from latest builds. I
>>>>>>>>>>>>> am trying to start a node from c++ and getting the below error.
>>>>>>>>>>>>>
>>>>>>>>>>>>> An error occurred: Failed to initialize JVM
>>>>>>>>>>>>> [errCls=java.lang.NoSuchMethodError, errMsg=executeNative]
>>>>>>>>>>>>>
>>>>>>>>>>>>> The same c++  node starts fine if I point my IGNITE_HOME to
>>>>>>>>>>>>> 1.5 instead of 1.6.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Any help is much appreciated...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>>
>

Reply via email to