Commit Graph

216 Commits

Author SHA1 Message Date
Mike Danese
3b6a067afc autogenerated 2016-10-21 17:32:32 -07:00
Kubernetes Submit Queue
850c586b69 Merge pull request #35218 from wojtek-t/get_to_list_support_resource_version
Automatic merge from submit-queue

Support resourceVersion in GetToList - unify interface of List and Ge…

This pretty much unifies the interface of List() and GetToList() methods of storage interface.

I'm going to use it in a subsequent PR to improve performance of the whole cluster.
2016-10-21 08:02:14 -07:00
Wojciech Tyczynski
93c008f8a4 Support resourceVersion in GetToList - unify interface of List and GetToList 2016-10-21 10:09:23 +02:00
Wojciech Tyczynski
9c91da7a22 More efficient selector 2016-10-20 15:16:58 +02:00
Wojciech Tyczynski
422121f93a Avoid unnecessary map allocation 2016-10-17 15:01:00 +02:00
Hongchao Deng
6f3ac807fd pass SelectionPredicate instead of Filter to storage layer 2016-09-26 09:47:19 -07:00
deads2k
561f8d75a5 move core resource registry packages 2016-09-21 10:11:50 -04:00
Janet Kuo
30512f909d Improve error message when kubectl rolling-update fail due to version skew
Print the real error message first, the workaround later
2016-09-16 13:00:55 -07:00
Chao Xu
c4ea205aeb print instruction in case of failed kubectl 1.3 rolling-update against 1.4 cluster 2016-09-15 17:20:39 -07:00
Clayton Coleman
acb4c00b39
EnableGarbageCollection should be a struct member on RESTOptions
Not a global. Now that we have RESTOptions this was an easy change.
2016-09-15 00:09:28 -04:00
Timothy St. Clair
5b11b5984e Fixes to cleanup storage clients during UT.
During etcd3.clientv3 integration we had discovered we were leaking connections
2016-09-14 07:27:21 -05:00
Timothy St. Clair
9f3841b452 Revert "Revert "Enable v3 Client as the default on UTs""
This reverts commit 9dcef2e3cd.
2016-09-14 07:27:21 -05:00
Kubernetes Submit Queue
7536eb2691 Merge pull request #32351 from caesarxuchao/fix-finalizer
Automatic merge from submit-queue

Make sure finalizers prevent deletion on storage that supports graceful deletion

Fixing bug:
Non-empty Finalizers fails to prevent a pod from being deleted, if deleteOptions.GracefulPeriod=0. See https://github.com/kubernetes/kubernetes/issues/32157#issuecomment-245778483

We didn't hit any issue with orphan finalizer because all our tests set finalizers on RC or RS, whose storage doesn't support graceful deletion.

cc @thockin @lavalamp
2016-09-09 13:47:47 -07:00
Chao Xu
fcf8853dd7 make sure finalizer prevents deletion on storage that supports graceful deletion 2016-09-08 21:00:49 -07:00
Kubernetes Submit Queue
c27326a26c Merge pull request #31189 from hongchaodeng/r1
Automatic merge from submit-queue

api storage: Decouple Decorator from Filter

Continue #28249

What?
This PR decouples Decorator from Filter, i.e. remove Decorator in createFilter().
- For List, Decorator is called on returned list object.
- For Watch, we implement a new watcher to pipe through decorator. Error will be returned as a watch event.

Why?
- We want to change filter to SelectionPredicate struct. But Decorator is designed to be coupled with filtering.
- Per the discussion in #28249, decorator shouldn't be coupled to filter and error from Decorator should be returned instead of assuming false filtering.
2016-09-08 04:25:05 -07:00
Kubernetes Submit Queue
9f58a867e1 Merge pull request #31522 from krousey/path_validation
Automatic merge from submit-queue

Split path validation into a separate library

This PR splits path segment validation into it's own package. This cuts off one of the restclient's dependency paths to some docker packages, and completely eliminates its dependency on go-restful swagger validation.


cc @kubernetes/sig-api-machinery
2016-09-07 10:14:32 -07:00
vefimova
cc64faf209 Added printing of clarification for object creation request in case of object is in the process of graceful deletion 2016-09-01 16:39:48 +00:00
Kris
e87edf9bd5 Split path validation into a separate library 2016-08-26 08:05:20 -07:00
Hongchao Deng
9131fbd446 refactor destroy func in unit testing 2016-08-25 22:57:28 -07:00
Kubernetes Submit Queue
40efde7e0a Merge pull request #31390 from hongchaodeng/fix
Automatic merge from submit-queue

return destroy func to clean up internal resources of storage

What?
Provide a destroy func to clean up internal resources of storage.
It changes **unit tests** to clean up resources. (Maybe fix integration test in another PR.)

Why?
Although apiserver is designed to be long running, there are some cases that it's not.
See https://github.com/kubernetes/kubernetes/issues/31262#issuecomment-242208771
We need to gracefully shutdown and clean up resources.
2016-08-25 16:44:10 -07:00
Kubernetes Submit Queue
b44b716965 Merge pull request #31248 from wojtek-t/better_selectable_fields
Automatic merge from submit-queue

Avoid unnecessary copies & allocations in field selectors
2016-08-25 09:01:44 -07:00
Hongchao Deng
9fc0e1e98d return destroy func to clean up internal resources of storage 2016-08-25 08:32:21 -07:00
Hongchao Deng
f01bc0a62f decouple Decorator from filter:
- Error from Decorator will be returned instead of assuming false filtering
- For List, Decorator is called on return list object
- For Watch, we implement a new watcher to pipe through decorator
2016-08-24 19:56:35 -07:00
Daniel Smith
9dcef2e3cd Revert "Enable v3 Client as the default on UTs" 2016-08-24 13:16:40 -07:00
Wojciech Tyczynski
d5a596bca1 More efficient field selectors 2016-08-24 09:08:38 +02:00
Kubernetes Submit Queue
f297ea966e Merge pull request #30838 from caesarxuchao/per-resource-orphan-behavior
Automatic merge from submit-queue

[GarbageCollector] Allow per-resource default garbage collection behavior

What's the bug:
When deleting an RC with `deleteOptions.OrphanDependents==nil`, garbage collector is supposed to treat it as `deleteOptions.OrphanDependents==true", and orphan the pods created by it. But the apiserver is not doing that.

What's in the pr:
Allow each resource to specify the default garbage collection behavior in the registry. For example, RC registry's default GC behavior is Orphan, and Pod registry's default GC behavior is CascadingDeletion.
2016-08-23 08:46:32 -07:00
Timothy St. Clair
49b7ebd791 Switch UT default settings to leverage etcd3.v3client 2016-08-22 22:17:55 -05:00
Chao Xu
67b7c7290a Allow per-resource default garbage collection behavior 2016-08-22 11:37:04 -07:00
Hongchao Deng
1871a22039 make labels, fields expose selectable requirements 2016-08-20 10:10:51 -07:00
Kubernetes Submit Queue
5caf74c517 Merge pull request #30529 from hongchaodeng/r1
Automatic merge from submit-queue

change all PredicateFunc to use SelectionPredicate

What?
- This PR changes all PredicateFunc in registry to return SelectionPredicate instead of Matcher interface.

Why?
- We want to pass SelectionPredicate to storage layer. Matcher interface did not expose enough information for indexing.
2016-08-20 00:24:40 -07:00
Hongchao Deng
a607a69f4a pkg/storage: cleanup Codec() from interface 2016-08-15 20:46:13 -07:00
Hongchao Deng
eb516fbc0a optimize field.Set{} -> nil 2016-08-15 11:41:25 -07:00
Hongchao Deng
75fe25e717 generic.Matcher -> *generic.SelectionPredicate 2016-08-13 21:52:11 -07:00
Hongchao Deng
d4afb781c3 change all PredicateFunc to use SelectionPredicate 2016-08-13 10:11:35 -07:00
Kubernetes Submit Queue
e39d7f71e6 Merge pull request #30251 from hongchaodeng/r2
Automatic merge from submit-queue

Move new etcd storage (low level storage) into cacher

In an effort for #29888, we are pushing forward this:

What?
- It changes creating etcd storage.Interface impl into creating config
- In creating cacher storage (StorageWithCacher), it passes config created above and new etcd storage inside.

Why?
- We want to expose the information of (etcd) kv client to cacher. Cacher storage uses this information to talk to remote storage.
2016-08-13 10:09:49 -07:00
Hongchao Deng
d0938094d9 move new etcd storage into cacher 2016-08-12 18:40:20 -07:00
Jordan Liggitt
4db004972a
Plumb context to strategy methods 2016-08-08 22:33:25 -04:00
deads2k
aa3db4d995 make the resource prefix in etcd configurable for cohabitation 2016-07-27 07:51:40 -04:00
Davanum Srinivas
2b0ed014b7 Use Go canonical import paths
Add canonical imports only in existing doc.go files.
https://golang.org/doc/go1.4#canonicalimports

Fixes #29014
2016-07-16 13:48:21 -04:00
Wojciech Tyczynski
1d9bc58328 Extend Filter interface with Trigger() and use it for pods and nodes 2016-07-13 08:45:18 +02:00
Wojciech Tyczynski
7f7ef0879f Change filter to interface in storage.Interface 2016-07-13 08:44:22 +02:00
Hongchao Deng
2d30a967ea ListOptions: add test for ResourceVersion > 0 in List 2016-07-06 14:44:33 -07:00
gmarek
638f4e1192 Setting deletion timestamp bumps object's generation 2016-07-01 16:45:43 +02:00
David McMahon
ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
Xiang Li
e2aab093aa cacher.go: remove NewCacher func
NewCacher is a wrapper of NewCacherFromConfig. NewCacher understands
how to create a key func from scopeStrategy. However, it is not the
responsibility of cacher. So we should remove this function, and
construct the config in its caller, which should understand scopeStrategy.
2016-06-04 22:46:58 -07:00
k8s-merge-robot
35922bdcbd Merge pull request #26378 from pwittrock/fix-26138
Automatic merge from submit-queue

Retry concurrency exceptions in e2e/kubectl.go.  Fixes #26138





[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-27 02:21:21 -07:00
Phillip Wittrock
feaa3aba82 Retry concurrency exceptions in e2e/kubectl.go. Fixes #26138 2016-05-26 14:44:51 -07:00
Chao Xu
1665546d2d add finalizer logics to the API server and the garbage collector; handling DeleteOptions.OrphanDependents in the API server 2016-05-24 13:07:28 -07:00
Jordan Liggitt
29252acd1a Change rest storage Update interface to retrieve updated object
Add OldObject to admission attributes

Update resthandler Patch/Update admission plumbing
2016-05-23 21:09:26 -04:00
Tim Hockin
152c86ab06 Make name validators return string slices 2016-05-18 00:48:01 -07:00