Aleksander Mistewicz
7cd49caffc
Add context to Count()
...
Passing the same context will let us associate etcd traces with those
from apiserver.
Signed-off-by: Aleksander Mistewicz <amistewicz@google.com>
Kubernetes-commit: 96b39187c5fac62e462dc348ccc1e3938464d9e1
2025-01-15 11:42:29 +01:00
Karl Isenberg
46dd96ca03
refactor: Stop using ioutil in apiserver
...
- The ioutl package is deprecated. Migrate to os package functions.
Kubernetes-commit: f93e4645c18c6f56bfddc158ef7b3f674b3c41dd
2025-05-08 11:28:52 -07:00
Marek Siarkowicz
5a059075db
Serve LISTs with exact RV and continuations from cache
...
Kubernetes-commit: f82c9e56d928d1028d4b298578f275a2e5e69490
2024-07-03 21:36:51 +02:00
Marek Siarkowicz
73e72d16c5
Unify ListOptions validation between cache and etcd
...
Kubernetes-commit: ccb607f06b91496d02a3b94253261e03e3280630
2025-03-07 12:26:05 +01:00
Marek Siarkowicz
4305a14262
Separate compactWatchCache from increaseRV
...
Kubernetes-commit: 15cb82b3b3fa95ba5b914a5a02ac01d42eda892f
2025-02-25 14:44:50 +01:00
Marek Siarkowicz
3ad93853da
Move GetCurrentResourceVersion to storage.Interface
...
Kubernetes-commit: fea89f25d1bfd7290bb0165f49a6d288ab5f717a
2025-02-24 19:49:45 +01:00
Marek Siarkowicz
fd21d18170
Improve benchmark to handle multiple dimensions
...
Kubernetes-commit: 4a0578e3dee093aec23e16556ac8fb8642060362
2024-11-05 10:32:59 +01:00
Abu Kashem
fbb5ab0d70
handle watch for unsafe delete
...
Kubernetes-commit: 25efc8f2d136a9574166be02789ac727c5b4a3fd
2024-11-05 20:36:56 -05:00
Marek Siarkowicz
518e8ed25c
Adding tests for using indexers in tests
...
Kubernetes-commit: 711772a1e15288d813a830780317a134df9acb5c
2024-08-22 20:04:37 +02:00
Marek Siarkowicz
37f422396a
Update recorders to wrap kubernetes.Client
...
Kubernetes-commit: 066c1c05d73690b48c872f3fbc23b7722cd44fe3
2024-07-05 14:19:49 +02:00
Abu Kashem
14881364b3
refactor: extract decode functions into an interface for etcd3 store
...
Kubernetes-commit: 1d1a656d8de1cdb99deaa6ec771aa354616eaa16
2024-09-24 07:19:19 -04:00
Abu Kashem
3a0975b22c
refactor: add delete options for Delete method in storage interface
...
Kubernetes-commit: bc0ea34bc380e073a7278216fe6690a1b9aee48c
2024-09-19 10:31:08 -04:00
Marek Siarkowicz
de0559ec7b
Benchmark storage
...
Kubernetes-commit: fa5008807add2776ff87f346a7b7d3c029d19efc
2024-07-02 22:50:57 +02:00
Marek Siarkowicz
132d3e46d6
Add paging tests
...
Kubernetes-commit: 99e69569808cf746262b25a9d9d515c26256c7e5
2024-07-07 16:15:47 +02:00
Marek Siarkowicz
a8b9f862fb
Add tests for how recursive parameter works with object prefixes
...
Kubernetes-commit: faa6193f34f7dac775328fbacb2f957370482024
2024-06-11 14:29:51 +02:00
Marek Siarkowicz
67b6245fc3
Fix enabling consistent list from watch cache also works for resourceVersion=0
...
Kubernetes-commit: 0b8e79580eb3a63ca7707626b4894adfb9125586
2024-03-04 19:35:34 +01:00
Marek Siarkowicz
483da2032d
Fix non-recursive list when consistent list from cache is enabled
...
Kubernetes-commit: a527cab9fce0b0234db8b4e1e95a0fc20e135df1
2024-03-04 17:59:04 +01:00
Siyuan Zhang
cef6db2cfb
k8s.io/apiserver/storage/etcd: refactor etcd GetList.
...
Extract the logic to determine withRev to a separate method for better readability.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
Kubernetes-commit: 624169c5b50ee8a6e9a761e9488134985334817e
2023-10-20 12:59:46 -07:00
Wojciech Tyczyński
324d2bc3cf
Cleanup paging parameters in etcd3 store
...
Kubernetes-commit: 3f4d3b67682335db510f85deb65b322127a3a0a1
2023-10-20 15:38:59 +02:00
Siyuan Zhang
77032c52b8
k8s.io/apiserver/storage: add 3 new unit tests for delete.
...
Signed-off-by: Siyuan Zhang <sizhang@google.com>
Kubernetes-commit: 26a4e06c92c248748dd3c50c74d75f8adc3c6823
2023-10-11 10:38:01 -07:00
Lukasz Szaszkiewicz
f75c503352
storage/factory: extend the Create method by newList and resourcePrefix params
...
Kubernetes-commit: ccabc01093a1344ebb27c32c946e9da3b8e91fd2
2023-07-28 09:53:01 +02:00
Lukasz Szaszkiewicz
7ecfbf7914
storage/etcd: simplify passing the transformer
...
Kubernetes-commit: a5600b6925169a7d99376d52472e5f8e8635082b
2023-08-21 12:27:41 +02:00
Marek Siarkowicz
df9896fd00
Test consistent List
...
Kubernetes-commit: b36fdd68b72cd5c64ea5be3917846067644da983
2023-07-03 17:22:22 +02:00
scott
d681755704
ftr(etcd): add benchmarks
...
Kubernetes-commit: db92cc1388021495e47dbe257a9e6559031cfe51
2023-03-29 21:52:38 +08:00
Wojciech Tyczyński
299c158ba3
Reuse generic List test for watchcache
...
Kubernetes-commit: ef8c4fbca8e5bed1e7edc162b95c412a7f1a758e
2022-11-04 22:01:37 +01:00
Tim Allclair
3268b0561b
Validate etcd paths
...
Kubernetes-commit: f1693a02c46f79f8c90a4ef17c4a750034f21484
2022-10-10 18:15:22 -07:00
Wojciech Tyczyński
c38aa93533
Reuse generic TestGet in cache tests.
...
Kubernetes-commit: 75a1ef87b32213a7d3d1c2027dd515e4f74c1777
2022-10-27 16:00:30 +02:00
Wojciech Tyczyński
499bbb88dc
Refactor WatchError test to make it generic
...
Kubernetes-commit: b3f9272d57a71a9c50b38754b7309ddf68adb93f
2022-10-28 11:35:58 +02:00
Wojciech Tyczyński
3f5a3e0ae0
Refactor etcd3 list consistency test
...
Kubernetes-commit: cd5da36c92f3ed52debc22c39a7cd9d369b0eecd
2022-10-27 10:19:09 +02:00
Wojciech Tyczyński
c527f6432a
Minor cleanup of etcd3 tests
...
Kubernetes-commit: bbe1ebc82aa019118c91e8447517f91b9d036c1e
2022-10-27 09:48:06 +02:00
Wojciech Tyczyński
f6802e074e
Refactor storage tests using compaction
...
Kubernetes-commit: b02f172cbdf7e824d13a6a9c3a9b9fe4f3f92afb
2022-10-26 20:47:19 +02:00
Wojciech Tyczyński
834cf0fc14
Refactor compaction in etcd3 tests
...
Kubernetes-commit: 7da7ddd779f9ea835f0c57deae05e050c543066b
2022-10-26 16:34:28 +02:00
Wojciech Tyczyński
3afe8ebf5f
Minor cleanup of etcd3 tests
...
Kubernetes-commit: e04fe81dfcff189ef5162b9b26b55760f613a010
2022-10-26 13:05:49 +02:00
Wojciech Tyczyński
73a664638b
Refactor pagination tests
...
Kubernetes-commit: 6c8ce894e18a2e2cae20edd2f6e79db9407ebce3
2022-10-26 12:18:21 +02:00
Wojciech Tyczyński
dec6f492e8
Refactor GetReads
...
Kubernetes-commit: 8472e1bc13b0fa8aa3a67e5fcf2f13bfd7974cd3
2022-10-26 11:30:32 +02:00
Wojciech Tyczyński
5a8fdf8480
Move GuaranteedUpdateChecksData test to generic package
...
Kubernetes-commit: afc5ded83931cdb8a2643486d6834eb8d9b04588
2022-10-25 14:31:20 +02:00
Wojciech Tyczyński
d9a3685d6f
Minor cleanup of storage tests
...
Kubernetes-commit: 5344bc5e1b7e50d5ff359c714d522b421b28bd12
2022-10-25 14:09:36 +02:00
Wojciech Tyczyński
1960fa837f
Move GuaranteedUpdate test to generic test package
...
Kubernetes-commit: 012676acc3dd2b235bd601e4105294d2715f155b
2022-10-25 14:04:00 +02:00
Abirdcfly
6be1a93b55
fix: --chunk-size with selector returns missing result
...
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
Kubernetes-commit: fba297629d82866078faa6dc076cb5f81633e557
2022-06-20 00:54:57 +08:00
Steve Kuznetsov
03363cd42b
storage: move some list tests to generic package
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 162450c01c9004ded53bb77f651f9a3f30920b30
2022-05-12 15:16:07 -07:00
Steve Kuznetsov
289ed89252
storage/etcd3: make some list tests generic
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: a8067f8e865475cbdb11d812c915927714690676
2022-05-12 15:13:23 -07:00
Steve Kuznetsov
ae4cc8bfc8
storage/etcd3: factor out non-paginated list tests
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 8fcf00ef9171cfb623525d2a6aea1d721c3b5e74
2022-05-11 07:18:05 -07:00
Steve Kuznetsov
139068ca91
storage/etcd3: factor store setup into a separate function
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 31d7a28c65c34f2e2a28cfc41c2c517d370e7045
2022-05-11 07:17:26 -07:00
Steve Kuznetsov
67344c728d
storage: move continue token definition to storage
...
The means by which we encode and decode the continue token during a
paginated LIST call is not specific to etcd3. In order to allow for a
generic suite of tests against any storage.Interface implementation, we
need this logic to live outside of the etcd3 package, or import cycles
will exist.
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: eb3aa5be10393968d8083c79f5958501fc029e8d
2022-05-11 07:52:02 -07:00
Steve Kuznetsov
80256820ce
storage: move the APIObjectVersioner definition to storage
...
The means by which we extract and parse the version of an API object is
not specific to etcd3. In order to allow for a generic suite of tests
against any storage.Interface imlpementation, we need this logic to live
outside of the etcd3 package, or import cycles will exist.
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 3939f3003e9605c06f65e64d1fc6f94b294f9d97
2022-05-11 07:44:21 -07:00
Steve Kuznetsov
3fd88b5da7
storage/testing: move creation test to generic package
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 2e118f42465efb390bec005f1853a964dd339f97
2022-05-09 08:04:53 -07:00
Steve Kuznetsov
daf507c2ff
etcd3/store: make creation test validation generic
...
Different callers to this test may need to do different backend-specific
validation on the stored data, so we allow them a callback for this.
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 6d25e96cedaad249fe75aac4b1fe08bb69829a61
2022-05-09 08:03:41 -07:00
Steve Kuznetsov
f54afb0566
etcd3/store: update creation test to use storage client
...
There is no functional difference between checking for an empty key
using the database client and doing so with the storage interface. Using
the latter allows this test to be more portable.
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: f894f8196d9266915424e2cefc9e4eb480ae6f5e
2022-05-09 07:59:38 -07:00
Steve Kuznetsov
b393e91916
storage/testing: wire things back together with imports
...
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 4ff560e4fa3c716a11f7260f33ec318faad59394
2022-05-05 11:32:05 -07:00
Steve Kuznetsov
ebf7c468b8
storage/etcd3: move reusable tests to importable files
...
These can't live in `_test.go` files, or others won't be able to re-use
them as you can't import from test files.
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
Kubernetes-commit: 0bfeb728786726cd28b4c64d48874d45a2724165
2022-05-05 09:27:16 -07:00