Hi,
Many thanks for help me.
I still meet this this problem and i will try to find the detail of
exception i met.
On Wed, Aug 7, 2013 at 3:34 PM, Marko Strukelj <marko.strukelj(a)gmail.com>wrote:
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
>