[
https://issues.jboss.org/browse/WFLY-315?page=com.atlassian.jira.plugin.s...
]
Emanuel Muckenhuber commented on WFLY-315:
------------------------------------------
Yeah, i mean most of this relies on unbounded thread pools, so that operations don't
deadlock. We should really get rid of those at one point though.
We do throttle (1) mainly because when i was running a lot of concurrent requests with an
not limited thread pool the server pretty much ran out of memory pretty quickly (thanks to
ModelNode.clone()). (2) are executed by single thread, because it's kinda pointless
have multiple registration just use threads, when they cannot be executed concurrently.
(3) we have a limited pool on the DC, however proxied request cannot be limited, because
they are all blocking (awaiting the tx.complete from the DC). Also inbound request for
fetching data and files are unlimited to avoid deadlocks. This all is a huge mess needs to
be cleaned up at one point, however would require some fundamental changes.
Avoid running out of threads when connecting to the DC from a slave
to pull down missing data
---------------------------------------------------------------------------------------------
Key: WFLY-315
URL:
https://issues.jboss.org/browse/WFLY-315
Project: WildFly
Issue Type: Feature Request
Security Level: Public(Everyone can see)
Components: Domain Management
Reporter: Kabir Khan
Assignee: Emanuel Muckenhuber
Priority: Blocker
Fix For: 9.0.0.CR1
For WFLY-259 when a slave connects to the DC to pull down missing data, it does this by
either getting a lock for the DC, or by joining the permit of the existing DC lock if the
request to update a slave's server-config was executed as part of a composite
obtaining a lock on the DC.
The way it works at present there is a thread per slave which is blocked until the
transaction completes. The DC threads are a finite resource, so a large number of slaves
trying to pull down dats will cause deadlock
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira