7 Replies Latest reply on Jul 12, 2011 9:57 AM by jmfaerman

    [MPING] failed sending discovery request

    krishnan366

      I have two instances of jboss5.0.0 GA up and running in two different machines and in both the servers log file I can see the below error

      ERROR [MPING] failed sending discovery request
      java.io.InterruptedIOException: operation interrupted
       at java.net.PlainDatagramSocketImpl.send(Native Method)
       at java.net.DatagramSocket.send(DatagramSocket.java:612)
       at org.jgroups.protocols.MPING.sendMcastDiscoveryRequest(MPING.java:341)
       at org.jgroups.protocols.PING.sendGetMembersRequest(PING.java:256)
       at org.jgroups.protocols.Discovery$PingSenderTask$1.run(Discovery.java:406)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
       at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:280)
       at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:135)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:65)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:142)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:166)
       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
       at java.lang.Thread.run(Thread.java:595)
      


      How to fix this?

        • 1. Re: [MPING] failed sending discovery request
          brian.stansberry

          When do you see this? What's going on at the time?

          • 2. Re: [MPING] failed sending discovery request
            krishnan366

            I get to see those logs after the server is started ,just after the message "Started in ....".

            I've an EJB 3.0 deployed in the server with the @Clustered annotation.

            Also in the server/all/lib I've replaced the jbosscache-core.jar with the latest version(3.0.2 GA) .

            • 3. Re: [MPING] failed sending discovery request
              brian.stansberry

              If this happens just once and the nodes properly cluster, this should not be a big problem. That would mean this is caused by the periodic activity of the MERGE2 protocol where it sends a multicast discovery message as part of its work periodic work of checking if any other subgroups exist on the same channel and need to be merged (see http://www.jboss.org/community/docs/DOC-10896). If that periodic task fails one time, it's not a big deal, it will just run again 10-20 seconds later.

              If it's repeatedly failing its a bigger issue. And if this is occuring in the middle of startup, that would mean it is affecting the normal cluster formation process at startup, which is a bigger issue. But since it is appearing after the "Started in ...." logging it doesn't look like that is the case.

              What's happening here is a thread is in native code trying to send a datagram. Per the class javadoc, a java.io.InterruptedIOException "is thrown to indicate that an input or output transfer has been terminated because the thread performing it was interrupted." Question is why the thread would be interrupted. Probable cause is the timeout waiting for a response has expired, which could cause the thread to be interrupted. The timeout is 3 seconds in a default AS 5.0. Question is why it would take more than 3 seconds to get the message *sent*. Normally the message gets sent almost immediately; the timeout kicks in waiting for *responses*. I really don't have a good answer for that question; most likely something specific to your environment.

              Still, even if it isn't causing serious harm, if it's reproducible I encourage you to post on javagroups-users@lists.sourceforge.net so the JGroups folks are aware of it.

              • 4. Re: [MPING] failed sending discovery request
                krishnan366

                Hi Brian,

                This seems to be reproducible as it occurs everytime I start my server and if this would affect the cluster set up , then I would like this to be fixed.

                I'll definitely post it on javagroups-users@lists.sourceforge.net

                Any thoughts from your end to resolve this?

                Thanks in advance.

                • 5. Re: [MPING] failed sending discovery request
                  belaban

                  OK, this has been fixed (trunk, will be 2.10) and on the 2.6 branch (will be 2.6.15).

                  • 6. Re: [MPING] failed sending discovery request
                    mardinator

                    Hello !

                     

                    I have same "MPING failed sending discovery request" exception on JBoss.5.1.0.GA on Sun Solaris (Started with -u specifying mulitcast address).

                     

                    I have changed the JGroups version from 2.6.10.GA to 2.6.15.GA (becauseof https://jira.jboss.org/browse/JGRP-1006) but now descibed exception of MPING occur.

                     

                    When i check the source via

                    http://javagroups.cvs.sourceforge.net/viewvc/javagroups/JGroups/src/org/jgroups/protocols/MPING.java?view=log

                    then i didn't see a change that the caught exception isn't logged anymore like you described in correction for

                    https://jira.jboss.org/browse/JGRP-1161

                     

                    So i would say it isn't fixed in 2.6.15 and also in trunk i can't see a change.

                     

                    Can you tell me what's the state or do i looking on wrong places ?

                     

                    2010-09-13 18:01:58,912 ERROR () Timer-1,158.226.150.52:7900 [org.jgroups.protocols.MPING] failed sending discovery request
                    java.io.InterruptedIOException: operation interrupted
                            at java.net.PlainDatagramSocketImpl.send(Native Method)
                            at java.net.DatagramSocket.send(DatagramSocket.java:612)
                            at org.jgroups.protocols.MPING.sendMcastDiscoveryRequest(MPING.java:341)
                            at org.jgroups.protocols.PING.sendGetMembersRequest(PING.java:259)
                            at org.jgroups.protocols.Discovery$PingSenderTask$1.run(Discovery.java:407)
                            at org.jgroups.util.TimeScheduler$RobustRunnable.run(TimeScheduler.java:196)
                            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
                            at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
                            at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
                            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
                            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
                            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
                            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
                            at java.lang.Thread.run(Thread.java:619)

                    • 7. Re: [MPING] failed sending discovery request
                      jmfaerman

                      I have the exact same error in Solaris, to be specific i am using:

                       

                      JBoss EAP 5.1

                      Sun JDK 1.6.0_24

                      SunOS 5.10

                       

                      Could you solve this?