[JBoss JIRA] (WFLY-12257) Memory leak in wildfly transaction client
by Cheng Fang (Jira)
Cheng Fang created WFLY-12257:
---------------------------------
Summary: Memory leak in wildfly transaction client
Key: WFLY-12257
URL: https://issues.jboss.org/browse/WFLY-12257
Project: WildFly
Issue Type: Bug
Components: Transactions
Affects Versions: 15.0.1.Final
Environment: wildfly-transaction-client-1.1.3.Final
wildfly.15.0.1.Final
Windows 10
Reporter: Cheng Fang
Assignee: Cheng Fang
After a volume run of our system we recognized millions of entries in the openFilePaths Object of class FileSystemXAResourceRegistry. When enabling traces for org.wildfly.transaction it seems that for adding an entry a xid string is used
{code:java}
XAResourceRegistryFile(Xid xid) throws SystemException {
xaRecoveryPath.toFile().mkdir(); // create dir if non existent
final String xidString = SimpleXid.of(xid).toHexString('_');
this.filePath = xaRecoveryPath.resolve(xidString);
openFilePaths.add(*xidString*);
{code}
and for removing the entire file path:
{code:java}
protected void removeResource(XAResource resource) throws XAException {
if (resources.remove(resource)) {
if (resources.isEmpty()) {
// delete file
try {
if (fileChannel != null) {
fileChannel.close();
}
Files.delete(filePath);
// deleting using the filepath as key caused a memory leak,
// if xid string have been added, therefore build the xid string for removing
openFilePaths.remove(*filePath.toString()*);
{code}
We didn't find any code where this xid are cleaned up.
As workaround we additionally extract the xid String from the file path and remove the corresponding entry.
{code:java}
String xidString = filePath.toString().substring(filePath.toString().indexOf(
xaRecoveryPath.toString()) + xaRecoveryPath.toString().length() + 1);
openFilePaths.remove(xidString);
{code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
4 years, 5 months
[JBoss JIRA] (SWSQE-695) Map Jira Workflows To Tablue Graphs
by Matthew Mahoney (Jira)
[ https://issues.jboss.org/browse/SWSQE-695?page=com.atlassian.jira.plugin.... ]
Matthew Mahoney updated SWSQE-695:
----------------------------------
Sprint: Kiali Sprint #23, Kiali Sprint #25 (was: Kiali Sprint #23, Kiali Sprint #24)
> Map Jira Workflows To Tablue Graphs
> -----------------------------------
>
> Key: SWSQE-695
> URL: https://issues.jboss.org/browse/SWSQE-695
> Project: Kiali QE
> Issue Type: QE Task
> Reporter: Matthew Mahoney
> Assignee: Prachi Yadav
> Priority: Major
> Labels: pqi
>
> Two parts to this task:
> 1) Because only a couple team members have access to Tablue, generate Kiali metric graphs in Tablue and Paste them into a team accessablel doc so that we can analyze these metrics
> 2) Map Jira Workflow queries to Tablue graphs, so that we can better understand how each of the Tablue graphs are generated.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
4 years, 5 months
[JBoss JIRA] (WFLY-12031) Memory leak in wildfly transaction client
by Cheng Fang (Jira)
[ https://issues.jboss.org/browse/WFLY-12031?page=com.atlassian.jira.plugin... ]
Cheng Fang commented on WFLY-12031:
-----------------------------------
[~ochaloup]not a problem. Flavia suggested I could use the one from JBEAP-12611, and I'll give it a try.
> Memory leak in wildfly transaction client
> -----------------------------------------
>
> Key: WFLY-12031
> URL: https://issues.jboss.org/browse/WFLY-12031
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.1.Final
> Environment: wildfly-transaction-client-1.1.3.Final
> wildfly.15.0.1.Final
> Windows 10
> Reporter: Joachim Petrich
> Assignee: Cheng Fang
> Priority: Critical
>
> After a volume run of our system we recognized millions of entries in the openFilePaths Object of class FileSystemXAResourceRegistry. When enabling traces for org.wildfly.transaction it seems that for adding an entry a xid string is used
> {code:java}
> XAResourceRegistryFile(Xid xid) throws SystemException {
> xaRecoveryPath.toFile().mkdir(); // create dir if non existent
> final String xidString = SimpleXid.of(xid).toHexString('_');
> this.filePath = xaRecoveryPath.resolve(xidString);
> openFilePaths.add(*xidString*);
> {code}
> and for removing the entire file path:
> {code:java}
> protected void removeResource(XAResource resource) throws XAException {
> if (resources.remove(resource)) {
> if (resources.isEmpty()) {
> // delete file
> try {
> if (fileChannel != null) {
> fileChannel.close();
> }
> Files.delete(filePath);
> // deleting using the filepath as key caused a memory leak,
> // if xid string have been added, therefore build the xid string for removing
> openFilePaths.remove(*filePath.toString()*);
> {code}
> We didn't find any code where this xid are cleaned up.
> As workaround we additionally extract the xid String from the file path and remove the corresponding entry.
> {code:java}
> String xidString = filePath.toString().substring(filePath.toString().indexOf(
> xaRecoveryPath.toString()) + xaRecoveryPath.toString().length() + 1);
> openFilePaths.remove(xidString);
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
4 years, 5 months