Weekly GitHub Report for Kubernetes: July 13, 2026 - July 20, 2026 (21:06:44)
Weekly GitHub Report for Kubernetes
Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.
Table of Contents
I. News
1.1 Recent Version Releases:
The current version of this repository is v1.32.3
1.2 Version Information:
The Kubernetes version released on March 11, 2025, introduces key updates detailed in the official CHANGELOG, with additional binary downloads available. For comprehensive information on new features and changes, users are encouraged to refer to the Kubernetes announce forum and the linked CHANGELOG.
II. Issues
2.1 Top 5 Active Issues:
We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.
-
[PRIORITY/BACKLOG] [SIG/NODE] [KIND/FAILING-TEST] [NEEDS-TRIAGE] [WG/DEVICE-MANAGEMENT] [Failing-test]: DRA ubuntu tests are hitting OOM and not running at all: This issue reports that several Ubuntu-based DRA node-e2e test jobs are consistently failing due to the Prow build pod being killed by an out-of-memory (OOM) error early in the test execution, before any VM instance is created. The investigation reveals that the root cause is a too-low 1 Gi memory limit on the Prow pod running the test orchestrator, which is exceeded only on Ubuntu images and not on COS images running the same test binaries, indicating an infrastructure resource limit problem rather than a Kubernetes code regression.
- The comment discussion thoroughly triaged the failure, initially suspecting a recent PR but later ruling it out by comparing Ubuntu and COS job results; they confirmed the OOM occurs in the Prow pod before VM creation and traced it to a recent reduction in pod memory limits from 6 Gi to 1 Gi. The consensus is to increase the memory limit for Ubuntu DRA jobs to resolve the OOM, with some ongoing interest in understanding why Ubuntu specifically triggers higher memory usage, while the jobs have since started passing after limit adjustments but the issue remains open for further investigation.
- Number of comments this week: 18
-
[KIND/BUG] [AREA/KUBELET] [SIG/NODE] [TRIAGE/ACCEPTED] CPUManager distribute-cpus-across-cores relies on CPU numbering order instead of topology: This issue describes a bug in the Kubernetes CPUManager's
distribute-cpus-across-corespolicy where the CPU allocation algorithm incorrectly assumes that CPU IDs are ordered in a way that naturally spreads CPUs across physical cores, which fails on systems with contiguous sibling CPU IDs such as many virtual machines and some bare-metal setups. The root cause is that the current implementation sorts CPU IDs numerically rather than using explicit topology information, leading to suboptimal CPU spreading that allocates sibling threads together instead of distributing them across separate cores; a proposed fix involves using core topology data to round-robin CPU allocation across cores regardless of CPU numbering.- The comments acknowledge the issue as a general concern with naive topology assumptions in CPUManager, with contributors expressing interest in fixing it by implementing a topology-aware CPU sorting method; the discussion confirms the current reliance on logical CPU numbering, clarifies the problem with contiguous sibling IDs, and agrees on including related fixes in a single pull request for review.
- Number of comments this week: 7
-
[KIND/BUG] [SIG/API-MACHINERY] [NEEDS-TRIAGE] CEL map-list concatenation preserves duplicate new keys from the right operand: This issue describes a bug in the schema-aware CEL map-list concatenation where duplicate new keys from the right operand are preserved instead of being merged, causing incorrect list sizes and values. The expected behavior is that the first new key should be appended and indexed, with any subsequent duplicates overwriting the previous entry in place to maintain correct merge-by-key semantics.
- The comments include an initial assignment of the issue to a contributor who later withdraws after discovering a fix is already in progress via a linked pull request; the discussion also clarifies the fix approach and encourages review contributions, with no formal review provided yet.
- Number of comments this week: 6
-
[AREA/KUBELET] [SIG/NODE] [KIND/FEATURE] [NEEDS-TRIAGE] Structured GPU device health reporting in device manager: This issue proposes adding a structured, backward-compatible health reporting mechanism to the GPU device plugin API, enabling the Kubelet to distinguish between DEGRADED and UNHEALTHY device states and expose this information via metrics and optional probes. The goal is to provide a standardized health signal for GPUs to improve detection and handling of hardware issues like ECC errors and thermal throttling, reducing the need for out-of-tree operator implementations and supporting better scheduling decisions.
- The comments express support for the feature's value in standardizing GPU health reporting and discuss related Kubernetes Enhancement Proposals, clarifying the distinction between reporting health in PodStatus versus device plugins. There is also mention of future GPU scheduling developments potentially affecting this work, with interest in how it integrates with upcoming features like DRA.
- Number of comments this week: 5
-
[SIG/NODE] [KIND/FEATURE] [NEEDS-TRIAGE] [WG/DEVICE-MANAGEMENT] DRA drivers: helper code for checking device allocations: This issue requests the addition of helper code for Dynamic Resource Allocation (DRA) drivers to perform sanity checks in the NodePrepareResources step, ensuring devices are not concurrently allocated to multiple claims and are currently available. The goal is to improve the quality and reliability of DRA drivers by potentially extending the kubeletplugin API to enforce these checks, preventing race conditions and unintended device usage.
- The comments discuss assigning the issue, clarifying the problem with device allocation conflicts, and exploring existing implementations like the NVIDIA GPU driver. Contributors debate the feasibility and design of helper code, emphasizing the need for optional validation due to diverse driver requirements and the challenge of maintaining a unified prepared claims cache across different drivers.
- Number of comments this week: 4
2.2 Top 5 Stale Issues:
We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.
As of our latest update, there are no stale issues for the project this week.
2.3 Open Issues
This section lists, groups, and then summarizes issues that were created within the last week in the repository.
Issues Opened This Week: 32
Summarized Issues:
- Test Flakiness and Failures: Several issues report flaky or failing tests caused by intermittent errors, deadlocks, or infrastructure problems. These include flaky test failures in storage backend etcd client connections, podcertificate manager deadlocks, HugepageAwareMemoryReporting metric inconsistencies, integration scheduler plugin timeouts, and node VM provisioning failures in large clusters.
- Eviction and Pod Lifecycle Issues: Multiple issues describe problems with pod eviction and lifecycle management, including missing CRUD tests for EvictionRequest API, taint-eviction controller failing to retry pod deletion due to webhook denials, pods stuck in Init state after preemption, and incorrect pod termination reason reporting during node drains.
- Resource Management and Scheduling Enhancements: Several issues focus on resource reservation, scheduling behavior, and feature gate promotion. These include adding hugepages support to kubelet reserved flags, maintaining DRA behavior with PodGroupPostFilter, promoting DRAFractionalCapacityRange feature gate, improving CPUManager allocation policy, and enhancing eviction behavior to allow temporary pod capacity surges.
- DRA Allocator and Validation Bugs: Issues related to the Device Resource Allocator (DRA) include incorrect consumption of counter resources by admin-access requests, the need for stricter validation of consumable capacity requests using fully qualified names, and Ubuntu-based node-e2e test failures due to insufficient memory limits causing OOM kills.
- API and Schema Bugs: Problems with API behavior and schema validation include a bug in multi-version CRD creation due to internal hoisting of selectableFields, a bug in CEL map-list concatenation preserving duplicate keys incorrectly, and a bug in YAMLOrJSONDecoder corrupting UTF-16 encoded YAML input.
- Metrics and Monitoring Issues: Several issues describe problems with metrics reporting and health monitoring, such as missing available IP metrics after kube-apiserver restart with MultiCIDRServiceAllocator, incorrect memory request reporting in Pod and Container statuses with MemoryQoS enabled, and proposals for asynchronous metric recording and enhanced GPU device health reporting.
- Kubectl and CLI Improvements: One issue proposes adding a new
-o skeletonoutput format tokubectl explainto generate concise, editable YAML skeletons of resource schemas, improving usability for manifest writing compared to existing verbose documentation.
- Control Plane Stability: An issue describes a critical problem where the etcd static pod exits gracefully after startup when kubelet is running, causing control plane unavailability and preventing cluster management.
- Volume and Secret Mounting Issues: One issue reports that mounting multiple secrets or configmaps with overlapping fields into a projected volume results in a "last write wins" behavior, causing only the last secret's value to be visible instead of raising an error for conflicts.
- Readiness Probe Regression: An issue describes a regression in Kubernetes 1.35 where readiness probes using
execare ignored during pod termination, causing pods to incorrectly remain Ready until removal, unlike other versions where readiness status updates properly.
2.4 Closed Issues
This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.
Issues Closed This Week: 75
Summarized Issues:
- Resource and Pod Scheduling Issues: Several issues highlight problems with resource reservation, pod scheduling, and resource accounting in Kubernetes. These include the need for resource reservation for high-priority pods during node maintenance, race conditions causing pod admission failures due to incomplete node informer caches, and bugs in device allocation and pod-level resource reporting that lead to incorrect scheduling or resource footprint calculations.
- Test Flakiness and Failures: Multiple issues report flaky or failing tests across various Kubernetes components and CI jobs. These include flaky scheduler preemption tests, node test failures, integration test flakiness, and conformance test failures caused by infrastructure issues, timing problems, or code regressions. The flakiness affects reliability of test results and requires ongoing triage and fixes.
- DaemonSet and Pod Lifecycle Bugs: There are issues where the DaemonSet controller fails to recreate pods after interruptions, and lifecycle problems cause pods to remain in crash loops or fail to recover after resource changes. These bugs lead to fewer pods than expected and broken DaemonSet states or pods stuck in OOMKilled status despite memory resizing.
- API Server and Client Behavior Problems: Several issues describe unexpected or inconsistent API server behaviors, such as PATCH requests merging annotations instead of replacing them, watch requests for events returning HTTP 200 instead of errors for stale resourceVersions, and client-go retry logic incorrectly handling context cancellations. These problems cause unexpected client-server interactions and complicate API usage.
- Resource Limits and Configuration Enhancements: Requests and discussions focus on improving Kubernetes support for resource limits and configuration options. This includes enabling POSIX rlimits per container, supporting port ranges in Services for protocols needing dynamic ports, and adding node feature labels from cloud providers. These enhancements aim to improve flexibility and usability for workloads with special requirements.
- CPU and Memory Management Issues: Problems with CPU manager features not working correctly when combined, incorrect memory metrics reporting for Docker-in-Docker on cgroupv2, and kubelet resource aggregation bugs causing overestimation of pod footprints are reported. These issues affect resource allocation accuracy and monitoring fidelity.
- Scheduler Plugin and Metrics Improvements: Discussions include moving scheduler plugins to staging for easier reuse, graduating scheduler metrics to beta, and fixing data races in scheduler code. These efforts aim to improve scheduler extensibility, observability, and stability.
- Logging and Linter Enhancements: Issues report excessive logging from kubelet due to missing optional container annotations and efforts to enable stricter linter rules for the flowcontrol API group. These address log noise reduction and code quality improvements.
- Device Resource Allocation Bugs: Several bugs in the Device Resource Allocator (DRA) are described, including failure to release reserved counters, incorrect handling of distinct attributes, and stale cache causing scheduling delays. These bugs cause resource leaks and incorrect device assignments.
- Test Image and Infrastructure Issues: Problems with missing test images, image pull failures, and infrastructure-related flakes such as network connectivity loss on arm64 EC2 nodes are reported. These issues impact test reliability and require external fixes or image provisioning.
- Pod and Container Runtime Bugs: Issues include container status UID validation bugs causing pods to get stuck, checkpoint failures due to missing CRIU binaries, and container runtime errors with seccomp flags causing test failures. These affect pod lifecycle and runtime stability.
- API Validation and Feature Flag Issues: Problems with API validation incorrectly rejecting fractional values, silent failures in declarative validation config options, and feature flag coverage misunderstandings are described. These cause silent errors or misconfigurations in API usage and feature gating.
- Shutdown and Signal Handling Bugs: The kube-apiserver fails to shut down properly on SIGTERM when hostname labels exceed length limits, causing deadlocks requiring SIGKILL. This impacts graceful termination and cluster stability.
- Resource Cleanup and Test Timeout Issues: Some tests fail due to insufficient cleanup grace periods or slow test execution exceeding timeouts, causing panics or test suite failures. These require configuration changes to improve test stability.
- Security and Dependency Vulnerabilities: The client-go package references an outdated golang.org/x/net version with known vulnerabilities, necessitating an update to prevent security risks flagged by scanners.
- PodDisruption and Node Maintenance Enhancements: A feature request proposes node draining with temporary extra pods to satisfy PodDisruptionBudgets, similar to maxSurge, to maintain availability during maintenance. This would improve cluster resilience during node operations.
- Code Refactoring and Test Coverage: Proposals include refactoring kubelet QoS computation for better readability and promoting DeviceTaintRule tests to conformance to ensure GA API coverage. These improve code maintainability and test completeness.
- Volume Mount and Skew Test Failures: Failures occur in mounting ClusterTrustBundle volumes during skew testing due to feature promotion and kubelet version mismatches, causing consistent test failures in skewed environments.
2.5 Issue Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.
III. Pull Requests
3.1 Open Pull Requests
This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Opened This Week: 126
Key Open Pull Requests
1. Kep 6060/client go webhook token verification: This pull request implements the KEP-6060 feature by introducing a client-go webhook token verification library that provides offline and in-cluster verifiers for authenticating admission webhook tokens, enforces token claims such as audience and allowed API groups, includes an HTTP admission adapter for token verification, restructures the code into a standalone minimal staging module (k8s.io/webhookauth), and adds comprehensive tests and security hardening to ensure secure and reliable webhook authentication in Kubernetes.
- URL: pull/140665
- Associated Commits: 2861a, 92795, e55c5, d285a, c0472, 86d4c, e4627, f6989, e94ba, 05efe, eb469, ddaf1, e0761, 41a8a, cf6f9, 3d644, 6c9d7, 0820c, 5733b, ed0b5, e79a1, b2c98, fd888, 320bd, 4e1bd, cb588, b601a, 23f57, 5b67d, 6f1f0, 1c155, 52111, 57607, e5af4, f5e44, 113ca, 300c6, f2f04, b4026, 53ce6, a412d, 9faa6, 8be57, a06c5, 2bf52, 41e7d, d7cec, 2ae9f, 08722, 9f6b9, f6628, 84034, 5925c, 7c5cb, f18ba, 9d819, 617ab, 7c4c8, b7e8a, 5facb, 23f9b
2. Address code review feedback of cpu_assignment.go: This pull request addresses code review feedback on the cpu_assignment.go file by fixing the distribution and remainder handling in the takeByTopologyNUMADistributedForResize function, porting the alignBySocket implementation to this function, adding detailed comments to clarify the resize implementation, and including related test cases to improve CPU allocation logic for in-place pod vertical scaling with exclusive CPUs.
- URL: pull/140678
- Associated Commits: a0ebe, 96da3, 00cac, a0302, 644ad, 383e0, b36cc, a5d8f, ca13e, edf6a, b3d0f, da009, 22df7, dfeac, 543a0, 4eeac, 2560f, 03325, 59efd, 3918f, 45e1e, e7dbc, eed85, e2d5e, 55a40, 409a0, 79e7a, 2b52e, e3f86, 9b15f, 411af
3. [WIP - auxilary PR, do not review] CPU assignment & resize tests: This pull request improves and extends the CPU assignment and resize tests in Kubernetes by enhancing error verification, adding baseline parameters, and introducing multiple new test cases covering multi-NUMA topologies, error scenarios, non-empty baselines, exact CPU allocations, and scaling down, thereby augmenting the functionality of related prior pull requests and supporting the CPU manager's resize logic.
- URL: pull/140657
- Associated Commits: cdbfa, 254a9, d677a, 655a6, 4e677, 4db05, 2f232, 42ded, b4c97, 7368a, b55b4, afa76, 6a9ea, 32763, 3dfde, 1012a, 24dd9, 3ce6e, 574ba, a454b, dd936, 2089e, 7dc98, 1fbd5, a11f9, ce4fb, 526c6
Other Open Pull Requests
- CompositePodGroup and Scheduling Enhancements: Multiple pull requests introduce reusable building block struct types for CompositePodGroup in the
scheduling.k8s.ioAPI group and integrate support into theworkloadbuilderlibrary, improving Kubernetes scheduling capabilities. These changes also add multi-level topology-aware scheduling (TAS) support by enhancing CompositePodGroup APIs to generate and score placements hierarchically and updating in-tree plugins for compatibility.
- Pod-Level Resource Defaulting and Feature Gate: Several pull requests fix pod-level resource limit defaulting by setting pod-level limits equal to aggregated container limits when all containers specify limits, moving this logic to a strategy layer to preserve existing fields during updates. They also introduce and promote the PodLevelResources feature gate to GA in Kubernetes v1.37, including related unit tests and update defaulting fixes.
- ResourceClaim Validation and Scheduler Enforcement: A pull request adds comprehensive validation to ensure ResourceClaim capacity requests and consumed capacities are non-negative, including API-level checks and scheduler-side enforcement to prevent negative node-allocatable resource footprints. This improves robustness against malformed or corrupt allocation states in the Dynamic Resource Allocation system.
- Static CPU Management Policy Enhancements: One pull request extends test cases and adds features for configurable CPU scale-down delay in the Static CPU management policy with InPlacePodVerticalScalingExclusiveCPUs. It introduces a
scale-delay-timeoption, exposes assigned CPU sets via the downward API, and implements lifecycle and feasibility checks to improve pod resource scaling behavior.
- Resource Aggregation Helpers and Benchmarking: A pull request explores targeted resource aggregation helpers by simplifying resource request functions, adding new PodResourceOptions, migrating PodRequests to resource-specific helpers, and benchmarking aggregate allocations to optimize resource handling.
- Persistent Volume Binder Controller Refactor: The PV binder controller is refactored by splitting the binding workflow into two loops (
syncClaimandsyncVolume), eliminating write conflicts and enabling parallel volume syncing with a new concurrency flag. This significantly increases PV/PVC binding and release throughput on large clusters.
- MutablePVNodeAffinity Enforcement in Kubelet: A pull request implements kubelet-side enforcement for the MutablePVNodeAffinity feature by rejecting pods with persistent volumes whose node affinity no longer matches the node when not mounted. It ensures proper rescheduling without interrupting running pods and unifies handling for attachable and non-attachable volumes via a plugin-agnostic mount-state check.
- Scheduler Performance Baseline and SLOs: One pull request adds a scheduler performance baseline and draft service-level objectives to evaluate the impact of the adaptive
PercentageOfPlacementsToScorelimit on Topology Aware Scheduling pod group placement, demonstrating significant throughput improvements by comparing scoring all placements against the adaptive limit.
- CSI Volume Metadata Cleanup Bug Fix: A pull request fixes a kubelet bug by safely removing residual CSI volume metadata files during orphaned pod volume cleanup after hard node reboots. It ensures only unmounted CSI volume directories are cleaned without affecting mounted volumes or other files, preventing persistent cleanup errors.
- Declarative Validation Improvements: Modifications to the declarative validation system treat nil values as "Required" errors and introduce an optional value tag (+k8s:optional) to allow safer handling of nested subfields across pointers, requiring explicit marking of optional pointers to avoid validation failures.
- CSI Driver Scheduling Feature Promotion: The prevention of pod scheduling to nodes without the CSI driver is moved from alpha to beta, enhancing the stability and enforcement of this feature in Kubernetes.
- Allocated Pod Subresource Addition: A new read-only
/allocatedPod subresource is added to surface the Kubelet's allocated pod spec on-demand, reducing API server storage overhead and improving debugging for in-place pod resizing and pod update issues. This feature is implemented for Kubernetes v1.37 with associated endpoints, feature gates, and tests.
- Scheduler Data Race Fix and Local Mutation Handling: A pull request fixes a data race and improves handling of local mutations in the scheduler by optimistically updating pod local structures and requeuing failed pods after status updates, resolving a known issue.
- CPUManager State Checkpoint Unit Tests: Unit tests are added for previously uncovered setter and getter methods in the CPUManager's state checkpoint to enhance test coverage and support improvements related to CPU assignment and in-place vertical scaling.
- Binding Functionality Test Clone: A work-in-progress test clone of a previous pull request aimed at enabling binding functionality is introduced, focusing on identifying and fixing issues related to binding.
- PodLevelResourcesFixUpdateDefaulting Feature Gate: A feature gate called PodLevelResourcesFixUpdateDefaulting is introduced to move pod-level resource defaulting logic to a strategy that defaults pod-level limits to aggregated container limits, fixes update defaulting to preserve unspecified fields on partial updates, and includes related unit tests.
- E2E Storage Test Improvements: Improvements to E2E storage tests prevent registration of unsupported tests that always skip themselves at runtime, reducing overhead and clarifying test analysis.
- Code Generation Tool for Helper Functions: A new code generation tool is introduced to automatically translate versioned helper functions to internal helpers, eliminating type conversion overhead and maintenance burden, demonstrated by replacing a manually copied qos helper as proof-of-concept.
- Unit Test Coverage for Client-Go Rest Watch: Comprehensive unit tests are added to the
k8s.io/client-go/rest/watchpackage, covering previously untested error paths in the decoder and encoder, increasing statement coverage from 78.9% to 100% without production code changes.
- Unit Test Coverage for Apimachinery Watch: Unit test coverage for the
k8s.io/apimachinery/pkg/watchpackage is increased from 74.2% to 99.1% by adding tests for previously untested code paths across multiple files, ensuring more robust validation of watcher behaviors without user-facing changes.
- E2E-Node Test Helper Fix for Container Limits: A pull request removes a shortcut in e2e-node test helpers that replaced expected container CPU and memory limits with pod-level limits, enabling accurate testing of scenarios with exclusive CPU assignments or no set resource limits by verifying container-level limits directly.
- Scheduler Pod Update Handling Proof-of-Concept: A proof-of-concept update to the scheduler separately handles synchronous and asynchronous pod updates during scheduling failures, including a revert of a previous change related to adding resourceVersion to Pod status patches.
3.2 Closed Pull Requests
This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Closed This Week: 207
Key Closed Pull Requests
1. Fix security and reliability issues across multiple components: This pull request aims to address multiple security, stability, and code-quality issues across the project by implementing fixes for dangerous command execution, missing user and entrypoint configurations, insecure gRPC and TLS handling, synchronization problems, privilege escalation risks, unsafe template usage, host network exposure, invalid variable usage, unsafe casting and deserialization, response writing flaws, potential decompression bomb denial-of-service vulnerabilities, and non-cryptographic random usage, thereby improving the overall security posture, runtime stability, deployment hardening, compliance readiness, and code reliability with minimal functional impact.
- URL: pull/140736
- Associated Commits: db7b1, 2a9fa, ca932, 69cdb, 5dcfd, 620a2, 3603c, 0a83a, b3d6d, c90d8, 1f58c, b2c72, 2212b, 52fb8, f6e54, 6cec2, 024f2, 9bb1c, e3535, 4eb08, 34c64, f4feb, e1710, 4a83a, 19ece
- Associated Commits: db7b1, 2a9fa, ca932, 69cdb, 5dcfd, 620a2, 3603c, 0a83a, b3d6d, c90d8, 1f58c, b2c72, 2212b, 52fb8, f6e54, 6cec2, 024f2, 9bb1c, e3535, 4eb08, 34c64, f4feb, e1710, 4a83a, 19ece
2. Memory-identity already identical types in admissionregistration, authentication and core: This pull request aims to improve the Kubernetes codebase by making internal types in admissionregistration, authentication, and core memory-identical with their preferred storage versions, building on prior work to add +k8s:hubType annotations and conversion-gen checks to prevent regressions and ensure consistency.
- URL: pull/139829
- Associated Commits: fe513, 39ff2, 1bd34, 6e592, 5b032, bf421, 3096d, 630e3, 3c9e7, 3068a, fbf88, 50cbb, 4de3a, f569b, 3b626, 7a424, e7d30
- Associated Commits: fe513, 39ff2, 1bd34, 6e592, 5b032, bf421, 3096d, 630e3, 3c9e7, 3068a, fbf88, 50cbb, 4de3a, f569b, 3b626, 7a424, e7d30
3. fix: pod-level cgroup was not updated when the OOMKilled container restarts: This pull request fixes a bug in Kubernetes where the pod-level cgroup memory limit was not updated before restarting an OOMKilled container, causing the container to repeatedly hit outdated memory constraints and be OOMKilled again, by ensuring that pod resource updates occur prior to container restart to prevent this issue.
- URL: pull/138857
- Associated Commits: 30261, c5359, 19fce, e2b86, a634b, 13ec7, 763e8, d3411, faad6, 490cd, 3ba02, fa79a, b6913
- Associated Commits: 30261, c5359, 19fce, e2b86, a634b, 13ec7, 763e8, d3411, faad6, 490cd, 3ba02, fa79a, b6913
Other Closed Pull Requests
- StatefulSet Recreate Update Strategy: This pull request introduces a new Recreate update strategy for StatefulSets that mimics the Deployments' Recreate strategy by deleting all pods and waiting for their termination before creating new pods according to the podManagementPolicy. This addition enhances StatefulSet update mechanisms by providing a controlled pod replacement process.
pull/137187
- Storage GetList Unit Tests: This pull request adds and refines unit tests for the storage
GetListfunction to verify correct list error aggregation behavior. It improves error handling, test isolation, and code organization within the Kubernetes storage testing framework.
pull/129129
- Kubelet Package Test Speed and Goroutine Leak Fixes: This pull request replaces time-based waits with SyncTest in multiple kubelet package tests, significantly reducing test execution time from over 40 seconds to under 4 seconds. It also uncovers and fixes background goroutine leaks by integrating context cancellation.
pull/138455
- CompositePodGroups Feature Implementation: This pull request provides a proof of concept implementation of the CompositePodGroups feature as described in KEP-6012, introducing the CompositePodGroup API, feature gate, and scheduling logic enhancements. It also implements the core CompositePodGroup API with alpha-phase hierarchical pod group scheduling and integration with gang scheduling features.
pull/139355, pull/139596
- Pod-Level Resource Limits Defaulting Fix: This pull request fixes the defaulting behavior of pod-level resource limits in the apiserver when the PodLevelResources feature is enabled. It ensures pod-level CPU, memory, and hugepages limits are correctly set from aggregated container limits during pod creation without mutating pod resources on update to avoid validation failures.
pull/136676
- Discoverable Device Metadata Test and Bug Fix: This pull request adds an end-to-end test for the discoverable device metadata feature described in KEP-5304, fixes a bug requiring a minimum CDI spec version 0.5.0 by importing the specs-go library, updates the test driver, and removes redundant in-tree CDI structs to improve maintainability.
pull/137699
- Utiliptables Package Simplification: This pull request removes outdated workarounds and manual locking in the utiliptables package by assuming a minimum iptables version of 1.6.2. It simplifies the codebase and updates unit tests accordingly.
pull/139247
- CPU Manager NUMA Alignment Fix and Tests: This pull request revives and enhances fixes for an issue where enabling both align-by-socket and distribute-cpus-across-numa options caused CPUs to be allocated across socket boundaries. It adds end-to-end tests covering these CPU manager policy options to prevent regressions.
pull/139778
- Declarative Validation Improvement: This pull request improves declarative validation by changing validation options from a string slice to a map that explicitly tracks declared options. This causes undeclared options to produce errors instead of being silently disabled, preventing silent mis-validation and enabling tests to catch forgotten declarations.
pull/140380
- InPlacePodVerticalScalingExclusiveCPUs Preparation Demo: This pull request demonstrates a possible split for PR 129719 by implementing preparation commits for the InPlacePodVerticalScalingExclusiveCPUs feature. It ensures CPU quota limits match requests during pod resizing with exclusive CPUs and includes topology-aware CPU assignment, CPU manager resize support, kubelet orchestration, and related tests, but is marked as a do-not-merge AI-assisted demo.
pull/140603
- Resource.Quantity Parsing Documentation Clarification: This pull request improves documentation by clarifying the meaning of the precision variable and maxInt64Factors in resource.Quantity parsing. It explains that precision refers to digit headroom for safe internal scaling rather than mathematical precision, expanding comments with examples without changing code behavior.
pull/136830
- API Server Emulated Storage Version Fix: This pull request fixes automatic calculation of the emulated storage version in the API server by skipping alpha versions and removing manual overrides for MutatingAdmissionPolicy and MutatingAdmissionPolicyBinding. It stores these as v1 in etcd from version 1.37 and adds logging and test updates for consistency during API version transitions.
pull/137375
- Internal Types Code Generation Tool Proposal: This pull request proposes a new code generation tool to automatically create helper functions for internal types based on versioned counterparts. The goal is to eliminate type conversion overhead and reduce maintenance costs by avoiding manual code duplication.
pull/137731
- Workload-Aware Preemption Integration Tests Alignment: This pull request aligns integration test coverage for Workload-Aware Preemption with existing pod preemption tests by porting relevant cases, adding new tests for pod group preemption with DisruptionMode=Pod, and fixing pod group disruption mode detection issues during preemption.
pull/138817
- ClusterTrustBundles GA Promotion: This pull request promotes the ClusterTrustBundles feature and API from beta to GA, making it stable and enabled by default. It also adds conformance tests and improves test efficiency.
pull/139437
- Pod Status Validation Bug Fix for Linux UIDs: This pull request fixes a bug by updating pod status validation to accept unsigned 32-bit Linux UIDs for container status fields. It allows valid UIDs above the previous int32 limit without affecting existing pod spec UID validations.
pull/138574
- Device Resource Allocation NUMA Node Attribute Addition: This pull request adds
resource.kubernetes.io/numaNodeas a standard device attribute for DRA drivers, introducing sysfs-based helpers for NUMA node identification and SLIT-based co-placement. It includes comprehensive unit and integration tests to support accurate NUMA affinity handling.
pull/139929
- CEL Reflective Wrappers List Concatenation Fix: This pull request improves CEL reflective wrappers by ensuring list concatenation with
+x-kubernetes-list-type=setannotation maintains set-list union semantics. It preserves order-insensitive union equality and prevents mutation of the left-hand side during concatenation.
pull/140293
- ObjectMeta Validation Refactor: This pull request refactors ObjectMeta validation by aligning imperative validation rules with declarative tags for OwnerReference fields and adding a non-negative check for the Generation field during updates. It ensures exact structural error reporting and deduplication parity without changing user-facing behavior, updating tests and generated validation code.
pull/140381
- ComputePodQOS Functions Cleanup and Optimization: This pull request cleans up and optimizes ComputePodQOS functions by reducing unnecessary mutations, simplifying code, expanding test coverage, and improving readability.
pull/134936
- Apimachinery Unstructured Converter Bug Fix: This pull request fixes a bug in the apimachinery unstructured converter by ignoring private and JSON-ignored fields during conversion. This prevents panics caused by attempts to set unexported struct fields and aligns behavior with the standard encoding/json package.
pull/138404
- PodLevelResourceManagers Metrics and Memory Manager Fixes: This pull request enhances PodLevelResourceManagers by configuring kubelet metrics with BETA stability, fixing the memory manager to skip allocation and metric updates for zero-memory containers, and adding comprehensive unit and end-to-end tests.
pull/138770
- Device Resource Allocator Bug Fixes for Reserved State Rollback: This pull request fixes bugs in the Device Resource Allocator by ensuring reserved device state is properly rolled back during allocation failures or backtracking. This prevents resource leaks that caused the scheduler to incorrectly treat device counters as exhausted and fail to schedule pods on capable nodes.
pull/140431
- Horizontal Scaling Test Refactor: This pull request refactors horizontal scaling test files by improving clarity and organization through renaming tests and adding comments about invalid metric types and feature gates.
pull/140445
3.3 Pull Request Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.
IV. Contributors
4.1 Contributors
Active Contributors:
We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.
If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.
| Contributor | Commits | Pull Requests | Issues | Comments |
|---|---|---|---|---|
| pohly | 37 | 8 | 4 | 110 |
| lukaszwojciechowski | 56 | 8 | 1 | 54 |
| liggitt | 11 | 0 | 0 | 84 |
| esotsal | 22 | 4 | 3 | 49 |
| jpbetz | 38 | 13 | 1 | 25 |
| Chunxia202410 | 19 | 2 | 0 | 56 |
| lalitc375 | 50 | 12 | 2 | 9 |
| JoelSpeed | 0 | 0 | 0 | 65 |
| helayoty | 62 | 2 | 0 | 0 |
| ffromani | 0 | 1 | 0 | 60 |
Access Last Week's Newsletter: