11 Replies Latest reply on Mar 7, 2011 2:20 AM by jaikiran

    JBoss dependency on JGroups

    vivekbawge

      Hi Friends,

       

      Is it possible to remove/disable JGroups completely from JBoss deployment if clustering is not needed?

      Even without clustering, does JBoss have any dependency on JGroups?

       

      Thanks,
      VK

        • 1. JBoss dependency on JGroups
          wdfink

          I think there are no dependencies if you use the default configuration.

          JGroups is used by caches and multicast stuff (autodiscovery and cluster communication).

          I'm not sure whether port-binding manager will use it (think this will crash if it is needed and you start JBoss without jgroups)

           

          But what is the reason for this, if jgroups is not used it will not be loaded by the classloader.

          So there will no benefit at all.

          • 2. JBoss dependency on JGroups
            vivekbawge

            Thanks Fink for your response. I appreciate it.

             

            The reason for moving away from JGroups is - we are getting following exception/error during JBoss startup after fresh install of our application. This leads to failure of our JBoss apllications/services that use JMS. I could not get help about the resolving these errors/exceptions:

             

            Errors are:

             

            2011-02-09 17:32:35,183 ERROR [org.jgroups.protocols.UDP] max_bundle_size (64000) is greater than largest TP fragmentation size (-1000)

            2011-02-09 17:32:35,183 ERROR [org.jgroups.protocols.UDP] max_bundle_size (64000) is greater than largest TP fragmentation size (-1000)

            2011-02-09 17:32:35,183 ERROR [org.jgroups.protocols.UDP] the following properties are not recognized: {enable_bundling=false, max_bundle_size=64000, max_bundle_timeout=30}

            2011-02-09 17:32:35,183 ERROR [org.jgroups.protocols.UDP] the following properties are not recognized: {enable_bundling=false, max_bundle_size=64000, max_bundle_timeout=30}

             

            2011-02-09 17:32:36,465 ERROR [org.jgroups.protocols.UDP] exception sending msg: java.lang.Exception: dest=/a.b.c.d:45577 (174 bytes)

            java.io.IOException: Invalid argument

                      at java.net.PlainDatagramSocketImpl.send(Native Method)

                      at java.net.DatagramSocket.send(DatagramSocket.java:612)

                      at org.jgroups.protocols.UDP._send(UDP.java:316)

                      at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:286)

                      at org.jgroups.protocols.TP.doSend(TP.java:938)

                      at org.jgroups.protocols.TP.access$2200(TP.java:46)

                      at org.jgroups.protocols.TP$Bundler.bundleAndSend(TP.java:1653)

                      at org.jgroups.protocols.TP$Bundler.access$2500(TP.java:1571)

                      at org.jgroups.protocols.TP$Bundler$BundlingTimer.run(TP.java:1683)

                      at java.util.TimerThread.mainLoop(Timer.java:512)

                      at java.util.TimerThread.run(Timer.java:462)

            2011-02-09 17:32:36,465 ERROR [org.jgroups.protocols.UDP] exception sending msg: java.lang.Exception: dest=/a.b.c.d:45577 (174 bytes)

            java.io.IOException: Invalid argument

                      at java.net.PlainDatagramSocketImpl.send(Native Method)

                      at java.net.DatagramSocket.send(DatagramSocket.java:612)

                      at org.jgroups.protocols.UDP._send(UDP.java:316)

                      at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:286)

                      at org.jgroups.protocols.TP.doSend(TP.java:938)

                      at org.jgroups.protocols.TP.access$2200(TP.java:46)

                      at org.jgroups.protocols.TP$Bundler.bundleAndSend(TP.java:1653)

                      at org.jgroups.protocols.TP$Bundler.access$2500(TP.java:1571)

                      at org.jgroups.protocols.TP$Bundler$BundlingTimer.run(TP.java:1683)

                      at java.util.TimerThread.mainLoop(Timer.java:512)

                      at java.util.TimerThread.run(Timer.java:462)

             

             

            I would appreciate any help.

             

            Thanks,
            Vivek

            • 3. JBoss dependency on JGroups
              welle

              If you are not running in a cluster you could just make sure that "Clustered" is set to false in "$JBOSS_HOME/server/XXX/deploy/messaging/*--persistence-service.xml" (JBoss 5.1)

               

              Are you running all or default configuration (or any else)

              • 4. JBoss dependency on JGroups
                vivekbawge

                Thanks Anders.

                 

                Will jgroups be bypassed if I set Clustered propery to false?

                I am running configuration specific to my application only.

                 

                Thanks,

                Vivek

                • 5. JBoss dependency on JGroups
                  welle

                  Yes

                  • 6. JBoss dependency on JGroups
                    wdfink

                    Does your configuration base on 'all' or 'production' (only EAP) configuration?

                    If yes you should check the differences to default to remove all cluster functions from your configuration.

                    • 7. JBoss dependency on JGroups
                      vivekbawge

                      Thanks Fink. That helps.

                      Anders, just disabling Clustering didn't help. JBoss wouldn't start after modifying this configuration.

                       

                      BTW, can someone has insight on jgroups error pasted above?

                       

                      Thanks,

                      Vivek

                      • 8. JBoss dependency on JGroups
                        welle

                        I just tried it on JBoss 5.1 (all configuration) and it worked for me!

                         

                        Of course it doesn't stop other cluster services (HA-JNDI, EJB etc). I thought that your setup wasn't based on a clustered configuration and that you by mistake had copied a cluster aware messaging setup when you changed the database used as you described your problem was related to JMS.

                         

                        Good to hear that your "up-and-running" now!

                        • 9. JBoss dependency on JGroups
                          wdfink

                          Do you have tried a non cluster configuration like 'default' and check whether the problem disapear?

                          Maybe you did not remove all dependencies to jgroups in your configuration.

                           

                          Also you might start a fresh JBoss (without your application) with the default and the all configuration to verify whether the error raise here.

                          • 10. JBoss dependency on JGroups
                            vivekbawge

                            Thanks All for your help.

                             

                            I have started a separate  thread about jgroups exception pasted above:

                            http://community.jboss.org/message/586466#586466

                             

                            Sadly, no replies yet (171 views, 0 replies)

                             

                            Thanks,

                            Vivek

                            • 11. JBoss dependency on JGroups
                              jaikiran

                              vivek b wrote:

                               

                               

                               

                              I have started a separate  thread about jgroups exception pasted above:

                              http://community.jboss.org/message/586466#586466

                               

                              That thread has nothing to do with JGroups or the exception that you posted above.