Kubernetes Prow Robot
86fec81606
Merge pull request #118995 from pohly/test-integration-race-detection-flowcontrol-II
...
flowcontrol: copy object before passing it to client-go Create to avoid data race
2023-06-30 08:18:43 -07:00
Kubernetes Prow Robot
52b1247b28
Merge pull request #118232 from luckymrwang/style
...
style: correct the sentence
2023-06-30 01:51:59 -07:00
Kubernetes Prow Robot
9af93df9b0
Merge pull request #117845 from ctripcloud/fix-hpa-plain-calc
...
fix HPA plain metric calculate
2023-06-30 01:51:47 -07:00
Patrick Ohly
a5df442be7
flowcontrol: copy object before passing it to client-go Create to avoid data race
...
This is similar to 5e1c6cd0d4 , except that here generics are involved:
because client-go Create under the hood mutates its input value temporarily,
callers must make a copy if the object is read from some other goroutine.
The race as reported by "go test -race" for
test/integration/examples.TestAggregatedAPIServerRejectRedirectResponse is:
WARNING: DATA RACE
Read at 0x00c000556010 by goroutine 16128:
reflect.Value.String()
/usr/local/go/src/reflect/value.go:2565 +0x216
encoding/json.stringEncoder()
/usr/local/go/src/encoding/json/encode.go:645 +0x223
encoding/json.structEncoder.encode()
/usr/local/go/src/encoding/json/encode.go:759 +0x2ba
encoding/json.structEncoder.encode-fm()
<autogenerated>:1 +0xdb
encoding/json.ptrEncoder.encode()
/usr/local/go/src/encoding/json/encode.go:943 +0x382
encoding/json.ptrEncoder.encode-fm()
<autogenerated>:1 +0x90
encoding/json.(*encodeState).reflectValue()
/usr/local/go/src/encoding/json/encode.go:358 +0x88
encoding/json.(*encodeState).marshal()
/usr/local/go/src/encoding/json/encode.go:330 +0x224
encoding/json.Marshal()
/usr/local/go/src/encoding/json/encode.go:161 +0xf9
k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.ToJSON()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format/formatting.go:81 +0x44
k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.Stringer.String()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format/formatting.go:68 +0x5a4
k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.(*Stringer).String()
<autogenerated>:1 +0x4b
fmt.(*pp).handleMethods()
/usr/local/go/src/fmt/print.go:673 +0x4db
fmt.(*pp).printArg()
/usr/local/go/src/fmt/print.go:756 +0xce4
fmt.(*pp).doPrintf()
/usr/local/go/src/fmt/print.go:1077 +0x599
fmt.Fprintf()
/usr/local/go/src/fmt/print.go:224 +0x7e
k8s.io/kubernetes/vendor/k8s.io/klog/v2.(*loggingT).printfDepth()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:733 +0x216
k8s.io/kubernetes/vendor/k8s.io/klog/v2.(*loggingT).printf()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:718 +0xcc
k8s.io/kubernetes/vendor/k8s.io/klog/v2.Verbose.Infof()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:1418 +0x64
k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol.(*cfgMeal).digestFlowSchemasLocked()
...
Previous write at 0x00c000556010 by goroutine 15271:
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*TypeMeta).SetGroupVersionKind()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go:121 +0x193
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.WithVersionEncoder.Encode()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/helper.go:239 +0x325
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*WithVersionEncoder).Encode()
<autogenerated>:1 +0xfb
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.Encode()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/codec.go:49 +0xb3
k8s.io/kubernetes/vendor/k8s.io/client-go/rest.(*Request).Body()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/client-go/rest/request.go:470 +0x884
k8s.io/kubernetes/vendor/k8s.io/client-go/kubernetes/typed/flowcontrol/v1beta3.(*flowSchemas).Create()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/client-go/kubernetes/typed/flowcontrol/v1beta3/flowschema.go:118 +0x23c
k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.(*objectOps[...]).Create()
<autogenerated>:1 +0x10f
k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.EnsureConfiguration[...]()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer/strategy.go:272 +0x1b5
k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.EnsureConfigurations[...]()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer/strategy.go:247 +0xf3
k8s.io/kubernetes/pkg/registry/flowcontrol/rest.ensureMandatoryConfiguration()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:230 +0x59e
k8s.io/kubernetes/pkg/registry/flowcontrol/rest.ensure()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:202 +0x1b2
k8s.io/kubernetes/pkg/registry/flowcontrol/rest.(*bootstrapConfigurationEnsurer).ensureAPFBootstrapConfiguration.func1.1()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:159 +0xe4
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtectionWithContext()
/home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:154 +0x7b
2023-06-30 09:55:25 +02:00
Kubernetes Prow Robot
02f09d6a61
Merge pull request #118842 from helayoty/sched-update-unit-tests
...
test: Use table-driven test for TestPerPodSchedulingMetrics
2023-06-29 18:23:46 -07:00
Kubernetes Prow Robot
c2b7d25ff8
Merge pull request #118691 from giuseppe/drop-check-for-volumes
...
apis: drop check for volumes with user namespaces
2023-06-29 16:23:56 -07:00
Kubernetes Prow Robot
68b9ccc511
Merge pull request #117554 from yanggangtony/clean-endpoint-controller
...
clean endpoint controller typo logs
2023-06-29 16:23:44 -07:00
Heba Elayoty
d548983dbb
Use table-driven table for TestPerPodSchedulingMetrics
...
Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com >
2023-06-29 14:51:55 -07:00
Shingo Omura
d53762ec3a
remove unnecessary comment in pkg/scheduler/framework.QueueingHintFn
...
event is not passed to QueueingHintFn but it exists a comment about it.
event is unnecessary in QueueingHintFn because QueueingHintFn is used in
ClusterEventWithHint and ClusterEventWithHint already have ClusterEvent.
Signed-off-by: Shingo Omura <everpeace@gmail.com >
2023-06-29 21:22:20 +09:00
Kubernetes Prow Robot
3a9c639d5a
Merge pull request #118312 from mengjiao-liu/improve-scheduler-cache-test
...
scheduler: add test name and remove redundant test tables to improve cache_test.go
2023-06-29 02:51:36 -07:00
Kubernetes Prow Robot
c3c731890c
Merge pull request #117927 from kaisoz/add-FailedToRetrieveImagePullSecret-event
...
Log a warning if a ImagePullSecrets does not exist
2023-06-28 11:14:31 -07:00
Kubernetes Prow Robot
52457842d1
Merge pull request #117055 from cyclinder/csi_migration
...
remove CSI-migration gate
2023-06-28 04:28:31 -07:00
Kubernetes Prow Robot
ddbf3575a7
Merge pull request #116729 from AxeZhan/handlers_sync
...
[Scheduler] Make sure handlers have synced before scheduling
2023-06-28 01:26:31 -07:00
Kubernetes Prow Robot
74bd77a9df
Merge pull request #118917 from kmala/daemonsetfix
...
increase the log level for the GetTargetNodeName error message
2023-06-28 00:08:32 -07:00
Kubernetes Prow Robot
960830bc66
Merge pull request #118102 from RomanBednar/retro-sc-assignment-ga
...
graduate RetroactiveDefaultStorageClass feature to GA in 1.28
2023-06-27 20:46:32 -07:00
yanggang
860aab842d
fix a reference to the wrong variable name
...
Signed-off-by: yanggang <gang.yang@daocloud.io >
2023-06-28 06:12:44 +08:00
kannon92
bb8766daaf
feature flags should be ordered alphabetically
2023-06-27 19:16:16 +00:00
Kubernetes Prow Robot
b3d94ae74f
Merge pull request #118786 from pohly/dra-test-skip-prepare
...
dra: kubelet must skip NodePrepareResource if not used by any container
2023-06-27 09:58:32 -07:00
Aldo Culquicondor
a4519665fe
Skip terminal Pods with a deletion timestamp from the Daemonset sync ( #118716 )
...
* Skip terminal Pods with a deletion timestamp from the Daemonset sync
Change-Id: I64a347a87c02ee2bd48be10e6fff380c8c81f742
* Review comments and fix integration test
Change-Id: I3eb5ec62bce8b4b150726a1e9b2b517c4e993713
* Include deleted terminal pods in history
Change-Id: I8b921157e6be1c809dd59f8035ec259ea4d96301
2023-06-27 08:56:33 -07:00
kidddddddddddddddddddddd
9c7166ff63
wait for eventhandlers to sync before run scheduler
2023-06-27 23:19:34 +08:00
Patrick Ohly
bde66bfb55
kubelet dra: restore skipping of unused resource claims
...
1aeec10efb removed iterating over containers in favor of iterating over pod
claims. This had the unintended consequence that NodePrepareResource gets
called unnecessarily when no container needs the claim. The more natural
behavior is to skip unused resources. This enables (theoretic, at this time)
use cases where some DRA driver relies on the controller part to influence
scheduling, but then doesn't use CDI with containers.
2023-06-27 16:02:31 +02:00
Patrick Ohly
874daa8b52
kubelet dra: fix checking of second pod which uses a claim
...
When a second pod wanted to use a claim, the obligatory sanity check whether
the pod is really allowed to use the claim ("reserved for") was skipped.
2023-06-27 16:01:11 +02:00
Maciej Szulik
af1c9e49c4
Update schedule logic to properly calculate missed schedules
...
Before this change we've assumed a constant time between schedule runs,
which is not true for cases like "30 6-16/4 * * 1-5".
The fix is to calculate the potential next run using the fixed schedule
as the baseline, and then go back one schedule back and allow the cron
library to calculate the correct time.
This approach saves us from iterating multiple times between last
schedule time and now, if the cronjob for any reason wasn't running for
significant amount of time.
2023-06-27 11:29:30 +02:00
Kubernetes Prow Robot
1d25ce8beb
Merge pull request #118392 from testwill/emptydir
...
chore: io/ioutil deprecated
2023-06-26 20:04:31 -07:00
Keerthan Reddy Mala
0033f65808
increase the log level for the GetTargetNodeName error message
2023-06-26 17:31:50 -07:00
Dr. Stefan Schimanski
8083d0d22e
pkg/controlplane/apiserver: remove temporary import restriction of cmd/kube-apiserver
2023-06-26 21:50:38 +02:00
Dr. Stefan Schimanski
764da8a01d
FIXUP: cmd/kube-apiserver/app/options: split apart controlplane part
2023-06-26 21:50:38 +02:00
Dr. Stefan Schimanski
1b3779baa0
MOVE: cmd/kube-apiserver/app/options: split apart controlplane part
2023-06-26 21:50:37 +02:00
Kubernetes Prow Robot
d9714078f8
Merge pull request #118551 from sanposhiho/event-to-register
...
feature(scheduler): implement ClusterEventWithHint to filter out useless events
2023-06-26 06:41:45 -07:00
Davanum Srinivas
f7239e4095
Better back off delays and connection timeout to talk to containerd
...
Set up params similar to what we do in cadvisor:
e9068e3273/container/containerd/client.go (L59-L61)
Signed-off-by: Davanum Srinivas <davanum@gmail.com >
2023-06-25 16:25:28 -04:00
Kubernetes Prow Robot
ba6d2674ca
Merge pull request #118722 from aojea/ip_leading_zeros
...
ipallocator bug if ips has leading zeros
2023-06-25 07:11:07 -07:00
Antonio Ojea
e4f93d8a82
ipallocator bug if ips has leading zeros
...
The ipallocator for the new IPAddress object use the golang big.Int
library for some math operations, like adding an offset to an IP
address.
We use the bytes array to convert between big.Int and IP addresses,
however, IP addresses are always represented as 4 or 16 bytes arrays.
Big int bytes representations just return the byte array until the
most representative number, this requires that we need to prepend
these extra bytes for IPs with leading zeros.
Change-Id: I9d539f582cae1f9f4e373b28c5b94d7a342f09c7
Signed-off-by: Antonio Ojea <aojea@google.com >
2023-06-25 13:14:46 +00:00
Kubernetes Prow Robot
e81c24dfb8
Merge pull request #118497 from mimowo/fix-kubelet-regression
...
Proceed with deletion of rejected pods after Kubelet restart
2023-06-23 14:05:07 -07:00
Kubernetes Prow Robot
a48bcc06fe
Merge pull request #117064 from RomanBednar/multiple-defaults
...
storage class assignment should not ignore errors
2023-06-23 03:09:23 -07:00
Kubernetes Prow Robot
9325a57125
Merge pull request #118765 from mimowo/job-controller-unit-tests
...
Do not set jm.syncJobBatchPeriod=0 if not needed
2023-06-22 10:25:41 -07:00
Kensei Nakada
6f8d38406a
feature(scheduler): implement ClusterEventWithHint to filter out useless events
2023-06-22 13:36:19 +00:00
Giuseppe Scrivano
531d38e323
features: rename UserNamespacesStatelessPodsSupport
...
now it is called UserNamespacesSupport since all kind of volumes are
supported.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com >
2023-06-22 15:19:50 +02:00
Giuseppe Scrivano
556d713a4a
apis: drop check for volumes with user namespaces
...
The second phase of user namespaces support was related to supporting
only stateless pods. Since the changes were accepted for the KEP, now
the scope is extended to support stateful pods as well. Remove the
check that blocks creating PODs with volumes when using user namespaces.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com >
2023-06-22 15:15:42 +02:00
Michal Wozniak
8ed23558b4
Do not set jm.syncJobBatchPeriod=0 if not needed
2023-06-22 11:10:53 +02:00
Michal Wozniak
17013d3960
Review remarks to improve HandlePodCleanups in kubelet
2023-06-22 10:55:39 +02:00
Michal Wozniak
e3ee9b9adc
Fix the deletion of rejected pods
2023-06-22 09:18:34 +02:00
Kubernetes Prow Robot
3e28404008
Merge pull request #118485 from MikeSpreitzer/generic-apf-strategy
...
Use generics to simplify pkg/registry/flowcontrol/ensurer
2023-06-21 23:57:40 -07:00
Mike Spreitzer
92a35f5bca
Usse generics to simplify pkg/registry/flowcontrol/ensurer
...
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com >
2023-06-22 00:56:54 -04:00
Kubernetes Prow Robot
d0accc3f02
Merge pull request #118049 from helayoty/sched-queue-gated-timestamp
...
Unset gated podinfo InitialAttemptTimestamp in addToActiveQ
2023-06-21 17:49:39 -07:00
Kubernetes Prow Robot
a19153ded9
Merge pull request #118403 from skitt/ioutil-sig-storage
...
storage: stop using deprecated io/ioutil
2023-06-21 16:49:41 -07:00
Heba Elayoty
902c711fb4
Unset gated pod info timestamp in addToActiveQ
...
Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com >
2023-06-21 14:16:08 -07:00
Kubernetes Prow Robot
28296ba59e
Merge pull request #113994 from mengjiao-liu/contextual-logging-controller-certificates
...
certificate controller: use contextual logging
2023-06-21 09:03:42 -07:00
Roman Bednar
1bd3f072fa
stop ignoring storage class selection errors
...
The GetDefaultClass() was fixed in scope of this issue:
https://github.com/kubernetes/kubernetes/issues/110514
Before this change assignDefaultStorageClass() was ignoring errors from
this function since it could mean there are multiple defaults - assign
could safely continue and do nothing.
This is no longer true because we always choose one from multiple
defaults - any errors returned from GetDefaultClass() are real errors
and should not be ignored.
2023-06-21 13:09:05 +02:00
Kubernetes Prow Robot
9e0569f2ed
Merge pull request #118779 from dims/add-a-connection-backoff-to-talk-to-cri-impls
...
Add a connection backoff to talk to CRI impls
2023-06-20 20:04:21 -07:00
Davanum Srinivas
c98e72841b
Add a connection backoff to talk to CRI impls
...
We can add backoff for connection like we do in cadvisor:
https://github.com/google/cadvisor/blob/master/container/containerd/client.go#L76-L80
for now, don't tune it, just use the default:
https://github.com/grpc/grpc/blob/master/doc/connection-backoff.md
Signed-off-by: Davanum Srinivas <davanum@gmail.com >
2023-06-20 21:32:50 -04:00