Commit Graph

94 Commits

Author SHA1 Message Date
Dr. Stefan Schimanski 563bb7b931 Update generated code
Kubernetes-commit: 1e79dfb959896f2e51be87ecef491452bd17724c
2017-11-09 12:27:20 +01:00
Cao Shufeng 837b7e4418 partial fix crd patch failing
partial fixes https://github.com/kubernetes/kubernetes/issues/53379

Kubernetes-commit: 1e800350a2e05899f7435385bebe7fc101142d95
2017-11-03 16:06:14 +08:00
Dr. Stefan Schimanski 8ae36bdf36 apiserver: remove scheme arg from NewUnsecuredEtcd3TestClientServer
Kubernetes-commit: 11d9dd8ceca2d8f6d00b36ebc4982a142f547d5d
2017-10-30 13:18:49 +01:00
Dr. Stefan Schimanski 0d9d3201c2 apiserver: fix Cacher.Stop() race
Kubernetes-commit: a30c0f477d9d4813a08e0abdc7b9029bd4a29287
2017-11-06 15:37:07 +01:00
Davanum Srinivas b690ae9379 Fix TestCRD Flake
The DestroyFunc functions returned by generic.NewRawStorage is never
called when we do a StartTestServer() in the test suite. For a quick
hack for now, added TrackStorageCleanup/RegisterStorageCleanup and
CleanupStorage. Note that unless TrackStorageCleanup is called (which
is called only from the test suite) the other two methods are
no-ops essentially. So no change in behavior at runtime. This vastly
brings down the number of goroutines that are left behind when this
test is executed and should reduce if not eliminate the flakiness
of TestCRD

Kubernetes-commit: 00bcbd1311af711f70c771d790137b93ce48309a
2017-10-27 10:59:52 -04:00
supereagle 063df5c7b3 fix typos: remove duplicated word in comments
Kubernetes-commit: 87c29a08e1f51b2989ff15fc3e5857bc287e401f
2017-06-17 17:17:22 +08:00
Jeff Grafton f4dbe23125 update BUILD files
Kubernetes-commit: aee5f457dbfd70c2d15c33e392dce6a3ca710116
2017-10-12 13:52:10 -07:00
hzxuzhonghu c00f087950 remove unused filed
Kubernetes-commit: b8100ceec3866119ae7efad602a2ae4aca7e13c6
2017-09-29 14:44:13 +08:00
Jordan Liggitt 37b44cbe7f Change --etcd-quorum-read default to true
Kubernetes-commit: 2400185f45ac3eee1f90aa5f4d5287fa65d0feba
2017-10-10 00:16:33 -04:00
Clayton Coleman 5f039fac0c Avoid intermediate List allocations as items added to the list
Pick a reasonable middle ground between allocating larger chunks of
memory (2048 * ~500b for pod slices) and having many small allocations
as the list is resized by preallocating capacity based on the expected
list size. At worst, we'll allocate a 1M slice for pods and only add
a single pod to it (if the selector is very specific).

Kubernetes-commit: ce0dc76901bd1ce36ca20c5cf96b89088d0e95a2
2017-10-09 22:16:13 -04:00
Clayton Coleman d70f8cc7f2 Use watch cache when rv=0 even when limit is set
Kubernetes-commit: 6a76931e2cfd53991a2da20795b929fcaf7877e7
2017-09-25 14:22:25 -04:00
Clayton Coleman f24913f06e Promote continuation token schema to v1
Change the filtering logic to require a leading path and clean that
afterwards.

Kubernetes-commit: ac8808b792f624fa04aa7c589bd5aca1b9afde39
2017-09-24 18:09:54 -04:00
Clayton Coleman 2f9b480e69 Fill partial pages on the server rather than forcing client to
The etcd3 storage now attempts to fill partial pages to prevent clients
having to make more round trips (latency from server to etcd is lower
than client to server). The server makes repeated requests to etcd of
the current page size, then uses the filter function to eliminate any
matches. After this change the apiserver will always return full pages,
but we leave the language in place that clients must tolerate it.

Reduces tail latency of large filtered lists, such as viewing pods
assigned to a node.

Kubernetes-commit: da7124e5e5c0385dd5bcfc72ef035effc7708913
2017-09-24 18:06:57 -04:00
Dr. Stefan Schimanski 633dca03ee Update generated files
Kubernetes-commit: ecb65a6a71d8e76c069a9d9d0b52f552f35cd0d9
2017-10-06 14:09:55 +02:00
Dr. Stefan Schimanski 3cfc602704 apimachinery: mechanical removal of ObjectCopier plumbing
Kubernetes-commit: 509df603b18d356777176953e5d160b6f3d0bba9
2017-10-06 13:30:12 +02:00
Hitoshi Mitake a7bf68f0d6 storage, etcd3: add an option for configuring interval of compaction requests from apiserver
This commit adds an option for controlling request of compaction to
etcd3 from apiserver. There is a situation that apiserver cannot fully
own its etcd cluster (e.g. sharing it with canal). In such a case,
apiserver should have limited access in terms of etcd's auth
functionality so it don't have a priviledge to issue compaction
requests. It means that the compaction requests should be issued by
other component and apiserver's compaction requests are needless.

For such use cases, this commit adds a new flag
`storagebackend.Config.CompactionInterval`. If the flag is non 0,
apiserver issues the compaction requests like current behaviour (the
default is 5 minutes). If it is 0, apiserver doesn't issue the
requests. It can be configured with a newly added option of apiserver
`--etcd-compaction-interval`.

Kubernetes-commit: 87d4d3e92be6b93517f189082b0451cee6957ee5
2017-09-01 14:06:25 +09:00
Kubernetes Publisher 0f62a50c16 etcd3 store: retry w/live object on conflict
In GuaranteedUpdate, if it was called with a suggestion (e.g. via the
watch cache), and the suggested object is stale, perform a live lookup
and then retry the update.

Signed-off-by: Andy Goldstein <andy.goldstein@gmail.com>

Kubernetes-commit: bf33df16b52508974ddedacd814010cfe0fb79f0
2017-09-22 11:42:06 +00:00
Clayton Coleman 460257fd61 Server side implementation of paging for etcd3
Add a feature gate in the apiserver to control whether paging can be
used. Add controls to the storage factory that allow it to be disabled
per resource. Use a JSON encoded continuation token that can be
versioned. Create a 410 error if the continuation token is expired.

Adds GetContinue() to ListMeta.

Kubernetes-commit: 8952a0cb722b77459cf2701632a30f5b264f5aba
2017-09-03 14:04:12 +00:00
Tim Hockin 39fbd1db4a Remove generated JSON code
Kubernetes-commit: 9e2fccd1de5384a6ecadf54849f612a10ecfe93a
2017-09-01 16:38:01 +00:00
Slava Semushin b274c2ad9a Fix benchmarks to really test reverse order of the keys.
Kubernetes-commit: 734be0c49f3d283ec086c9aef2dc63142b481c19
2017-08-29 13:18:49 +00:00
Monis Khan 504f70acec Add enj as reviewer to OWNERS
Adding myself as a reviewer for the following areas:

- API
- auth
- registry
- storage (etcd)

Signed-off-by: Monis Khan <mkhan@redhat.com>

Kubernetes-commit: dd06794bc20ef1e0889af576c7a4f7a2f607e49d
2017-08-29 13:16:16 +00:00
Dr. Stefan Schimanski 1e4465a8e7 apiserver: simplify deepcopy calls
Kubernetes-commit: b2442224e79f480409806c2ccfa24a9acb708162
2017-08-29 13:16:13 +00:00
Jeff Grafton 6c539a43c6 Use buildozer to delete licenses() rules except under third_party/
Kubernetes-commit: a7f49c906df816123e7d4ccbd4cebab411519465
2017-08-29 13:15:24 +00:00
Jeff Grafton 6caa2933ae Use buildozer to remove deprecated automanaged tags
Kubernetes-commit: 33276f06be5e872bf53ca62a095fcf0a6b6c11a8
2017-08-29 13:15:24 +00:00
deads2k d1afbac635 create default storage selection functions
Kubernetes-commit: 0258d044d3b46f5d2e6bf30658afd4f29e48a1ca
2017-08-29 13:13:51 +00:00
Jeff Grafton 44942b068a Run hack/update-bazel.sh to generate BUILD files
Kubernetes-commit: 3579017b865ddbc5449d6bba87346f086e4b93ff
2017-08-29 13:13:51 +00:00
bjhaid 7dfcb9c56f This adds an etcd health check endpoint to kube-apiserver
addressing https://github.com/kubernetes/kubernetes/issues/48215.

Kubernetes-commit: 47d748c5dc989ea46142569bf42636c622fe128a
2017-08-29 13:13:05 +00:00
supereagle 2faadf8c85 update generated deepcopy code
Kubernetes-commit: a1c880ece3574a2c7170e0d040489d56dd912e08
2017-08-29 13:13:04 +00:00
Jordan Liggitt d986f949fd Correctly handle empty watch event cache
Kubernetes-commit: 0df769f54061aaa1796e2ef496265b3711e6826a
2017-08-29 13:13:03 +00:00
Wojciech Tyczynski 741f2c78f4 Don't use cacher if uninitialized
Kubernetes-commit: 74b9ba3b4d7c6f0a116464ac01a5f98b915d4586
2017-07-29 13:55:24 +00:00
deads2k 6f848a98cb add reflector metrics
Kubernetes-commit: 151d39682e62b288c247d8174a5f7fb139ee7bd1
2017-07-28 13:56:11 +00:00
Saksham Sharma c51b2a76ca Add benchmarks for envelope transformer
Kubernetes-commit: 449e811ebe3135a35d04afc84c2e9c9481d637fe
2017-07-28 13:56:11 +00:00
Saksham Sharma 8ca16e584a Add unit tests for envelope transformer
Kubernetes-commit: d23a1f135d694ef315f23299f095fd4b85421670
2017-07-28 13:56:11 +00:00
Saksham Sharma 03bcff8111 Implement Envelope encryption Transformer
Kubernetes-commit: 1a92a8aeb3da1df618396f633ec66678ca1ac3a9
2017-07-28 13:56:11 +00:00
Slava Semushin a2a05bd86f ParseEncryptionConfiguration: simplify code.
Also improves function name in godoc and many error messages.

Kubernetes-commit: bf51722ffbfa5521b8c516b8751435f004aacacf
2017-07-28 13:56:11 +00:00
Dr. Stefan Schimanski e24df9a2e5 Update generated code
Kubernetes-commit: 8dd0989b395b29b872e1f5e06934721863e4a210
2017-07-19 03:49:08 +00:00
Dr. Stefan Schimanski 36b2f4560f deepcopy: add interface deepcopy funcs
- add DeepCopyObject() to runtime.Object interface
- add DeepCopyObject() via deepcopy-gen
- add DeepCopyObject() manually
- add DeepCopySelector() to selector interfaces
- add custom DeepCopy func for TableRow.Cells

Kubernetes-commit: 39d95b9b065fffebe5b6f233d978fe1723722085
2017-07-19 03:49:08 +00:00
Clayton Coleman a9bfd91dd9 Do not persist SelfLink into etcd storage
This behavior regressed in an earlier release. Clearing the self link
ensures that a new version is always written and reduces the size of the
stored object by a small amount. Add tests to verify that Create and
Update result in no SelfLink stored in etcd.

Kubernetes-commit: 461c3701f0915acbf49c339f5321fa86879a963e
2017-07-16 04:08:42 +00:00
Tim Allclair b817dfcc02 Name change: s/timstclair/tallclair/
Kubernetes-commit: a2f2e1d4918effb4f0994333c7b88086674e4a5b
2017-07-16 04:08:42 +00:00
Dr. Stefan Schimanski 5c33fc4de4 apimachinery: remove unneeded GetObjectKind() impls
Kubernetes-commit: da3322c2d93671b7cbff9b090dd5e1ce9984130e
2017-07-16 04:08:42 +00:00
Dr. Stefan Schimanski 51b28748a4 Update generated files
Kubernetes-commit: d358cb168d60deec2c84b68003680307a6565bbd
2017-07-16 04:08:42 +00:00
Dr. Stefan Schimanski 15712b92c3 apimachinery+apiserver: extract test types to work w/ deepcopy-gen
Kubernetes-commit: 205cd90d465b7287fdad5f77d1dc4ac13624b067
2017-07-16 04:08:41 +00:00
Clayton Coleman 2f829d739b GuaranteedUpdate must write if stored data is not canonical
An optimization added to the GuaranteedUpdate loop changed the
comparison of the current objects serialization against the stored data,
instead comparing to the in memory object, which defeated the mechanism
we use to migrate stored data.

This commit preserves that optimization but correctly verifies the in
memory serialization against the on disk serialization by fetching the
latest serialized data. Since most updates are not no-ops, this should
not regress the performance of the normal path.

Kubernetes-commit: b851614adfe2b39941d518485480ff527fa4f0c1
2017-07-04 08:39:44 +00:00
Chao Xu 8be42ee0d0 run hack/update-all
Kubernetes-commit: 60604f8818aecbc9c3736fbc32747cc0a535bc80
2017-06-28 00:14:31 +00:00
Chao Xu 81b7aaaa7d run root-rewrite-import-client-go-api-types
Kubernetes-commit: f2d3220a11111f86b2f481e70e3c1ca4f5896f44
2017-06-28 00:14:31 +00:00
NickrenREN 080796b69a Lower etcd compacted loglevel
Kubernetes-commit: 151b6a04e1355c1b47191f46283a3bfe98dfc393
2017-06-28 00:14:31 +00:00
Clayton Coleman a93da9eb77 Don't bother with a mutable transformer for identity
Kubernetes-commit: dac0d07546f50636ae7f140415aa949325494b2e
2017-06-28 00:14:31 +00:00
Wojciech Tyczynski 6c72e52da3 Add logging to debug conflicts in kubemark-scale test
Kubernetes-commit: 1504c7fc31d1a1f8a37e106b056cc261cdff7a47
2017-06-19 20:36:09 +00:00
Wojciech Tyczynski f6771d9ae8 Revert "Optimize selector for single-matching items"
This reverts commit f93a270edcefc3780247ae89eea02cd13b81237b.

Kubernetes-commit: dbafff3eea4648c8dc6d8ce0d46f7f3932c73bb6
2017-06-13 20:47:32 +00:00
Clayton Coleman 5556dcce58 Add an AES-CBC mode for encrypt at rest
Kubernetes-commit: 395399ab3d93e004e5f59cea5ded675b15a5f250
2017-06-13 20:47:32 +00:00