There are the following lines in the TcpDiscoverySpi implementation:

if (log.isDebugEnabled())
    log.error("Exception on direct send: " + e.getMessage(), e);

So, these exceptions are shown only when debug logging is enabled, and they
are logged as errors.

Neeraj, you probably just didn't enable debug log on the second node, so
you don't see these exceptions on it.

Denis

пн, 9 апр. 2018 г. в 7:00, Neeraj Vaidya <neeraj.vai...@yahoo.co.in>:

> Hi Denis,
> But this issue does not occur on node2 even if it is started before node1.
> I feel even otherwise this message related to Discovery of level SEVERE is
> a bit misleading. Wouldn’t it be visible when log level is anything higher
> than DEBUG  as well ? I agree this is not a functional issue as it only
> occurs at startup when performing discovery and gets cleared when a peer is
> discovered.
>
> Regards,
> Neeraj
>
> Sent from my iPhone
>
> On 8 Apr 2018, at 01:58, Amir Akhmedov <amir.akhme...@gmail.com> wrote:
>
> Hi Denis,
>
> I had a similar logs before and I can confirm I got them when enabled
> "debug" level but the log level "severe" was really confusing.
>
> On Fri, Apr 6, 2018, 8:52 AM Denis Mekhanikov <dmekhani...@gmail.com>
> wrote:
>
>> Neeraj,
>>
>> You probably enabled debug logging on the following package:
>> *org.apache.ignite.spi.discovery.tcp*
>>
>> There is nothing wrong in these exceptions actually.
>> The first connection refused exception happens because there are two
>> hosts in the IP finder configuration, but when you start the first node,
>> nobody is bound to the discovery port on the second host. So, you get 
>> *"Connection
>> refused" *exception, when discovery SPI is trying to connect to the
>> second host.
>>
>> If you see a message like this, then it means, that discovery finished
>> its work successfully:
>> *Topology snapshot [ver=1, servers=1, ...]*
>>
>> You can disable debug logging not to see these exceptions.
>>
>> The second exception is also doesn't mean anything bad.
>> It only means, that some object was transferred to this node, and
>> connection was suddenly closed.
>>
>> So, none of these exceptions mean anything bad.
>>
>> Denis
>>
>> пт, 6 апр. 2018 г. в 2:34, Neeraj Vaidya <neeraj.vai...@yahoo.co.in>:
>>
>>> Hi,
>>> I have 2 virtualbox guest OS'es (CentOS7 64-bit) , each having firewalld
>>> stopped and disabled.
>>> The nodes are axlrate-node-1 and axlrate-node-2. I have updated
>>> default-config.xml in both servers
>>> My default-config.xml looks like below :
>>> ---------------------------------------------------------default-config.xml
>>> @ axlrate-node-1---------------------------------------------------------
>>> <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";>
>>>     <!--
>>>         Alter configuration below as needed.
>>>     -->
>>>     <bean id="grid.cfg"
>>> class="org.apache.ignite.configuration.IgniteConfiguration">
>>> <property name="discoverySpi">
>>>     <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
>>>         <property name="localAddress" value="axlrate-node-1"/>
>>>       <property name="ipFinder">
>>>         <bean
>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
>>>           <property name="addresses">
>>>             <list>
>>>               <!--
>>>               Explicitly specifying address of a local node to let it
>>> start and                 operate normally even if there is no more nodes
>>> in the cluster.
>>>               You can also optionally specify an individual port or port
>>> range.
>>>               -->
>>>               <value>axlrate-node-1</value>
>>>               <value>axlrate-node-2</value>
>>>               <!--
>>>               IP Address and optional port range of a remote node.
>>>               You can also optionally specify an individual port and
>>> don't set                 the port range at all.
>>>               -->
>>>             </list>
>>>           </property>
>>>         </bean>
>>>       </property>
>>>     </bean>
>>>   </property>
>>>         </bean>
>>> </beans>
>>>
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>>
>>> ---------------------------------------------------------default-config.xml
>>> @ axlrate-node-2---------------------------------------------------------
>>> <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";>
>>>     <!--
>>>         Alter configuration below as needed.
>>>     -->
>>>     <bean id="grid.cfg"
>>> class="org.apache.ignite.configuration.IgniteConfiguration">
>>> <property name="discoverySpi">
>>>     <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
>>>         <property name="localAddress" value="axlrate-node-2"/>
>>>       <property name="ipFinder">
>>>         <bean
>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
>>>           <property name="addresses">
>>>             <list>
>>>               <!--
>>>               Explicitly specifying address of a local node to let it
>>> start and                 operate normally even if there is no more nodes
>>> in the cluster.
>>>               You can also optionally specify an individual port or port
>>> range.
>>>               -->
>>>               <value>axlrate-node-1</value>
>>>               <value>axlrate-node-2</value>
>>>               <!--
>>>               IP Address and optional port range of a remote node.
>>>               You can also optionally specify an individual port and
>>> don't set                 the port range at all.
>>>               -->
>>>             </list>
>>>           </property>
>>>         </bean>
>>>       </property>
>>>     </bean>
>>>   </property>
>>>         </bean>
>>> </beans>
>>>
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>>
>>>
>>> When I try to start ignite on axlrate-node-1, I see the following error
>>> at startup.
>>>
>>> ---------------------------------------------------------------------------log
>>> on
>>> axlrate-node-1---------------------------------------------------------------------------------------
>>> [09:14:41,747][SEVERE][main][TcpDiscoverySpi] Exception on direct send:
>>> Connection refused (Connection refused)
>>> java.net.ConnectException: Connection refused (Connection refused)
>>>         at java.net.PlainSocketImpl.socketConnect(Native Method)
>>>         at java.net
>>> .AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
>>>         at java.net
>>> .AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
>>>         at java.net
>>> .AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
>>>         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
>>>         at java.net.Socket.connect(Socket.java:589)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.openSocket(TcpDiscoverySpi.java:1386)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.openSocket(TcpDiscoverySpi.java:1349)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.sendMessageDirectly(ServerImpl.java:1169)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.sendJoinRequestMessage(ServerImpl.java:1016)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:860)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:360)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:1846)
>>>         at
>>> org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:297)
>>>         at
>>> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:882)
>>>         at
>>> org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1852)
>>>         at
>>> org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1002)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1909)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1652)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1080)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:998)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:884)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:783)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:653)
>>>         at
>>> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:622)
>>>         at org.apache.ignite.Ignition.start(Ignition.java:347)
>>>         at
>>> org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
>>>
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>>
>>> Then, when I start the axlrate-node-2, the nodes discover each other
>>> successfully.
>>> However, when I stop axlrate-node-2, I see the following error in
>>> console of axlrate-node-1. There are no errors in axlrate-node-2
>>> console/logs.
>>>
>>>
>>> -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>> [09:25:02,451][SEVERE][tcp-disco-sock-reader-#6][TcpDiscoverySpi] Caught
>>> exception on message read 
>>> [sock=Socket[addr=/192.168.56.102,port=35969,localport=47500],
>>> locNodeId=cb6e4fc3-315c-4212-9a0e-139add4d328b,
>>> rmtNodeId=cf3f084c-662b-4ea2-bc9b-8140a61ed109]
>>> class org.apache.ignite.IgniteCheckedException: Failed to deserialize
>>> object with given class loader: sun.misc.Launcher$AppClassLoader@764c12b6
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:129)
>>>         at
>>> org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
>>>         at
>>> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9740)
>>>         at
>>> org.apache.ignite.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:5946)
>>>         at
>>> org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
>>> Caused by: java.io.EOFException
>>>         at
>>> java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2671)
>>>         at
>>> java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3146)
>>>         at
>>> java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:858)
>>>         at java.io.ObjectInputStream.<init>(ObjectInputStream.java:354)
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.<init>(JdkMarshallerObjectInputStream.java:39)
>>>         at
>>> org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:119)
>>>         ... 4 more
>>>
>>> -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>>
>>>
>>> I can successfully telnet to axlrate-node-2 on port 47100 as well as
>>> 47500.
>>>
>>> Any clues on what the issue could be ? I am especially worried about the
>>> Marshaller errors. There are no custom classes being used here. It is
>>> purely using Ignite installed JAR's only.
>>>
>>> Regards,
>>> Neeraj
>>>
>>>

Reply via email to