ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vladimir Ozerov <voze...@gridgain.com>
Subject Re: Error running nodes in .net and c++
Date Tue, 26 Apr 2016 12:06:20 GMT
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 <ksatya@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 <
> akuznetsov@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 <vozerov@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 <ksatya@gmail.com>
>>> wrote:
>>>
>>>> Any help on this issue please...
>>>>
>>>> On Sat, Apr 16, 2016 at 7:29 PM, Murthy Kakarlamudi <ksatya@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
>>
>
>

Mime
View raw message