Commit Graph

5040 Commits

Author SHA1 Message Date
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
Kubernetes Publisher 7816e54903 Merge pull request #105383 from tkashem/lifecycle-signal
make lifecycle signal thread safe

Kubernetes-commit: dec5153eb0cbda14346eddd374ef787f5c37fb77
2021-10-01 04:41:42 +00:00
Kubernetes Publisher 6b9e33173e Merge pull request #105372 from MadhavJivrajani/vendor-clock-utils
Vendor in k8s.io/utils

Kubernetes-commit: eebeff9f7e0fccf1d220ce809eaea7f7f9248ce0
2021-10-01 00:47:18 +00:00
Abu Kashem c491eeb785 make lifecycle signal thread safe
Kubernetes-commit: d3e2e9ede295fd743c991e15789a1bc2e8d123f7
2021-09-30 15:24:38 -04:00
Madhav Jivrajani a3539bfa6e run hack/{pind-dependency.sh, update-vendor.sh}
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>

Kubernetes-commit: a43fca76ea7ff6fb08153c9081f7858cd4d06dd8
2021-09-30 19:15:35 +05:30
Kubernetes Publisher 6554888298 Merge pull request #104965 from CKchen0726/invalid_nil_check
remove redundant nil check

Kubernetes-commit: ed40a89f2e16dcefdf57f5f3b24f6f3788d7fc5b
2021-09-30 04:41:49 +00:00
Kubernetes Publisher aedc9e0951 Merge pull request #105330 from liggitt/importboss-doc
Make package paths referenced by import boss valid

Kubernetes-commit: d551560a78292e1d4cac1de2ae684c803ddea183
2021-09-30 00:46:51 +00:00
Kubernetes Publisher be50de95a2 Merge pull request #105107 from cici37/addFG
Add feature gate CustomResourceValidationExpressions

Kubernetes-commit: 6f47878926f1aa51e0864821d882bf695558709a
2021-09-29 16:42:37 +00:00
Jordan Liggitt 2f4b3caa9d Make package paths referenced by import boss valid
Kubernetes-commit: f6b831aeaca2ff1481074e05c6771050f2b40516
2021-09-28 13:06:39 -04:00
Kubernetes Publisher 282d7fd7f9 Merge pull request #105232 from wojtek-t/optimize_watchcache
Optimize watchcache by not starting a gorotuine for all Get/List requests setting RV=0

Kubernetes-commit: e35dff68afa694af575495f6dd0c4ec36a723f4b
2021-09-27 23:49:46 +00:00
Kubernetes Publisher 60c10fc89a Merge pull request #105275 from tkashem/apf-rename-seats
apf: rename WorkEstimate.Seats to InitialSeats

Kubernetes-commit: 597f197e61ea364e4a877884619e7c50569e449f
2021-09-27 23:49:44 +00:00
Kubernetes Publisher e75fd4b307 Merge pull request #105078 from aramase/fix-typo-kms-config
fix typo in kms encryption config logs

Kubernetes-commit: dc2fe6d56c7b4f17ee2716e7ceaaff6eff5d3e45
2021-09-27 15:53:54 +00:00
Abu Kashem 863c48fbc2 apf: rename WorkEstimate.Seats to InitialSeats
Kubernetes-commit: 5d67896adedbce27f01b59eb5f2054919a047f2b
2021-09-24 09:41:38 -04:00
wojtekt a7cc30c9b3 Optimize watchcache by not starting a gorotuine for all Get/List requests setting RV=0
Kubernetes-commit: 37f93fc63d988c2f1ea11f467d2f73a43d1fa5b9
2021-09-24 14:14:19 +02:00
Kubernetes Publisher 03ab05cb86 Merge pull request #105160 from MikeSpreitzer/improve-sharding-and-dispatch
Improve sharding and dispatch

Kubernetes-commit: 752c4b7f0b3630fb58f8489cb30748be79cde4f2
2021-09-22 23:49:16 +00:00
Kubernetes Publisher f10cbed68c Merge pull request #104983 from MikeSpreitzer/list-metrics-take3
Try yet again to add metrics about LIST handling

Kubernetes-commit: 5b489e2846a7fb959252dc5a04fe21ec844e9fad
2021-09-22 16:02:35 +00:00
Kubernetes Publisher 49d0d59571 Merge pull request #105085 from MikeSpreitzer/fix-queueset-tests
Update TestNoRestraint and TestWindup

Kubernetes-commit: 68d646a101005e95379d84160adf01d146bdd149
2021-09-21 11:48:56 +00:00
Abu Kashem 0e3e7334bb apiserver: refactor PolicyRuleEvaluator to return a struct
Kubernetes-commit: a748fdc6775c63b52a1a963e2332ac774890d2a9
2021-09-20 17:44:11 -04:00
Abu Kashem d53acfe201 apiserver: store (event, evaluated policy) pair in request context
Kubernetes-commit: 8be823b0b0270e1b979b3d4c6e683e1daa0f2e01
2021-09-20 17:43:16 -04:00
Mike Spreitzer 72ff8a6261 Improve queueset sharding and dispatching
New anti-windup technique: use the request arrival time as the floor
on the virtual dispatch time.  Prevent bound violations where they
might arise rather than fixing up just one queue at dispatch time,
so that the fixed up dispatch times figure into the dispatching choice.

Two tweaks to the shuffle sharding.  Take seats of executing requests
into account as well as seats of waiting requests.  Do not always
consider the generated hand in the same order.

Rename the queueset methods that do shuffle sharding and finding the
queue to dispatch from, because the old names were confusingly
similar.

Tighten up some request margins.

Name the test cases in TestNoRestraint and TestWindup.

Kubernetes-commit: 4b9cba85874158b25b5c994773a4ec04343820c2
2021-09-20 15:45:24 -04:00
Mike Spreitzer 8d3036922c More test tweaks
Canonicalize listing of test cases.

Make TestNoRestraint try both cases: competition and none.

Kubernetes-commit: 0ee1a7b4ff9012b050bd447055ad5e1e8c57c30e
2021-09-20 15:45:24 -04:00
Abu Kashem 6013da2b94 apiserver: wrap ResponseWriter using abstraction
Kubernetes-commit: 0d50c969c587c8a6c16e0962118305ac652c5a6b
2021-09-20 11:21:56 -04:00
Abu Kashem 02a51f0c60 apiserver: introduce abstraction for wrapping ResponseWriter
Kubernetes-commit: 96e8fd69e392cc2acf12930a76edc66b801b3c93
2021-09-20 11:21:02 -04:00