[Clustering/JBoss] - ESB Cluster across different physical machines
by jakkur
We are attempting to put together a Cluster of JBOSS ESB nodes (on AIX) with the some of our heavy lifting services spread across nodes for better load balancing and throughput.
An example being that one of the services which does some heavy I/O
(computes checksums on large files on the disk) has its queue/listener
clustered so when the current node is already performing that service,
the message is get sent to another node thereby improving our throughput.
The cluster appears to be working as expected only when all the nodes
happened to be on the same physical machine. When we spread the nodes
across machines (all nodes obviously have same oracle schema as juddi,
message store, etc.), the message never gets sent to nodes running on
other machines. I can send our queue definition, JBM config, jboss-esb
and/or other files if they can help to figure out if we are missing any
in our setup.
We have been struggling for past few days as to why the setup won't work
across machines. Any working sample you can point to which shows JMS
clustering across machines can help us tremendously.
Regards,
Jakku
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4186428#4186428
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4186428
17 years, 5 months
[JBoss Cache: Core Edition] - Re: 2.2 to 3.0CR2
by lovelyliatroim
Any ideas on why I would see this
| Unexpected error occured on server side. Unable to recover to make the request.
| java.util.concurrent.RejectedExecutionException
| at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1759)
| at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)
| at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658)
| at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:92)
| at org.jboss.cache.marshall.CommandAwareRpcDispatcher.invokeRemoteCommands(CommandAwareRpcDispatcher.java:167)
| at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:458)
| at org.jboss.cache.loader.ClusteredCacheLoader.callRemote(ClusteredCacheLoader.java:135)
| at org.jboss.cache.loader.ClusteredCacheLoader.exists(ClusteredCacheLoader.java:211)
| at org.jboss.cache.interceptors.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:288)
| at org.jboss.cache.interceptors.CacheLoaderInterceptor.visitGetKeyValueCommand(CacheLoaderInterceptor.java:158)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
| at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131)
| at org.jboss.cache.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:110)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
| at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131)
| at org.jboss.cache.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:110)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
| at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:284)
| at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxInterceptor.java:271)
| at org.jboss.cache.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:110)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
| at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitGetKeyValueCommand(CacheMgmtInterceptor.java:77)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
| at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178)
| at org.jboss.cache.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:130)
| at org.jboss.cache.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:110)
| at org.jboss.cache.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:97)
| at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:265)
| at org.jboss.cache.invocation.CacheInvocationDelegate.get(CacheInvocationDelegate.java:448)
|
|
Happening with the CR2 cut , will look into trying to replicate it.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4186418#4186418
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4186418
17 years, 5 months
[JBoss Cache: Core Edition] - Re: 2.2 to 3.0CR2
by lovelyliatroim
anonymous wrote :
| Fixed the main issue, which is essentially a missing null check. JBCACHE-1431.
|
| This is in trunk, so if you get the srcs from svn and build it yourself, you will see the fix.
Checked out the trunk and re-ran the fun.
Tried both in 2.x format and 3.x format. Same result. When in debug mode the request works fine, when not in debug mode i dont get any result from the remote cache.
Log output is here
anonymous wrote :
| 6:14:21,060 [main] INFO jmx.PlatformMBeanServerRegistration - JBossCache MBeans were successfully registered to the platform mbean server.
| 16:14:21,076 [main] INFO jgroups.JChannel - JGroups version: 2.6.5.GA
| 16:14:21,294 [main] WARN cache.RPCManagerImpl - You have disabled jgroups's message bundling, which is not recommended for async replication. If there is no particular reason for this we strongly recommend to enable message bundling in JGroups config (enable_bundling="true").
|
| -------------------------------------------------------
| GMS: address is 10.251.153.36:1312
| -------------------------------------------------------
| 16:14:23,341 [main] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1312|0] [10.251.153.36:1312]
| 16:14:23,357 [main] INFO cache.RPCManagerImpl - Cache local address is 10.251.153.36:1312
| 16:14:23,357 [main] INFO factories.ComponentRegistry - JBoss Cache version: JBossCache 'Naga' 3.0.0-SNAPSHOT
| 16:14:23,482 [main] INFO jmx.PlatformMBeanServerRegistration - JBossCache MBeans were successfully registered to the platform mbean server.
| 16:14:23,482 [main] INFO jgroups.JChannel - JGroups version: 2.6.5.GA
| 16:14:23,497 [main] WARN cache.RPCManagerImpl - You have disabled jgroups's message bundling, which is not recommended for async replication. If there is no particular reason for this we strongly recommend to enable message bundling in JGroups config (enable_bundling="true").
|
| -------------------------------------------------------
| GMS: address is 10.251.153.36:1314
| -------------------------------------------------------
| 16:14:23,576 [Incoming-1,10.251.153.36:1312] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1312|1] [10.251.153.36:1312, 10.251.153.36:1314]
| 16:14:23,576 [main] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1312|1] [10.251.153.36:1312, 10.251.153.36:1314]
| 16:14:23,591 [main] INFO cache.RPCManagerImpl - Cache local address is 10.251.153.36:1314
| 16:14:23,591 [main] INFO factories.ComponentRegistry - JBoss Cache version: JBossCache 'Naga' 3.0.0-SNAPSHOT
| 16:14:23,591 [main] TRACE loader.ClusteredCacheLoader - cache=10.251.153.36:1312; calling with ExistsCommand{fqn=/client/007}
| 16:14:23,591 [main] TRACE loader.ClusteredCacheLoader - got responses []
| Got data from cache {CLIENT=BOND,JAMES}
| Lets test ClusteredCacheLoader
| 16:14:23,607 [main] TRACE loader.ClusteredCacheLoader - cache=10.251.153.36:1314; calling with ExistsCommand{fqn=/client/007}
| 16:14:23,607 [main] TRACE loader.ClusteredCacheLoader - got responses []
| Failed to get data from remote cache???
| 16:14:23,607 [main] INFO cache.RPCManagerImpl - Disconnecting and closing the Channel
| 16:14:23,607 [Incoming-1,10.251.153.36:1314] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1312|2] [10.251.153.36:1314]
| 16:14:23,607 [Incoming-1,10.251.153.36:1314] WARN pbcast.NAKACK - 10.251.153.36:1314] discarded message from non-member 10.251.153.36:1312, my view is [10.251.153.36:1312|2] [10.251.153.36:1314]
| 16:14:23,607 [Incoming-1,10.251.153.36:1314] WARN pbcast.NAKACK - 10.251.153.36:1314] discarded message from non-member 10.251.153.36:1312, my view is [10.251.153.36:1312|2] [10.251.153.36:1314]
| 16:14:23,622 [main] INFO cache.RPCManagerImpl - Stopping the RpcDispatcher
| 16:14:23,638 [main] INFO cache.RPCManagerImpl - Disconnecting and closing the Channel
| 16:14:23,638 [main] INFO cache.RPCManagerImpl - Stopping the RpcDispatcher
|
When run in debug mode
anonymous wrote :
| 16:20:10,017 [main] INFO jmx.PlatformMBeanServerRegistration - JBossCache MBeans were successfully registered to the platform mbean server.
| 16:20:10,049 [main] INFO jgroups.JChannel - JGroups version: 2.6.5.GA
| 16:20:10,345 [main] WARN cache.RPCManagerImpl - You have disabled jgroups's message bundling, which is not recommended for async replication. If there is no particular reason for this we strongly recommend to enable message bundling in JGroups config (enable_bundling="true").
|
| -------------------------------------------------------
| GMS: address is 10.251.153.36:1350
| -------------------------------------------------------
| 16:20:12,408 [main] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1350|0] [10.251.153.36:1350]
| 16:20:12,408 [main] INFO cache.RPCManagerImpl - Cache local address is 10.251.153.36:1350
| 16:20:12,408 [main] INFO factories.ComponentRegistry - JBoss Cache version: JBossCache 'Naga' 3.0.0-SNAPSHOT
| 16:20:18,001 [main] INFO jmx.PlatformMBeanServerRegistration - JBossCache MBeans were successfully registered to the platform mbean server.
| 16:20:18,001 [main] INFO jgroups.JChannel - JGroups version: 2.6.5.GA
| 16:20:18,048 [main] WARN cache.RPCManagerImpl - You have disabled jgroups's message bundling, which is not recommended for async replication. If there is no particular reason for this we strongly recommend to enable message bundling in JGroups config (enable_bundling="true").
|
| -------------------------------------------------------
| GMS: address is 10.251.153.36:1352
| -------------------------------------------------------
| 16:20:18,173 [Incoming-1,10.251.153.36:1350] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1350|1] [10.251.153.36:1350, 10.251.153.36:1352]
| 16:20:18,189 [main] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1350|1] [10.251.153.36:1350, 10.251.153.36:1352]
| 16:20:18,205 [main] INFO cache.RPCManagerImpl - Cache local address is 10.251.153.36:1352
| 16:20:18,205 [main] INFO factories.ComponentRegistry - JBoss Cache version: JBossCache 'Naga' 3.0.0-SNAPSHOT
| 16:20:22,579 [main] TRACE loader.ClusteredCacheLoader - cache=10.251.153.36:1350; calling with ExistsCommand{fqn=/client/007}
| 16:20:22,579 [main] TRACE loader.ClusteredCacheLoader - got responses []
| 16:20:23,392 [EvictionTimer-0] WARN eviction.ExpirationAlgorithm - No expiration key 'expiration' for Node: /client/007
| Got data from cache {CLIENT=BOND,JAMES}
| Lets test ClusteredCacheLoader
| 16:20:25,314 [EvictionTimer-1] WARN eviction.ExpirationAlgorithm - No expiration key 'expiration' for Node: /client/007
| Got data from remote cache {CLIENT=BOND,JAMES}
| 16:20:29,001 [main] INFO cache.RPCManagerImpl - Disconnecting and closing the Channel
| 16:20:29,017 [Incoming-1,10.251.153.36:1352] INFO cache.RPCManagerImpl - Received new cluster view: [10.251.153.36:1350|2] [10.251.153.36:1352]
| 16:20:29,017 [Incoming-1,10.251.153.36:1352] WARN pbcast.NAKACK - 10.251.153.36:1352] discarded message from non-member 10.251.153.36:1350, my view is [10.251.153.36:1350|2] [10.251.153.36:1352]
| 16:20:29,032 [main] INFO cache.RPCManagerImpl - Stopping the RpcDispatcher
| 16:20:29,064 [main] INFO cache.RPCManagerImpl - Disconnecting and closing the Channel
| 16:20:29,079 [main] INFO cache.RPCManagerImpl - Stopping the RpcDispatcher
|
Tmeout on the clustered cache loader is set to 15 seconds!!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4186417#4186417
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4186417
17 years, 5 months
[JBoss jBPM] - handle arrays in bpel
by sw_bpel
hello,
i have some problems with handling arrays in my bpel-process. i have to invoke 3 web services and the response of the first one contains an array of user roles. so first i declare a variable for the iteration and also a variable for the number of elements in the array. then i create a while loop to check if the array contains a specific role. in that case i call the second web service. so far that's working fine, but the second web service returns also an array. but now i want to return this response as a part of the bpel process response. and here is my problem. How do i do that? i either get only the first element of the array as response of the bpel process or i get the following error:
| 15:42:48,209 ERROR [XPathEvaluator] cannot create element for step with non-numeric predicate: [(DefaultNameStep): bpelReturnSW]
|
how to do that array handling?
a fragment of my bpel-file:
| <bpws:sequence name="Sequence1">
| <bpws:assign name="assignSukoInput" validate="no">
| <bpws:copy>
| <bpws:from><![CDATA['']]></bpws:from>
| <bpws:to><![CDATA[$sukoRequest.getAllUnits]]></bpws:to>
| </bpws:copy>
| </bpws:assign>
| <bpws:invoke inputVariable="sukoRequest"
| name="invokeSukoService" operation="getAllUnits"
| outputVariable="sukoResponse" partnerLink="suko"
| portType="ns1:Fidefri4amo" />
| <bpws:assign name="assignSukoCounter" validate="no">
| <bpws:copy>
| <bpws:from><![CDATA[1]]></bpws:from>
| <bpws:to variable="sukoIterator" />
| </bpws:copy>
| <bpws:copy>
| <bpws:from><![CDATA[count($sukoResponse.getAllUnitsResponse/return)]]></bpws:from>
| <bpws:to variable="sukoCounter" />
| </bpws:copy>
| </bpws:assign>
| <bpws:while name="While">
| <bpws:condition><![CDATA[$sukoCounter >= $sukoIterator]]></bpws:condition>
| <bpws:sequence name="Sequence2">
| <bpws:assign name="assignSukoOutput" validate="no">
| <bpws:copy>
| <bpws:from><![CDATA[$sukoResponse.getAllUnitsResponse/return[$sukoIterator]/id]]></bpws:from>
| <bpws:to><![CDATA[$output.bpelResponse/bpelReturnSuko[$sukoIterator]/bpelResponseSukoUnitID]]></bpws:to>
| </bpws:copy>
| <bpws:copy>
| <bpws:from><![CDATA[$sukoResponse.getAllUnitsResponse/return[$sukoIterator]/name]]></bpws:from>
| <bpws:to><![CDATA[$output.bpelResponse/bpelReturnSuko[$sukoIterator]/bpelResponseSukoUnitName]]></bpws:to>
| </bpws:copy>
| </bpws:assign>
| <bpws:assign name="stepSukoIterator" validate="no">
| <bpws:copy>
| <bpws:from><![CDATA[$sukoIterator + 1]]></bpws:from>
| <bpws:to variable="sukoIterator" />
| </bpws:copy>
| </bpws:assign>
| </bpws:sequence>
| </bpws:while>
| </bpws:sequence>
|
thank you for your help!!!!
greetings stefan
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4186410#4186410
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4186410
17 years, 5 months