Skip to content

Polish debug chunk source generator#18

Open
mooskagh wants to merge 1 commit intomasterfrom
codex/2025-10-06-20-24-14
Open

Polish debug chunk source generator#18
mooskagh wants to merge 1 commit intomasterfrom
codex/2025-10-06-20-24-14

Conversation

@mooskagh
Copy link
Owner

@mooskagh mooskagh commented Oct 6, 2025

Summary

  • add a DebugChunkSourceGenerator stage that emits deterministic DebugChunkSource instances for loader bring-up
  • extend DataLoaderConfig and the stage factory to recognize the debug generator and wire it into the build
  • add a focused unit test and register it with Meson alongside the existing suite
  • switch the generator shuffle and pacing logic to Abseil utilities to satisfy repository guidance
  • polish the debug generator lifecycle, queue handling, and test so the implementation stays concise and idiomatic

Testing

  • just pre-commit

https://chatgpt.com/codex/tasks/task_e_68e101e81f748331a689058f164ee77d

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting

Comment on lines +50 to +53
void DebugChunkSourceGenerator::Stop() {
if (!worker_.joinable()) return;
worker_.request_stop();
worker_.join();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Prevent Stop() from hanging on full output queue

Stop() only calls request_stop() and joins the thread, while the worker loop writes via blocking producer.Put (line 92) and never closes the queue. If a downstream stage has stopped and the queue fills, the worker blocks inside Put and can’t observe the stop token, causing Stop() to block indefinitely and preventing the loader from shutting down. Closing the queue or the producer before joining would let the worker unblock even when no consumer is draining.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant