Skip to content

Comments

WIP: tests: implement non-blocking watch#318

Open
justinsb wants to merge 2 commits intokubernetes-sigs:mainfrom
justinsb:nonblocking_watchset
Open

WIP: tests: implement non-blocking watch#318
justinsb wants to merge 2 commits intokubernetes-sigs:mainfrom
justinsb:nonblocking_watchset

Conversation

@justinsb
Copy link
Contributor

A naive implementation of channels blocks when the channel is full.

We can move to a more "classical" approach of a mutex and condition,
though we still have to implemnent the condition using a channel,
because Go doesn't have a condition that supports context-aware waiting.

This lets us set up watches in advance and reuse them across multiple checks,
so we can avoid the overhead of setting up watches every time.

This gives more accurate metrics and lets us easily collect more metrics,
in particular around pod creation latency.
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 14, 2026
@netlify
Copy link

netlify bot commented Feb 14, 2026

Deploy Preview for agent-sandbox canceled.

Name Link
🔨 Latest commit b019c11
🔍 Latest deploy log https://app.netlify.com/projects/agent-sandbox/deploys/6990804ac0b17c0008efb545

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: justinsb

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Feb 14, 2026
A naive implementation of channels blocks when the channel is full.

We can move to a more "classical" approach of a mutex and condition,
though we still have to implemnent the condition using a channel,
because Go doesn't have a condition that supports context-aware waiting.
@justinsb justinsb force-pushed the nonblocking_watchset branch from 55cfe58 to b019c11 Compare February 14, 2026 14:01
@justinsb
Copy link
Contributor Author

I think I prefer #319

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Feb 20, 2026
@k8s-ci-robot
Copy link
Contributor

PR needs rebase.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

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

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants