Last time I played with clustering on AS7 I had to use
-Djgroups.bind_addr=IP to get it working.
On Wed, Aug 7, 2013 at 9:40 AM, Marek Posolda <mposolda(a)redhat.com> wrote:
Thanks for the info.
From exception stacktrace it seems that you are missing class
org.exoplatform.services.rpc.RPCException , which is part of exo-jcr (main
module "org.gatein.lib"). I think that you can get rid of this error by
removing modules/org/jgrous/gatein/ entirely and adding this jar
jgroups-2.11.1.jar directly into modules/org/gatein/lib/main/ . Maybe you
will need to do this also for some other modules like jboss-cache and
apache-lucene..
AFAIK We switched to 2.6.21.Final as it's officially recommended by
EAP/JGroups team because branch 2.11 is already dead and there are more
unfixed issues in it (for example classloader issues, which you are
currently seeing).
On the other hand, 2.6.21.Final is maybe missing some other fixes...
It would be best if you can figure out the cause of original error "Caused
by: java.io.IOException: Invalid argument" which happens for you with
JGroups 2.6.21.Final. Looks like something specific yo your
platform/environment. Maybe it will help to upgrade JDK to 1.7 or upgrade
JBoss AS to newer version? I just tried 2-nodes cluster with latest GateIn
master and JBoss AS 7.1.1 and Sun JDK 1.6 on Ubuntu and it works for me
without problems.
Marek
On 7.8.2013 05:53, Tuyen The Nguyen wrote:
I'm using JBoss AS 7.1.1.Final with JDK 1.6.0_45 and Ubuntu OS 64bit
13.04.
When i tried switch JGroups to version 2.11.1.Final and start again.
On node1 it start OK, no problem, but on node2 (node's started later) i
met exception.
I don't know and i can't find *what class is missing* here. Why did we
change version of JGroups into an older version?
*Exception:*
SEVERE [org.jgroups.blocks.RequestCorrelator] (OOB-40,null) failed
unmarshalling buffer into return value: java.lang.ClassNotFoundException:
org.exoplatform.services.rpc.RPCException from [Module "org.jgroups:gatein"
from local module loader @55dec1dd (roots:
/home/tuyennt/projects/gatein/gatein3/packaging/jboss-as7/pkg/target/node2/modules)]
at
org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
at
org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
at java.lang.Class.forName0(Native Method) [rt.jar:1.6.0_45]
at java.lang.Class.forName(Class.java:249) [rt.jar:1.6.0_45]
at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:602)
[rt.jar:1.6.0_45]
at
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1589)
[rt.jar:1.6.0_45]
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1494)
[rt.jar:1.6.0_45]
at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1748)
[rt.jar:1.6.0_45]
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327)
[rt.jar:1.6.0_45]
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
[rt.jar:1.6.0_45]
at org.jgroups.util.Util.objectFromByteBuffer(Util.java:398)
at
org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:500)
at
org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:365)
at
org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:771)
at org.jgroups.JChannel.up(JChannel.java:1465)
at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:954)
at org.jgroups.protocols.pbcast.FLUSH.up(FLUSH.java:430)
at
org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:151)
at org.jgroups.protocols.FRAG2.up(FRAG2.java:190)
at org.jgroups.protocols.FC.up(FC.java:483)
at org.jgroups.protocols.pbcast.GMS.up(GMS.java:888)
at org.jgroups.protocols.VIEW_SYNC.up(VIEW_SYNC.java:171)
at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:234)
at org.jgroups.protocols.UNICAST.handleDataReceived(UNICAST.java:577)
at org.jgroups.protocols.UNICAST.up(UNICAST.java:295)
at org.jgroups.protocols.pbcast.NAKACK.up(NAKACK.java:709)
at org.jgroups.protocols.BARRIER.up(BARRIER.java:120)
at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:132)
at org.jgroups.protocols.FD.up(FD.java:266)
at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:275)
at org.jgroups.protocols.MERGE2.up(MERGE2.java:210)
at org.jgroups.protocols.Discovery.up(Discovery.java:292)
at org.jgroups.protocols.PING.up(PING.java:67)
at org.jgroups.stack.Protocol.up(Protocol.java:406)
at org.jgroups.protocols.TP.passMessageUp(TP.java:1093)
at org.jgroups.protocols.TP.access$100(TP.java:56)
at org.jgroups.protocols.TP$IncomingPacket.handleMyMessage(TP.java:1633)
at org.jgroups.protocols.TP$IncomingPacket.run(TP.java:1615)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
[rt.jar:1.6.0_45]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
On Tue, Aug 6, 2013 at 10:30 PM, Marek Posolda <mposolda(a)redhat.com>wrote:
> yes, 2 virtual IP addresses are ok. And if you use same multicast
> address (-u) argument for startup of both nodes, it should be sufficient to
> have cluster working.
>
> Are you using JBoss AS 7.1.1.Final or some other version? And which
> environment/OS do you have? During googling I've found just this
>
http://jgroups.1086181.n5.nabble.com/Re-jgroups-dev-org-jgroups-protocols...,
which is actually very same error which you have, but not sure if it
> helps...
>
> Thing is that we changed JGroups version between 3.5.0 and 3.6.0. GateIn
> 3.5.0 is using JGroups-2.11.1.Final when GateIn 3.6 and newer is using
> 2.6.21.Final. So could you try to replace file
> GATEIN_36_HOME/modules/org/jgroups/gatein/jgroups-2.6.21.Final.jar with the
> jgrous-2.11.1.Final.jar? You will need to do it on both nodes. And you will
> also need to update GATEIN_36_HOME/modules/org/jgroups/gatein/module.xml
> with correct name of JGroups JAR file.
>
> Please let me know if it helps.
>
> Thanks,
> Marek
>
>
>
> On 6.8.2013 12:41, Tuyen The Nguyen wrote:
>
> Hi,
>
> I have tried to use IP 239.23.42.2 as multicast address, but i still
> meet same exception:
>
> Can i use 2 virtual IP on my machine to start 2 node as cluster? My
> virtual IP is 192.168.56.1 and 192.168.57.1, if i use these IP, which
> multicast IP should i use to run? These ip are worked in gatein 3.5.x
> branch, but error in 3.6.x and master branch.
>
> *Exception:*
> ERROR [org.jgroups.protocols.UDP] (Timer-1,192.168.4.122:56200) failed
> sending message to null (83 bytes): java.lang.Exception: dest=/
> 239.23.42.2:45588 (86 bytes)
> at org.jgroups.protocols.UDP._send(UDP.java:374)
> at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:302)
> at org.jgroups.protocols.TP.doSend(TP.java:1478)
> at org.jgroups.protocols.TP.send(TP.java:1468)
> at org.jgroups.protocols.TP.down(TP.java:1186)
> at org.jgroups.protocols.TP$ProtocolAdapter.down(TP.java:2308)
> at org.jgroups.protocols.PING.sendMcastDiscoveryRequest(PING.java:278)
> 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:439)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> [rt.jar:1.6.0_45]
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
> [rt.jar:1.6.0_45]
> at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
> Caused by: java.io.IOException: Invalid argument
> at java.net.PlainDatagramSocketImpl.send(Native Method)
> [rt.jar:1.6.0_45]
> at java.net.DatagramSocket.send(DatagramSocket.java:625)
> [rt.jar:1.6.0_45]
> at org.jgroups.protocols.UDP._send(UDP.java:358)
> ... 18 more
>
>
>
>
>
>
> On Tue, Aug 6, 2013 at 3:18 PM, Marek Posolda <mposolda(a)redhat.com>wrote:
>
>> Hi,
>>
>>
>> On 6.8.2013 06:22, Tuyen The Nguyen wrote:
>>
>> Hi all, I'm working on issue GTNPORTAL-2258.
>>
>> I configure Gatein cluster mode follow by document of gatein (
>>
https://docs.jboss.org/author/display/GTNPORTAL35/Clustering+configuration
>> ).
>>
>> When i start gatein with command:
>> $ ./bin/standalone.sh --server-config=standalone-ha.xml -
>> Djboss.node.name=node1 -b 192.168.210.101 -u 2.439.232.2
>> -Djboss.bind.address.management=192.168.210.101
>>
>> I can't understand param "-u 239.23.42.2", i see that's
multicast IP,
>> but how can i get this ip in my network.
>>
>> GateIn/JBoss clustering is using JGroups library for cluster
>> communication, which is by default using UDP protocol with multicast. So
>> you just need to have support for multicast in your OS and network. See for
>> example
http://en.wikipedia.org/wiki/Multicast_address for more info.
>> For parameter "-u" you need to use multicast IP address (something
from
>> 224.0.0.0 to 239.255.255.255). I am seeing that you have invalid address
>> 2.439.232.2 in your first command. Address 239.23.42.2 should be ok.
>> Could you double-check and test again?
>>
>>
>> When i remove this param and use default of jbossAS and it work with
>> gatein 3.5.x But in 3.6.x and master branch, i always meet exception.
>>
>> I recommend to always specify "-u" address and choose some
'random'
>> address from the range when you test clustering. When you use default
>> 230.0.0.4, you have quite big chance that your cluster will communicate
>> with someone else on same network who is also testing clustering. And this
>> is usually something, which you don't want and second person as well:-)
>>
>> Marek
>>
>>
>> *Is there anybody know how to fix this bug?*
>>
>> *Exception:*
>>
>> ERROR [org.jgroups.protocols.UDP] (Timer-2,127.0.0.1:56200) failed
>> sending message to null (66 bytes): java.lang.Exception: dest=/
>> 230.0.0.4:45588 (69 bytes)
>> at org.jgroups.protocols.UDP._send(UDP.java:374)
>> at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:302)
>> at org.jgroups.protocols.TP.doSend(TP.java:1478)
>> at org.jgroups.protocols.TP.send(TP.java:1468)
>> at org.jgroups.protocols.TP.down(TP.java:1186)
>> at org.jgroups.protocols.TP$ProtocolAdapter.down(TP.java:2308)
>> at org.jgroups.protocols.PING.sendMcastDiscoveryRequest(PING.java:278)
>> 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:439)
>> [rt.jar:1.6.0_45]
>> at
>> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>> [rt.jar:1.6.0_45]
>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>> [rt.jar:1.6.0_45]
>> at
>>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>> [rt.jar:1.6.0_45]
>> at
>>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>> [rt.jar:1.6.0_45]
>> at
>>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>> [rt.jar:1.6.0_45]
>> at
>>
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>> [rt.jar:1.6.0_45]
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
>> [rt.jar:1.6.0_45]
>> at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
>> Caused by: java.io.IOException: Invalid argument
>> at java.net.PlainDatagramSocketImpl.send(Native Method)
>> [rt.jar:1.6.0_45]
>> at java.net.DatagramSocket.send(DatagramSocket.java:625)
>> [rt.jar:1.6.0_45]
>> at org.jgroups.protocols.UDP._send(UDP.java:358)
>> ... 18 more
>>
>>
>>
>> _______________________________________________
>> gatein-dev mailing
listgatein-dev@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/gatein-dev
>>
>>
>>
>
>
_______________________________________________
gatein-dev mailing list
gatein-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/gatein-dev