Dafilesrv keeps all files requested open until they are closed by the client, or clients are timedout.
If servicing a very large number of clients and files, this can cause problems, hitting the hard max file handle limit (see gh-3328).
Introduce a LRU file io scheme, so that the # of concurrently opened files can be limited, closing old files, until they are needed again.
NB: This will reuse code that is currently in use in Thor to perform a similar purpose, when it opens lots of files.
Dafilesrv keeps all files requested open until they are closed by the client, or clients are timedout.
If servicing a very large number of clients and files, this can cause problems, hitting the hard max file handle limit (see gh-3328).
Introduce a LRU file io scheme, so that the # of concurrently opened files can be limited, closing old files, until they are needed again.
NB: This will reuse code that is currently in use in Thor to perform a similar purpose, when it opens lots of files.