The Command class (used within CommandSequence for commands such as opengrok-sync) has a OutputThread sub-class that is meant to capture the output produced by the running command. When the output is very long (such as the one in #4473), this can cause memory shortage in the system. Thus, the out array should be bounded, becoming a circular buffer.
The
Command
class (used withinCommandSequence
for commands such asopengrok-sync
) has aOutputThread
sub-class that is meant to capture the output produced by the running command. When the output is very long (such as the one in #4473), this can cause memory shortage in the system. Thus, theout
array should be bounded, becoming a circular buffer.I.e. this place https://github.com/oracle/opengrok/blob/86b9d980ae227915bff8d7863dbeac2593e8257f/tools/src/main/python/opengrok_tools/utils/command.py#L188 needs to be changed.