Mike Spreitzer
c5a0365136
Fix nits noticed in recent code review
...
Kubernetes-commit: 1844a052776bce33322ce20c11b2902403655ef8
2021-10-18 23:51:48 -05:00
Kubernetes Publisher
53ec746131
Merge pull request #105674 from tkashem/apf-debug
...
apf: include seat information in per request debug dump
Kubernetes-commit: 0cef26182cf83091317c17ebb28918391ecf3583
2021-10-16 08:42:00 +00:00
Lukasz Szaszkiewicz
5c13ee7dbf
genericapiserver: indroduce muxCompleteSignals for holding signals that indicate all known HTTP paths have been registered
...
the new field exists primarily to avoid returning a 404 response when a resource actually exists but we haven't installed the path to a handler.
it is exposed for easier composition of the individual servers.
the primary users of this field are the WithMuxCompleteProtection filter and the NotFoundHandler.
Kubernetes-commit: ddfbb5d2bb57ee44b3e10f0b58f9cc7001f55802
2021-10-15 18:14:20 +02:00
Abu Kashem
fb57181f8d
apf: include seat information in request dump
...
Kubernetes-commit: 8e33a3b2cc97813724b64be36fe977290db3053a
2021-10-14 09:27:54 -04:00
Lukasz Szaszkiewicz
ab8ebf841f
apiserver: adds WithMuxCompleteProtection filter
...
It puts the muxCompleteProtectionKey in the context if a request has been made before muxCompleteSignal has been ready.
Putting the key protect us from returning a 404 response instead of a 503.
It is especially important for controllers like GC and NS since they act on 404s.
The presence of the key is checked in the NotFoundHandler (staging/src/k8s.io/apiserver/pkg/util/notfoundhandler/not_found_handler.go)
The race may happen when a request reaches the NotFoundHandler because not all paths have been registered in the mux
but when the registered checks are examined in the handler they indicate that the paths have been actually installed.
In that case, the presence of the key will make the handler return 503 instead of 404.
Kubernetes-commit: b71fa61b79598b723c3ee23217e0b44564d90b52
2021-10-14 14:25:54 +02:00
Lukasz Szaszkiewicz
1fc498576a
apiserver: indroduces NotFoundHanlder
...
The new handler is meant to be executed at the end of the delegation chain.
It simply checks if the request have been made before the server has installed all known HTTP paths.
In that case it returns a 503 response otherwise it returns a 404.
We don't want to add additional checks to the readyz path as it might prevent fixing bricked clusters.
This specific handler is meant to "protect" requests that arrive before the paths and handlers are fully initialized.
Kubernetes-commit: 53867975e72c7a2d2dd94aac6bd2869411f92094
2021-10-15 17:37:16 +02:00
Jefftree
f03b3720c2
Feature flag openapi v3
...
Kubernetes-commit: 8cb2b798c69e0b6c9cef2f06da14fad157e018ba
2021-10-13 09:35:53 -07:00
Kubernetes Publisher
2e373512bd
Merge pull request #105660 from tkashem/apf-debug
...
apf: update queue debug to include queue sum stats and next dispatch R in seat-seconds
Kubernetes-commit: 92f67c6347c6ed5c5d2846bc5d26e49fe3217b37
2021-10-13 08:53:50 -07:00
Abu Kashem
20ef863037
apf: include seats in use in queue dump
...
Kubernetes-commit: edf657a33a70ff942d9a0695f602bed13e5e9628
2021-10-13 10:39:37 -04:00
Abu Kashem
88992ba87a
apf: change QueueDump to use SeatSeconds
...
Kubernetes-commit: 3ef5752edf5b3f7076041368b1c1b5396ee534d7
2021-10-13 10:22:41 -04:00
Abu Kashem
e4ae91b4a2
apf: include queue sum stats in debug
...
Kubernetes-commit: 87c7401eb853678da804ff503e266daeef5ad126
2021-10-13 10:14:30 -04:00
Kubernetes Publisher
2bf6f3434e
Merge pull request #105647 from wojtek-t/disable_pf_for_watches
...
Disable P&F for watch requests
Kubernetes-commit: f0e80a6f10825142865a4069b6ec9a27c0eaa6c5
2021-10-13 02:53:50 -07:00
wojtekt
f578e7708d
Disable P&F for watch requests
...
Kubernetes-commit: 763e6d1dbb6371c66b62e4ea4c1fcbee1c113bda
2021-10-13 07:43:05 +02:00
Kubernetes Publisher
a5bd3b4739
Merge pull request #105592 from MikeSpreitzer/test-final-seats
...
Update queueset_test.go for FinalSeats
Kubernetes-commit: cf5eced48049310dcf591537958fceeb78298d82
2021-10-13 00:43:38 +00:00
Kubernetes Publisher
518b315d81
Merge pull request #103539 from wojtek-t/pf_estimate_watch_width
...
Estimate width of the request based on watchers count in P&F
Kubernetes-commit: af2ed2569d56a9f223b82ecee82d9fc91448890a
2021-10-12 16:42:43 +00:00
Kubernetes Publisher
be4fe9cf7c
Merge pull request #105615 from MikeSpreitzer/correct-linger-logging
...
Unconfuse logging wrt additional latency
Kubernetes-commit: d9896a23bcec2cdadd398bff0bb967a17ad7893d
2021-10-12 08:42:29 +00:00
Mike Spreitzer
56c6fd034b
Unconfused logging wrt additional latency
...
Fixed confusion in queueSet logging wrt seats and additional latency.
Kubernetes-commit: 42f698daad73d9c010027bb60fff9728168c71da
2021-10-11 13:21:46 -07:00
Kubernetes Publisher
5b4ea887d3
Merge pull request #105605 from sttts/sttts-watch-cache-multiple-blockers
...
apiserver/watchcache: doc watch event fan-out to blocked watchers better
Kubernetes-commit: 194a3dea5de35dc819a49ccac4c0c34d35e39c39
2021-10-11 20:45:07 +00:00
Kubernetes Publisher
09b2241faf
Merge pull request #105469 from MikeSpreitzer/advance-epoch
...
Advance epoch
Kubernetes-commit: 9253fefb8f2a76cb301fa7cb4ccfe86555856ae9
2021-10-11 12:44:57 +00:00
scott
5d7782c370
fix goroutine leak in the DeleteCollection
...
Kubernetes-commit: 53df1caeef608dd82d6c0d2433646f538dcd2b5a
2021-10-11 20:21:27 +08:00
Kubernetes Publisher
8f2e61dd8f
Merge pull request #105593 from MikeSpreitzer/fix-finishing-logs
...
Update log messages in queueSet::finishRequestLocked
Kubernetes-commit: 025ac2d57a99457070e5c53028c293e056b2ad4d
2021-10-11 08:45:29 +00:00
Mike Spreitzer
487fea8e61
Update log messages in finishRequestLocked
...
Make them clearer and consistent.
Kubernetes-commit: 3906e187a685cebddef85226950fc36f65e8ddb4
2021-10-09 23:48:41 -07:00
Mike Spreitzer
d69d77c659
Update queueset_test.go for FinalSeats
...
Track the introduction of FinalSeats.
Give up on calculating expected results for tests with added latency,
because I did not find an easy and obvious way to do it.
Kubernetes-commit: 0fc595e03360ba7fc4c3e251d4b41f39172aca72
2021-10-08 22:27:39 -07:00
Kubernetes Publisher
733ad59e08
Merge pull request #105475 from aojea/egress-aggregator-upgrade
...
apiserver aggregator upgrade unit test
Kubernetes-commit: 76cac9dcfec1370b49b0ab2a1afe82cc2cefc0f8
2021-10-08 20:42:34 +00:00
Kubernetes Publisher
3138aff0d7
Merge pull request #105573 from sttts/sttts-etcd-storage-free-kv-early
...
apiserver/storage: free etcd kv early in list decoding loop
Kubernetes-commit: f6facec054611fa88cdac421704c1915523095e6
2021-10-08 20:42:33 +00:00
Dr. Stefan Schimanski
c0ff3feb85
apiserver/watchcache: doc watch event fan-out to blocked watchers better
...
Kubernetes-commit: 94b2bb1d3dcfe7973329cc56024f449adde4086c
2021-10-08 17:05:27 +02:00
Dr. Stefan Schimanski
2f0da0d2ea
apiserver/storage: free etcd kv early in list decoding loop
...
Kubernetes-commit: dbf98e42664c8a3a104fe06e0e362497fca2902d
2021-10-08 14:05:26 +02:00
Kubernetes Publisher
53f4bdcc6f
Merge pull request #105556 from MikeSpreitzer/relax-test-different-widths
...
Relax TestDifferentWidths
Kubernetes-commit: 8d0acaa3ffdff8986e39051c0015278dd4fcab0f
2021-10-08 12:43:28 +00:00
wojtekt
c3ef02ad27
Adjust final seats if they don't fit the limit
...
Kubernetes-commit: c5a77d8a761b0651b53864f9e396d6f23efd01d2
2021-10-08 11:14:11 +02:00
Kubernetes Publisher
72d4855673
Merge pull request #105559 from MikeSpreitzer/refactor-work
...
Calculate the work in each request just once
Kubernetes-commit: 0e260a027bb1c58b8764a69a437fc08e27c9e8c0
2021-10-08 08:48:42 +00:00
Mike Spreitzer
a5192405d9
Calculate the work in each request just once
...
Kubernetes-commit: f2c46c8f9d0b360cf913e22c222d9954b4ff9a76
2021-10-07 17:20:56 -07:00
Mike Spreitzer
1b1389676f
Relax TestDifferentWidths
...
Make the margin a little wider because flakiness was reported.
Kubernetes-commit: 10326282f9d1abcd4a45b737628286d40971efea
2021-10-07 16:09:53 -07:00
Kubernetes Publisher
ebff4efdaf
Merge pull request #105243 from tkashem/apf-seats
...
apf: introduce final seats
Kubernetes-commit: ee2ac08907575ac47a342ebac584cf59b7f71fdb
2021-10-07 20:42:48 +00:00
Kubernetes Publisher
4491b7a6a3
Merge pull request #105403 from tkashem/add-watch-init-latency
...
apf: print watch initialization latency in httplog
Kubernetes-commit: 5c3a789ad421413b982cf098dd8baaebcbe62e5c
2021-10-06 17:42:41 -07:00
Ben Luddy
7324607749
Free APF seats for watches handled by an aggregated apiserver.
...
Kubernetes-commit: 1873915be6be40df20fe35a8e0c7e8e0a620111a
2021-10-06 10:16:46 -04:00
Antonio Ojea
9bb5c950e8
apiserver aggregator upgrade unit test
...
Co-authored-by: Chao Xu <xuchao@google.com>
Kubernetes-commit: 3627462ef3e741f2b8e6de7ed3f51be3122cbc6d
2021-10-05 00:19:43 +02:00
Mike Spreitzer
f7bfb170d7
Keep the progress meter R from overflowing
...
Also add test for that situation.
Kubernetes-commit: a797fbd96de8c67aaed58aef54fbe9f0eb94a2c2
2021-10-01 22:04:05 -07:00
Abu Kashem
733c3f75e9
apf: print watch init latency in httplog
...
Kubernetes-commit: 9b21e11cf9f4cda7c985a588f60925f0766fac02
2021-10-01 10:18:19 -04:00
Kubernetes Publisher
374066e451
Merge pull request #104557 from tkashem/optimize-httplog
...
apiserver: construct logger for httplog only when log level is 3
Kubernetes-commit: afd55590e251044c8091b19e24a85a5bc16f41c9
2021-10-06 08:41:54 +00:00
Abu Kashem
9560ec6e92
introduce final seats for work estimate
...
Kubernetes-commit: 3d6cc118fee15313419bf7aa0082a2a608ec62f6
2021-09-24 15:18:27 -04:00
Jordan Liggitt
522eef3273
vendor sigs.k8s.io/json
...
Kubernetes-commit: 434ce4336ab06b3c34208822d558c0432ada3ad3
2021-09-14 18:20:36 -04:00
Jordan Liggitt
18b69ef17d
Switch from json-iterator to utiljson
...
Kubernetes-commit: bba877d3a6d0e6498d5e43a54939d5e4e8baee1a
2021-09-14 17:54:37 -04:00
Lukasz Szaszkiewicz
b96eea9892
allow for passing a custom handler to the empty delegate
...
Kubernetes-commit: 207478c1e6f94b26d8033d5edc7a8a91c69ef716
2021-09-02 14:22:23 +02:00
Abu Kashem
a1d74a4e54
remove httplog filter from handler chain when klog.v < 3
...
Kubernetes-commit: b05d805fd3337d3e3ea6a195883a4eb9c66a7b8a
2021-08-24 14:29:49 -04:00
Kubernetes Publisher
3df972bf11
Merge pull request #105412 from MikeSpreitzer/define-seat-seconds
...
Define datatype for seat-seconds and prevent overflow
Kubernetes-commit: 6f942a0701bec803e68845fc1c7ceefa5dcbd8e1
2021-10-05 12:49:21 +00:00
Kubernetes Publisher
55be9c76d9
Merge pull request #104920 from tkashem/response-writer-cleanup
...
apiserver: decorate http.ResponseWriter correctly
Kubernetes-commit: efa9029a0db2fa8e97dd6f54d92370f0a8c74187
2021-10-05 08:48:02 +00:00
Kubernetes Publisher
706a6d89cf
Merge pull request #105103 from tkashem/extend-audit-policy
...
apiserver: refactor PolicyRuleEvaluator interface
Kubernetes-commit: 70d1360ab8eb9d80f71f83584443e61e278f0211
2021-10-05 00:43:55 +00:00
Kubernetes Publisher
4340b9bf56
Merge pull request #104227 from astraw99/fix_typo
...
Fix typo `registry`
Kubernetes-commit: 0465cd7d04df7c6f7737bc850538eefd27400fa2
2021-10-02 00:42:24 +00:00
Mike Spreitzer
dc449969cc
Use SeatSeconds
...
Kubernetes-commit: 4b5e1398199282f471d0f332eefeb5c2415bdb01
2021-10-01 15:33:37 -07:00
Mike Spreitzer
0cb46ec2f7
Draft datatype for seat-seconds
...
Kubernetes-commit: d866f9445831687ab3254d754b13a4acf271882f
2021-10-01 13:29:35 -07:00