[
https://issues.jboss.org/browse/WFLY-9955?page=com.atlassian.jira.plugin....
]
Amos Feng commented on WFLY-9955:
---------------------------------
https://github.com/wildfly/wildfly/blob/master/transactions/src/main/java...
{code}
TxControl.setDefaultTimeout(resolvedValue.asInt());
ContextTransactionManager.setGlobalDefaultTransactionTimeout(resolvedValue.asInt());
{code}
if the value == 0;
TxControl.setDefaultTimeout(0); // the transaction will be never time out. So it is OK to
set zero here
ContextTransactionManager.setGlobalDefaultTransactionTimeout(0); // this is wrong, so it
has to be converted to the maximum timeout which might be Integer.MAX_VALUE
[~dmlloyd], I do not understand the necessary to introduce a maximum timeout attribute. I
suppose to change the above codes to
{code}
int timeoutValue = resolvedValue.asInt();
TxControl.setDefaultTimeout(timeoutValue);
if (timeoutValue > 0) {
timeoutValue = Integer.MAX_VALUE;
}
ContextTransactionManager.setGlobalDefaultTransactionTimeout(timeoutValue);
{code}
Compatibility problem: allow a timeout value of "0" to be
set
-------------------------------------------------------------
Key: WFLY-9955
URL:
https://issues.jboss.org/browse/WFLY-9955
Project: WildFly
Issue Type: Bug
Components: Transactions
Reporter: David Lloyd
Assignee: Amos Feng
Previously we allowed a transaction timeout value of "0" to be set in the
transaction subsystem, meaning "no transaction timeout". After the WF 11
changes, we've stopped allowing that value to be set. This behavior should be
restored, with "0" translating into some "very large" value.
The transaction team has indicated that using {{Integer.MAX_VALUE}} has historically
exhibited problems, so a different, smaller-but-still-large value should be used in this
case.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)