geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörn Gersdorf (JIRA) <j...@apache.org>
Subject [jira] [Updated] (GERONIMO-6542) Logging of XIDs/TransactionIds is wrong
Date Wed, 29 Apr 2015 11:24:06 GMT

     [ https://issues.apache.org/jira/browse/GERONIMO-6542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jörn Gersdorf updated GERONIMO-6542:
------------------------------------
    Patch Info: Patch Available

> Logging of XIDs/TransactionIds is wrong
> ---------------------------------------
>
>                 Key: GERONIMO-6542
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-6542
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>         Environment: JBoss Fuse 6.1-610379, Apache Geronimo TransactionManager 3.3.1
>            Reporter: Jörn Gersdorf
>            Priority: Minor
>         Attachments: GERONIMO-6542__Fix_wrong_logging_of_transaction_ids.patch
>
>
> Transaction IDs are logged in a wrong format by {{XidImpl.toString()}}.
> We are currently investigating issues in a distributed transaction setup involving WebsphereMQ
and try to correlate hanging transactions from MQ with transaction behaviour by Aries/Geronimo.
Therefore we set loglevel {{org.apache.geronimo.transaction.manager}} to {{TRACE}} which lets
{{WrapperNamedXAResource}} nicely log all XA activities.
> However, transaction XIDs are logged in a wrong format. E. g. the transaction Xid 
> {{363720AB4C0100006F72672E6170616368652E61726965732E7472616E73616374696F6E00000000000000000000000000000000000000000000000000000000}}

> will be logged as 
> {{363720ffffffab4c1006f72672e6170616368652e61726965732e7472616e73616374696f6e0000000000000000000000000000}}.
> This makes it hard to find and correlate transaction Xids in the log.
> Reason lies in {{XidImpl.toString()}} and is twofold:
> 1. {{Integer.toHexString(bgid[i])}} will append a single byte as just one character for
byte values {{0 <= bgid[i] <= 15}} (e. g. "1" instead of "01").
> 2. If {{bgid[i]}} is a signed byte value. Negative values will be logged wrongly (e.
g. "ab" will be logged as "ffffffab").
> Patch solving these issues is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message