Skip to content

Commit 27aca3f

Browse files
authored
Merge pull request kubernetes#91505 from jpbetz/rv-semantics
Consistent Resource Version Semantics for List
2 parents fe4fae0 + 04676ff commit 27aca3f

File tree

37 files changed

+4495
-1075
lines changed

37 files changed

+4495
-1075
lines changed

api/openapi-spec/swagger.json

Lines changed: 3518 additions & 823 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/master/reconcilers/lease.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,9 @@ var _ Leases = &storageLeases{}
6464
func (s *storageLeases) ListLeases() ([]string, error) {
6565
ipInfoList := &corev1.EndpointsList{}
6666
storageOpts := storage.ListOptions{
67-
ResourceVersion: "0",
68-
Predicate: storage.Everything,
67+
ResourceVersion: "0",
68+
ResourceVersionMatch: metav1.ResourceVersionMatchNotOlderThan,
69+
Predicate: storage.Everything,
6970
}
7071
if err := s.storage.List(apirequest.NewDefaultContext(), s.baseKey, storageOpts, ipInfoList); err != nil {
7172
return nil, err

staging/src/k8s.io/api/testdata/HEAD/core.v1.ListOptions.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
"fieldSelector": "3",
66
"watch": true,
77
"resourceVersion": "4",
8-
"timeoutSeconds": 1002466899136229878,
9-
"limit": 5339971464584210463,
8+
"resourceVersionMatch": "Exact",
9+
"timeoutSeconds": 6780787122834727873,
10+
"limit": 3549865785210165515,
1011
"continue": "5"
1112
}
7 Bytes
Binary file not shown.

staging/src/k8s.io/api/testdata/HEAD/core.v1.ListOptions.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ continue: "5"
33
fieldSelector: "3"
44
kind: ListOptions
55
labelSelector: "2"
6-
limit: 5339971464584210463
6+
limit: 3549865785210165515
77
resourceVersion: "4"
8-
timeoutSeconds: 1002466899136229878
8+
resourceVersionMatch: Exact
9+
timeoutSeconds: 6780787122834727873
910
watch: true
67 Bytes
Binary file not shown.
67 Bytes
Binary file not shown.

staging/src/k8s.io/apiextensions-apiserver/pkg/generated/openapi/zz_generated.openapi.go

Lines changed: 9 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

staging/src/k8s.io/apimachinery/pkg/apis/meta/fuzzer/fuzzer.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,10 @@ func v1FuzzerFuncs(codecs runtimeserializer.CodecFactory) []interface{} {
215215
j.Finalizers = nil
216216
}
217217
},
218+
func(j *metav1.ResourceVersionMatch, c fuzz.Continue) {
219+
matches := []metav1.ResourceVersionMatch{"", metav1.ResourceVersionMatchExact, metav1.ResourceVersionMatchNotOlderThan}
220+
*j = matches[c.Rand.Intn(len(matches))]
221+
},
218222
func(j *metav1.ListMeta, c fuzz.Continue) {
219223
j.ResourceVersion = strconv.FormatUint(c.RandUint64(), 10)
220224
j.SelfLink = c.RandString()

staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ filegroup(
3636
srcs = [
3737
":package-srcs",
3838
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion/scheme:all-srcs",
39+
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion/validation:all-srcs",
3940
],
4041
tags = ["automanaged"],
4142
)

0 commit comments

Comments
 (0)