[jbossts-issues] [JBoss JIRA] (JBTM-1431) LastResourceRecord.shouldAdd allows insertion regardless of order and type info
RH Bugzilla Integration (JIRA)
issues at jboss.org
Mon Dec 8 09:30:39 EST 2014
[ https://issues.jboss.org/browse/JBTM-1431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13025907#comment-13025907 ]
RH Bugzilla Integration commented on JBTM-1431:
-----------------------------------------------
Hayk Hovsepyan <hhovsepy at redhat.com> changed the Status of [bug 1001909|https://bugzilla.redhat.com/show_bug.cgi?id=1001909] from ON_QA to VERIFIED
> LastResourceRecord.shouldAdd allows insertion regardless of order and type info
> -------------------------------------------------------------------------------
>
> Key: JBTM-1431
> URL: https://issues.jboss.org/browse/JBTM-1431
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: Transaction Core
> Affects Versions: 4.17.3
> Reporter: Mark Little
> Assignee: Mark Little
> Fix For: 4.17.9, 5.0.0.M2
>
>
> So looking at the code, LastResource is meant to be ordered last in the intentions list (check topLevelPrepare to see this). However, a quick look at the code in LastResourceRecord shows that there is a bug:
> public boolean shouldAdd (AbstractRecord a)
> {
> if (a.typeIs() == typeIs())
> {
> if (ALLOW_MULTIPLE_LAST_RESOURCES) {
> if (!_disableMLRWarning
> || (_disableMLRWarning && !_issuedWarning)) {
> tsLogger.i18NLogger.warn_lastResource_multipleWarning(a.toString());
> _issuedWarning = true;
> }
> return true;
> }
> else {
> tsLogger.i18NLogger.warn_lastResource_disallow(this.toString(), a.toString());
> return false;
> }
> }
> else
> {
> return true; <------- Here is the bug!
> }
> }
> Basically if the record to be added is not a LastResourceRecord then it gets added immediately, ignoring any further checks on type, order etc. This is wrong.
> And looking back at the code from 6 years ago we see that this was much simpler:
> public boolean shouldAdd (AbstractRecord a)
> {
> return (a.typeIs() == typeIs()) ;
> }
--
This message was sent by Atlassian JIRA
(v6.3.8#6338)
More information about the jbossts-issues
mailing list