[JBoss JIRA] Created: (JBMESSAGING-1154) DB2 persistence service example contains invalid SQL query
by Roger Dudler (JIRA)
DB2 persistence service example contains invalid SQL query
----------------------------------------------------------
Key: JBMESSAGING-1154
URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1154
Project: JBoss Messaging
Issue Type: Bug
Components: Documentation and Training
Affects Versions: 1.4.0.SP1
Reporter: Roger Dudler
Assigned To: Tim Fox
In the db2-persistence-service.xml, there's an invalid create table statement, where some "NOT NULL" parameters are not set.
Line 115
CREATE_POSTOFFICE_TABLE=CREATE TABLE JBM_POSTOFFICE (POSTOFFICE_NAME VARCHAR(255), NODE_ID INTEGER, QUEUE_NAME VARCHAR(255), COND VARCHAR(1023), SELECTOR VARCHAR(1023), CHANNEL_ID BIGINT, CLUSTERED CHAR(1), ALL_NODES CHAR(1), PRIMARY KEY(POSTOFFICE_NAME, NODE_ID, QUEUE_NAME))
should be
CREATE_POSTOFFICE_TABLE=CREATE TABLE JBM_POSTOFFICE (POSTOFFICE_NAME VARCHAR(255) NOT NULL, NODE_ID INTEGER NOT NULL, QUEUE_NAME VARCHAR(255) NOT NULL, COND VARCHAR(1023), SELECTOR VARCHAR(1023), CHANNEL_ID BIGINT, CLUSTERED CHAR(1), ALL_NODES CHAR(1), PRIMARY KEY(POSTOFFICE_NAME, NODE_ID, QUEUE_NAME))
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 1 month
[JBoss JIRA] Created: (JBAS-5002) Include XA_RMERR and XA_RMFAIL connectionErrorOccurred processing in the XAResourceWrapper
by Adrian Brock (JIRA)
Include XA_RMERR and XA_RMFAIL connectionErrorOccurred processing in the XAResourceWrapper
------------------------------------------------------------------------------------------
Key: JBAS-5002
URL: http://jira.jboss.com/jira/browse/JBAS-5002
Project: JBoss Application Server
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: JCA service
Affects Versions: JBossAS-4.2.2.GA
Reporter: Adrian Brock
Since we have an XAResourceWrapper for all XAResources within the JCA connection manager now,
we should use it to track all events on the XAResource protocol.
If any event throws an XA_RMERR or XA_RMFAIL then we should fire a connectionErrorOccurred event
on the associated connection manager's ConnectionListener to close the connection
(assuming it is not already destroyed - i.e. the resource adapter did it itself).
This is just a "fixup" feature for resource adapters that don't do this themselves.
e.g. something like
public class XAResourceWrapper()
{
...
public void prepare(Xid xid) throws XAException
{
try
{
delegate.prepared(Xid xid);
}
catch (XAException e)
{
checkFailure();
throw e;
}
catch (RuntimeException e)
{
checkFailure();
throw new XAException(..., e); // XA_RMERR
}
catch (Error e)
{
checkFailure();
throw new XAException(..., e); // XA_RMERR
}
}
protected void checkFailure(XAException e)
{
if (connectionManager.getFireResourceError() && (e.errorCode = XAException.XA_RMERR || e.errorCode= XA_RMFAIL))
{
connectionListener.connectionErrorOccurred(new ResourceException("Error in resource manager" + connectionLisetener, e));
}
}
}
For backwards compability there should be a flag to turn off the behaviour in case it causes problems.
e.g.
<xa-datasource>
...
<!-- Try to think of a better name? -->
<fire-resource-failure-event>false</fire-resource-failure-event>
</xa-datasource>
But it should be true by default since it is unlikely that any connection that reported those XAExceptions
should be returned to the pool.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 1 month
[JBoss JIRA] Created: (JBMESSAGING-1161) Dead-lock in rollback of scheduled messages
by Abel Munoz Alcaraz (JIRA)
Dead-lock in rollback of scheduled messages
-------------------------------------------
Key: JBMESSAGING-1161
URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1161
Project: JBoss Messaging
Issue Type: Bug
Components: Messaging Core
Affects Versions: 1.4.0.SP1
Environment: OS: Windows XP SP2 / Linux RedHat
JDK: Sun 1.5.0 Update 12 / 13
JBAS: 4.2.1.GA (Non-Clustered)
JBM: 1.4.0.SP1 (Non-Clustered)
DBMS: PostgreSQL 8.2.4 / 8.2.5
Reporter: Abel Munoz Alcaraz
Assigned To: Tim Fox
PRECONDITIONS:
A non-clustered fresh installation of JBM 1.4.0.SP1 in a JBAS 4.2.1.GA with PostgreSQL 8.2.5.
WORKFLOW:
1.- Install JBAS 4.2.1 with PostgresSQL in a Non-Clustered environment
2.- Inslall JBM 1.4.0.SP1
3.- Startup JBAS with JBM.
4.- Send 1000 scheduled messages to '/queue/QueueWithOwnRedeliveryDelay'.
5.- Session.rollback at first 5 messges.
6.- The destination is dead.
If you send messages scheduling its delivery and, when they are delivered, you do more than one rollbacks then the destination is dead locked.
It seems a dead lock problem in MessagingQueue.java: It uses a synchronized method from a synchronized block of code.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 1 month
[JBoss JIRA] Created: (JBAS-5003) Introduce generic exception handler for XAResources
by Adrian Brock (JIRA)
Introduce generic exception handler for XAResources
---------------------------------------------------
Key: JBAS-5003
URL: http://jira.jboss.com/jira/browse/JBAS-5003
Project: JBoss Application Server
Issue Type: Sub-task
Security Level: Public (Everyone can see)
Components: JCA service
Affects Versions: JBossAS-4.2.2.GA
Reporter: Adrian Brock
Related to the parent task.
The best way to implement this would be to introduce a generic execption handler
(like the ExceptionSorter in our jdbc adapter).
This handler could check for additional errors beyond XAER_RMERR and XAER_RMFAIL
for which the connection should be closed.
e.g. a simple one might be the XAException contains a nested IOException?
Another one could be checking of a particular string in the XAExecption.getMessage().
public boolean isFatal(XAExeption e)
{
if (xaException.getMessage().contains("ACME-0473") // fatal error
return true;
return false;
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 1 month