Threadpoolworker Leaving Stdout And Stderr Files Open After Batch Is Completed
(Doc ID 2518000.1)
Last updated on SEPTEMBER 23, 2022
Applies to:Oracle Utilities Meter Data Management - Version 184.108.40.206.0 and later
Oracle Utilities Framework - Version 220.127.116.11.0 to 18.104.22.168.0 [Release 4.3 to 4.4]
Information in this document applies to any platform.
In Oracle Utilities Application Framework version 22.214.171.124, the threadpoolworker process is leaving files open after each batch run which leaves a minimum of two files (Stdout, stderr) open per thread and per batch run.
A threadpoolworker needs to open and/or keep open many files as it is running and executing jobs. However, it does not need to keep stdout and stderr files open after a batch job is complete but it is doing that in this version of OUAF. For example, if a batch is submitted with 10 threads every 10 minutes on a single threadpoolworker, each time the batch is submitted 20 files are created. After an hour (6 batch runs like this) there will still be 20 x 6 = 120 files open that are either stdout or stderr files.
In earlier versions of OUAF (like 4.2 for example) the stdout and stderr were closed after each batch job completes.
In some extreme cases, as the threadpoolworker runs all day with a heavy amount of batches submitted (not necessary lots of work to execute, just the amount of batch thread submitted is high) the process/user can hit its soft limit for number of open files and the threadpoolworker will error because it can no longer open additional files. The workaround for this case is to raise the limit on the open files setting.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document