ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hartst <stephen.h...@blueyonder.co.uk>
Subject Failed to send message to remote node error when remote node has been terminated
Date Wed, 16 Nov 2016 14:45:16 GMT
Hi, We are using remote messaging to implement a pub/sub mechanism between
clients  in c#

// done in class constructor ....
_ignite.SetClientMode(true);
var _remoteMessaging = _ignite.GetCluster().ForRemotes().GetMessaging();
...

// done when we publish to topic so interested clients can pick up the
message
_remoteMessaging.Send(message, topic);

and this, on the whole works OK.

However, it looks like when a client terminates, the cluster is not aware of
it and trys to send a message to the now terminated client. This results in
an error like the one below. How can we make the cluster aware that the
non-existent client should not receive any messages any more?

Thanks

Apache.Ignite.Core.Common.IgniteException: Java exception occurred
[class=org.apache.ignite.spi.IgniteSpiException, message=Failed to send
message to remote node: TcpDiscoveryNode
[id=58d0eb84-470d-495d-87dc-4b5088f5a96f, addrs=[0:0:0:0:0:0:0:1,
10.17.32.45, 127.0.0.1], sockAddrs=[10.17.32.45/10.17.32.45:0, /127.0.0.1:0,
/0:0:0:0:0:0:0:1:0], discPort=0, order=146, intOrder=78,
lastExchangeTime=1479306218390, loc=false, ver=1.7.0#20160801-sha1:383273e3,
isClient=true]] ---> Apache.Ignite.Core.Common.JavaException: class
org.apache.ignite.spi.IgniteSpiException: Failed to send message to remote
node: TcpDiscoveryNode [id=58d0eb84-470d-495d-87dc-4b5088f5a96f,
addrs=[0:0:0:0:0:0:0:1, 10.17.32.45, 127.0.0.1],
sockAddrs=[IVA101.options-it.com/10.17.32.45:0, /127.0.0.1:0,
/0:0:0:0:0:0:0:1:0], discPort=0, order=146, intOrder=78,
lastExchangeTime=1479306218390, loc=false, ver=1.7.0#20160801-sha1:383273e3,
isClient=true]
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.sendMessage0(TcpCommunicationSpi.java:1996)
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.sendMessage(TcpCommunicationSpi.java:1936)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1304)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1727)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1516)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.sendUserMessage(GridIoManager.java:1618)
	at
org.apache.ignite.internal.IgniteMessagingImpl.send(IgniteMessagingImpl.java:89)
	at
org.apache.ignite.internal.processors.platform.messaging.PlatformMessaging.processInStreamOutLong(PlatformMessaging.java:92)
	at
org.apache.ignite.internal.processors.platform.PlatformAbstractTarget.inStreamOutLong(PlatformAbstractTarget.java:72)
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to connect
to node (is node still alive?). Make sure that each ComputeTask and cache
Transaction has a timeout set in order to prevent parties from waiting
forever in case of network issues
[nodeId=58d0eb84-470d-495d-87dc-4b5088f5a96f,
addrs=[10.17.32.45/10.17.32.45:47100, /0:0:0:0:0:0:0:1:47100,
/127.0.0.1:47100]]
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2499)
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createNioClient(TcpCommunicationSpi.java:2140)
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.reserveClient(TcpCommunicationSpi.java:2034)
	at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.sendMessage0(TcpCommunicationSpi.java:1970)
	... 8 more
	Suppressed: class org.apache.ignite.IgniteCheckedException: Failed to
connect to address: 10.17.32.45/10.17.32.45:47100
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2504)
		... 11 more
	Caused by: java.net.ConnectException: Connection refused: no further
information
		at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
		at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source)
		at sun.nio.ch.SocketAdaptor.connect(Unknown Source)
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2363)
		... 11 more
	Suppressed: class org.apache.ignite.IgniteCheckedException: Failed to
connect to address: /0:0:0:0:0:0:0:1:47100
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2504)
		... 11 more
	Caused by: class org.apache.ignite.IgniteCheckedException: Remote node ID
is not as expected [expected=58d0eb84-470d-495d-87dc-4b5088f5a96f,
rcvd=559b53f3-eb33-42fe-a546-ea83f8a1d4ab]
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.safeHandshake(TcpCommunicationSpi.java:2614)
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2371)
		... 11 more
	Suppressed: class org.apache.ignite.IgniteCheckedException: Failed to
connect to address: /127.0.0.1:47100
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2504)
		... 11 more
	Caused by: class org.apache.ignite.IgniteCheckedException: Remote node ID
is not as expected [expected=58d0eb84-470d-495d-87dc-4b5088f5a96f,
rcvd=559b53f3-eb33-42fe-a546-ea83f8a1d4ab]
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.safeHandshake(TcpCommunicationSpi.java:2614)
		at
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.createTcpClient(TcpCommunicationSpi.java:2371)
		... 11 more

   --- End of inner exception stack trace ---
   at Apache.Ignite.Core.Impl.Unmanaged.UnmanagedCallbacks.Error(Void*
target, Int32 errType, SByte* errClsChars, Int32 errClsCharsLen, SByte*
errMsgChars, Int32 errMsgCharsLen, SByte* stackTraceChars, Int32
stackTraceCharsLen, Void* errData, Int32 errDataLen)
   at
Apache.Ignite.Core.Impl.Unmanaged.IgniteJniNativeMethods.TargetInStreamOutLong(Void*
ctx, Void* target, Int32 opType, Int64 memPtr)
   at
Apache.Ignite.Core.Impl.Unmanaged.UnmanagedUtils.TargetInStreamOutLong(IUnmanagedTarget
target, Int32 opType, Int64 memPtr)
   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutOp(Int32 type, Action`1
action)
   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutOp[T1,T2](Int32 type, T1
val1, T2 val2)
   at Apache.Ignite.Core.Impl.Messaging.Messaging.Send(Object message,
Object topic)








--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Failed-to-send-message-to-remote-node-error-when-remote-node-has-been-terminated-tp9021.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Mime
View raw message