Skip to content

#367 - process_launcher with json_buffering: output nothing for an empty buffer, remove the buffers of failed sub-processes - #374

Merged
njoubert-cleverage merged 1 commit into
mainfrom
367
Oct 23, 2026
Merged

njoubert-cleverage merged 1 commit into
mainfrom
367

Conversation

@njoubert-cleverage

Copy link
Copy Markdown
Member

Description

Fixes #367.

Regression of 5.5 (#343): the JSON buffer of process_launcher (json_buffering) is created before the sub-process is launched, so SubprocessInstance::getResult() returned the path of an empty cdm_buffer_*.json-stream file when the sub-process wrote nothing (no end_point, or an output that is not an array), and the buffers were never removed.

  • SubprocessInstance::getResult() removes an empty buffer and returns null: the task outputs nothing again, as in 5.4.1 and as documented.
  • New SubprocessInstance::removeBuffer(), called by ProcessLauncherTask for a failed sub-process and for the still running sub-processes stopped because of it (their buffers are never output). An already terminated sub-process keeps its buffer and is handled normally (output on the next call with error_strategy: skip).
  • The buffers that are output are still not removed by the task (a downstream task may read them later): remove them once read, as documented.

Requirements

  • Documentation updates
    • Reference
    • Cookbooks
    • Changelog
  • Unit tests

Breaking changes

None: the path of a non-empty buffer is still output and kept; only empty buffers (which were not output before 5.5) and the buffers of failed / stopped sub-processes are removed.

🤖 Generated with Claude Code

…e the buffer when the sub-process wrote nothing into it, remove the buffers of failed and stopped sub-processes

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@njoubert-cleverage
njoubert-cleverage requested a review from a team as a code owner October 23, 2026 14:39
@njoubert-cleverage
njoubert-cleverage merged commit c1e76e6 into main Oct 23, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

process_launcher with json_buffering outputs the path of an empty buffer and leaves the buffers in the temporary directory

1 participant