[jBPM Users] - Re: Querying Against Process Variables
by kukeltje
"rmoskal" wrote : Ronald:
|
| You could interpret more charitably. I have indeed searched the forums and the length and breadth of the internet
Next time, mention this. Nothing from your post gives me the intention you did. And since I'm pretty sure it has been discussed before multiple times, I posted what I posted.
"rmoskal" wrote :
| . Perhaps I need a custom hibernate query. Maybe somebody has already thought this through and would share it with the rest of us (saving me a bit of trouble). As I am happy to to do when I can help others.
|
That is indeed what has been discussed before, combined with the (dis)advantages, the usage of the businesskey etc... So sorry if you feel offended, next time add the information in this second post to the first one....Then you would have gotten a different response from me. Something like:
Yes that is the way to go, or use the businesskey for this. Keep in mind that indexes might need to be created on each variable type column.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4261587#4261587
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4261587
16 years, 6 months
[Beginner's Corner] - Re: 'table does not exist' error after changing default data
by bwalker55
Thanks for the response. I think I'm getting there.
JBoss version is 4.2.3 on server in question.
For information on changing the default datasource, I used the Installation and Getting Started Guide.
http://www.jboss.org/file-access/default/members/jbossas/freezone/docs/In...
Unfortunately, there's no mention of JMS in this document.
I also referenced the following (and translated to Oracle)
http://www.jboss.org/community/wiki/SetUpAMysqlDatasource
but must admit that I skipped the JMS part (as I was initially attempting to bring up jBoss without messaging, before I realized this would leave me without the admin consoles).
I have since found:
http://www.jboss.org/file-access/default/members/jbossas/freezone/docs/Ad...
and more specifically
http://www.jboss.org/file-access/default/members/jbossas/freezone/docs/Ad...
I have followed the advice of these documents and replaced the hsqldb-jdbc2-service.xml with oracle-jdbc2-service.xml
Note that the document you reference:
http://www.jboss.org/community/wiki/ConfigDefaultDSJBossMQDB
is similar, but does not indicate that the oracle-jdbc2-service.xml must also be edited, changing OracleDS to DefaultDS (if the DefaultDS is redefined).
If you don't make this change, which I initially missed, there are no database errors on startup, but the JMS_TRANSACTIONS and JMS_MESSAGES tables do not get created. Once this change is made, the startup looks the same from the log file, and the JMS_TRANSACTIONS and JMS_MESSAGES tables are created in Oracle.
Of course, this is all for 4.2. I believe the change for 5.1 is simlar, but the file names and locations of the -service.xml files are different.
Thanks, Bob.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4261586#4261586
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4261586
16 years, 6 months
[Clustering] - Failure when cleaning up HTTP Session in JBoss AS Cluster?
by RichardTaylor
Let me know if this should be posted somewhere else.
JBoss 5.1.0
JBoss Cache 3.2.1
Three servers in cluster, HTTP Session replication, UDP, total replication, passivation enabled
We recently rolled out two changes to our system, HTTP Session passivation and an upgrade to JBoss Cache 3.2.1. The changes were tested for several days under load on two other systems, but now that we've deployed to our primary data center we've run into an issue.
Things ran fine for about 22 hours, then server A and server B went into a loop where each server getting the following two stack traces repeatedly. This happened twice in 24 hours. We've not disabled session passivation and have not seen the issue.
In order to get the servers out of the loop we had to restart jboss on both servers (one of them twice). JBoss was still responding but the cluster was in an obviously degraded state.
2009-10-20 15:40:29,709 ERROR [org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AttributeBasedJBossCacheService] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) IOException occurred unmarshalling value
| java.io.OptionalDataException
| at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1349)
| at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
| at javolution.util.FastMap.readObject(Unknown Source)
| at sun.reflect.GeneratedMethodAccessor362.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:597)
| at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
| at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
| at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
| at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
| at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
| at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
| at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
| at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
| at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
| at org.jboss.ha.framework.server.SimpleCachableMarshalledValue.get(SimpleCachableMarshalledValue.java:94)
| at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getUnMarshalledValue(AbstractJBossCacheService.java:660)
| at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AttributeBasedJBossCacheService.getSessionAttributes(AttributeBasedJBossCacheService.java:166)
| at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getDistributableSessionData(AbstractJBossCacheService.java:581)
| at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getSessionData(AbstractJBossCacheService.java:364)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.loadSession(JBossCacheManager.java:1832)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.findSession(JBossCacheManager.java:489)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.processExpirationPassivation(JBossCacheManager.java:1603)
| at org.jboss.web.tomcat.service.session.JBossManager.backgroundProcess(JBossManager.java:385)
| at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1327)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1612)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1601)
| at java.lang.Thread.run(Thread.java:619)
|
| 2009-10-20 15:40:29,713 ERROR [org.jboss.web.tomcat.service.session.JBossCacheManager.] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) processExpirationPassivation(): failed handling unloaded session O-lgMwkUSLW1vVpTRQzExg__
| java.lang.NullPointerException
| at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
| at java.util.concurrent.ConcurrentHashMap.putAll(ConcurrentHashMap.java:909)
| at org.jboss.web.tomcat.service.session.ClusteredSession.populateAttributes(ClusteredSession.java:1661)
| at org.jboss.web.tomcat.service.session.ClusteredSession.update(ClusteredSession.java:1120)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.loadSession(JBossCacheManager.java:1835)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.findSession(JBossCacheManager.java:489)
| at org.jboss.web.tomcat.service.session.JBossCacheManager.processExpirationPassivation(JBossCacheManager.java:1603)
| at org.jboss.web.tomcat.service.session.JBossManager.backgroundProcess(JBossManager.java:385)
| at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1327)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1612)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
| at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1601)
| at java.lang.Thread.run(Thread.java:619)
|
It appears that both servers were trying to clean up the exact same "unloaded" session at the same time. That might be normal, but something in the session data seemed to have gotten corrupted? It's not clear yet, I'm currently looking at the JBossCacheManager code.
Relevant configs:
>From jboss-web.xml
| <passivation-config>
| <use-session-passivation>true</use-session-passivation>
| <passivation-min-idle-time>-1</passivation-min-idle-time>
| <passivation-max-idle-time>300</passivation-max-idle-time>
| </passivation-config>
|
>From jboss-cache-manager-jboss-beans.xml
<property name="cacheLoaderConfig">
| <bean class="org.jboss.cache.config.CacheLoaderConfig">
| <!-- Do not change these -->
| <property name="passivation">true</property>
| <property name="shared">false</property>
|
| <property name="individualCacheLoaderConfigs">
| <list>
| <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
| <!-- Where passivated sessions are stored -->
| <property name="location">${jboss.server.data.dir}${/}session</property>
| <!-- Do not change these -->
| <property name="async">false</property>
| <property name="fetchPersistentState">true</property>
| <property name="purgeOnStartup">true</property>
| <property name="ignoreModifications">false</property>
| <property name="checkCharacterPortability">false</property>
| </bean>
| </list>
| </property>
| </bean>
| </property>
|
Has anyone seen this issue? I see other people referencing java.io.OptinalDataException in the context of JBoss, but nothing that sounds like this exact same issue. Any input would be greatly appreciated, we'd really like to get HTTP session passivation enabled again.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4261558#4261558
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4261558
16 years, 6 months
[MQ] - JmsXA and remote queues
by rlamie
Env : JBoss 4.2.3, JbossMQ shipped with Jboss 4.2.3
Hi all,
I have a pretty simple question, but dont manage to find the solution through google/forum searchs.
Inside an MDB, I need to enlist the sending of JMS messages in a JTA transaction. The queue is a remote queue located on another JBossMQ server.
The need to enlist in a JTA transaction with multiples resources decided me to turn to JmsXA pool.
Here is the code :
| @MessageDriven(
| activationConfig = {...}...
| @PoolClass (value=org.jboss.ejb3.StrictMaxPool.class, maxSize=1, timeout=30000)
| @Depends("jboss.j2ee:service=EARDeployment,url='xxx.ear'")
| public class Test1MDB implements MessageListener {
| public void onMessage(Message msg) {
| ... do operations on database (XADataSource)
|
| Context jndi = new InitialContext();
| QueueConnection connection = (QueueConnectionFactory) jndi.lookup("java:JmsXA");
| QueueSession = connection.createQueueSession(true, QueueSession.AUTO_ACKNOWLEDGE);
| Queue queue = (Queue) jndi.lookup("jnp://174.54.12.144:1099/queue/test2");
| QueueSender sender = session.createSender(queue);
| ObjectMessage msg = MessageHelper.create(session, messageDTO);
| sender.send(msg);
| ...
| }
|
The result is that code works well if I target a local queue, but fails when I target a remote queue (like in my example). I add that the queues targeted are test queues (created temporarly by the MDB)
The following logs appear at the end of the onMessage method (commit time) :
| 16:53:40,413 WARN [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] XAResourceRecord.prepare - prepare failed with exception XAException.XAER_RMFAIL
| 16:53:40,416 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_50] - Prepare phase of action 7f000101:81ea:4adf0cd5:1255 received heuristic decision: TwoPhaseOutcome.HEURISTIC_HAZARD
| 16:53:40,416 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_36] - BasicAction.End() - prepare phase of action-id 7f000101:81ea:4adf0cd5:1255 failed.
| 16:53:40,416 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_37] - Received heuristic: TwoPhaseOutcome.HEURISTIC_HAZARD .
| 16:53:40,416 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_38] - Action Aborting
|
And it chains to replay the same input message, until the following exception occurs :
| 16:53:40,449 ERROR [JmsServerSession] org.jboss.resource.adapter.jms.inflow.JmsServerSession@1c7811a failed to commit/rollback
| javax.transaction.HeuristicMixedException
| at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1397)
| at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
| at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
| at org.jboss.resource.adapter.jms.inflow.JmsServerSession$XATransactionDemarcationStrategy.end(JmsServerSession.java:494)
| at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:248)
| at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
| at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:275)
| at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:756)
| at java.lang.Thread.run(Thread.java:595)
|
Strangely, that occurs only for remote queues.
Any pointers?
Thank you for your help.
RL
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4261554#4261554
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4261554
16 years, 6 months