Branch: refs/heads/master
Home: https://github.com/xrootd/xrootd
Commit: 92ff8826ec29dc20abf75eddb0075ebfe2d82018
https://github.com/xrootd/xrootd/commit/92ff8826ec29dc20abf75eddb0075ebfe2d82018
Author: Brian Bockelman <[log in to unmask]>
Date: 2022-01-04 (Tue, 04 Jan 2022)
Changed paths:
M src/XrdThrottle/XrdThrottle.hh
M src/XrdThrottle/XrdThrottleFile.cc
M src/XrdThrottle/XrdThrottleFileSystemConfig.cc
M src/XrdThrottle/XrdThrottleManager.cc
M src/XrdThrottle/XrdThrottleManager.hh
M src/XrdThrottle/XrdThrottleTrace.hh
Log Message:
-----------
Add max file open tracking.
This tracks the maximum number of files open per "entity" (which might
be distinct from the login name in case of tokens); once the file limit
is hit, the code returns an error instead of opening a new file.
Code is only active when throttle module is loaded and max is explicitly
set. Here's an example configuration with a ridiculously low max (which
is useful for testing, of course):
```
throttle.max_open_files 2
xrootd.fslib ++ throttle
throttle.trace debug files
```
Commit: 442a02a019b847d0e1807851796b32155cfa7cd6
https://github.com/xrootd/xrootd/commit/442a02a019b847d0e1807851796b32155cfa7cd6
Author: Brian Bockelman <[log in to unmask]>
Date: 2022-01-04 (Tue, 04 Jan 2022)
Changed paths:
M src/XrdThrottle/XrdThrottle.hh
M src/XrdThrottle/XrdThrottleFile.cc
M src/XrdThrottle/XrdThrottleFileSystemConfig.cc
M src/XrdThrottle/XrdThrottleManager.cc
M src/XrdThrottle/XrdThrottleManager.hh
M src/XrdThrottle/XrdThrottleTrace.hh
Log Message:
-----------
Add support for connection tracking in the throttle plugin.
This adds a limit for "max active connections" where we define the
'active connection' to be a thread associated with a unique entity
with at least one file open.
Admins would like to track & limit the number of open connections
because each connection incurs the cost of one OS thread and users
can overwhelm the server by having a large number of connections.
I consider the "active connections" a good enough approximation of
"open connections" because the admin can set the idle connections to
be reaped and we really only care about the resource in the coarse
grain: threads become expensive when measured in the thousands, not
in the dozens.
I also consider this a "good enough" approximation because it keeps
all the cost of tracking in the throttling plugin and not the framework
itself. When not in use, there's effectively zero cost.
Commit: ded8082ed98d733fa4723934ee1c90fae5360397
https://github.com/xrootd/xrootd/commit/ded8082ed98d733fa4723934ee1c90fae5360397
Author: Andrew Hanushevsky <[log in to unmask]>
Date: 2022-01-07 (Fri, 07 Jan 2022)
Changed paths:
M src/XrdThrottle/XrdThrottle.hh
M src/XrdThrottle/XrdThrottleFile.cc
M src/XrdThrottle/XrdThrottleFileSystemConfig.cc
M src/XrdThrottle/XrdThrottleManager.cc
M src/XrdThrottle/XrdThrottleManager.hh
M src/XrdThrottle/XrdThrottleTrace.hh
Log Message:
-----------
Merge pull request #1582 from bbockelm/max_concurrency_limits
Track maximum concurrency limits in throttle plugin
Compare: https://github.com/xrootd/xrootd/compare/30c0899254fa...ded8082ed98d
########################################################################
Use REPLY-ALL to reply to list
To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1
|