From 878b5c8d3975561c70090515d24485edbf504fa9 Mon Sep 17 00:00:00 2001 From: junczhu Date: Mon, 17 Jun 2024 09:03:56 +0000 Subject: [PATCH 1/7] docs: init design doc for OCI Store Cache Worker --- docs/design/OCI Store Cache Worker.md | 97 +++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 docs/design/OCI Store Cache Worker.md diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md new file mode 100644 index 000000000..c6745fa00 --- /dev/null +++ b/docs/design/OCI Store Cache Worker.md @@ -0,0 +1,97 @@ +# OCI Store Index Race Condition + +## Purpose +Resolve OCI Store race condition in multi-verifier scenarios + +## Table of Content +- Data Flow +- Component Description +- User Scenarios +- Performance +- Supported Limits +- Appendices + +### Data Flow +```mermaid +%% Initialize diagram configuration +%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#ffcc00', 'edgeLabelBackground':'#f8f8f8', 'tertiaryColor': '#fff'}}}%% +flowchart TD + %% Define styles + classDef subProcess fill:#ffcc00,stroke:#333,stroke-width:2px; + + %% Define components + subgraph VerifierSubsystem [Verifier Subsystem] + GetSubjectDescriptor[Get Subject Descriptor] + GetSubjectReferenceManifest[Get Subject Reference Manifest] + GetReferrerArtifact[Get Blob Content] + PerformVerification[Perform Verification] + ReturnVerifierResult[Return Verifier Result] + MemoryBasedStore[Memory Based Store] + OCIStoreCache[OCI Store Cache] + OCIStoreCacheWorker[Cache Worker] + CacheProvider[Cache Provider] + ORASFetch1[ORAS Fetch] + ORASFetch2[ORAS Fetch] + + end + + %% Define relationships + GetSubjectDescriptor -->|Store operation| GetSubjectReferenceManifest + GetSubjectReferenceManifest -->|Store operation| Cache_Hit_1 + Cache_Hit_1{Cache Hit?} + Cache_Hit_1 -->|Hit| GetReferrerArtifact + Cache_Hit_1 -->|Miss| ORASFetch1 + ORASFetch1 -->|Fetch| MemoryBasedStore + GetReferrerArtifact --> Cache_Hit_2 + Cache_Hit_2{Cache Hit?} + Cache_Hit_2 -->|Hit| PerformVerification + Cache_Hit_2 -->|Miss| ORASFetch2 + ORASFetch2 -->|Fetch| MemoryBasedStore + PerformVerification --> ReturnVerifierResult + OCIStoreCache --> CacheProvider + CacheProvider --> OCIStoreCache + + %% Highlight subprocesses + GetReferrerArtifact:::subProcess + ORASFetch1:::subProcess + ORASFetch2:::subProcess + PerformVerification:::subProcess + + %% Add connections to the cache + Cache_Hit_1 -.-> OCIStoreCacheWorker + MemoryBasedStore -.-> GetReferrerArtifact + Cache_Hit_2 -.-> OCIStoreCacheWorker + MemoryBasedStore -.-> PerformVerification + MemoryBasedStore -.-> OCIStoreCacheWorker + OCIStoreCacheWorker -.-> CacheProvider + + + %% Define external components + classDef external fill:#f0f0f0,stroke:#333,stroke-width:2px; + OCIStoreCacheWorker:::external + MemoryBasedStore:::external + OCIStoreCache:::external + CacheProvider:::external +``` + +### Component Description +- Cache Provider: Set up to cache data for `GetSubjectDescriptor`, `GetReferenceManifest`. + +- OCI Store(local cache): A content store based on file system with the OCI-Image layout. + - Both executor and plugin initiation would `CreateStoresFromConfig`, add cache check can help avoid duplication. + +- Cache Worker: + - Manage memory backed content store + - Enqueue task in cache provider to write into OCI Store + - Check read lock in cache provider to avoid dirty read + +### User Scenarios +1. Using different version of same verifier + +2. Multi-tenancy + +### Performance + +### Supported Limits + +### Appendices From 0f3f4072ea720e90b808437daae3bd3589c7114b Mon Sep 17 00:00:00 2001 From: junczhu Date: Mon, 24 Jun 2024 13:16:45 +0000 Subject: [PATCH 2/7] docs: update design of Cache Worker --- docs/design/OCI Store Cache Worker.md | 132 ++++++++++++++++++++++---- 1 file changed, 113 insertions(+), 19 deletions(-) diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index c6745fa00..18cbfc475 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -1,17 +1,94 @@ -# OCI Store Index Race Condition +# OCI Store Index Race Condition and Cache Worker + +## Problem Statement + +Tracked issues in scope: + + +ORAS referrer store can fail to initialize for external verifiers with error: + +```log +Original Error:(Original Error: (create store from input config failed with error Original Error: (invalid OCI Image Index: failed to decode index file: EOF), Error: plugin init failure, Code: PLUGIN_INIT_FAILURE, Component Type: referrerStore, Detail: could not create local ORAS cache at path: /home/runner/.ratify/local_oras_cache)) +``` + +This occurs when multiple external verifiers are executed for the same subject in parallel. +Intermittent issue affecting e2e tests + +```json +{ + "verifierReports": [ + { + "subject": "localhost:5000/all:v0", + "isSuccess": true, + "name": "notation", + "message": "signature verification success", + "extensions": { + "Issuer": "CN=ratify-bats-test,O=Notary,L=Seattle,ST=WA,C=US", + "SN": "CN=ratify-bats-test,O=Notary,L=Seattle,ST=WA,C=US" + }, + "artifactType": "application/vnd.cncf.notary.signature" + }, + { + "isSuccess": false, + "name": "cosign", + "message": "Original Error: (Original Error: (create store from input config failed with error Original Error: (invalid OCI Image Index: failed to decode index file: EOF), Error: plugin init failure, Code: PLUGIN_INIT_FAILURE, Component Type: referrerStore, Detail: could not create local oras cache at path: /home/runner/.ratify/local_oras_cache), Error: verify signature failure, Code: VERIFY_SIGNATURE_FAILURE, Plugin Name: cosign, Component Type: verifier), Error: verify reference failure, Code: VERIFY_REFERENCE_FAILURE, Plugin Name: cosign, Component Type: verifier", + "artifactType": "application/vnd.dev.cosign.artifact.sig.v1+json" + }, + { + "subject": "localhost:5000/all:v0", + "isSuccess": true, + "name": "licensechecker", + "message": "License Check: SUCCESS. All packages have allowed licenses", + "artifactType": "application/vnd.ratify.spdx.v0" + }, + { + "subject": "localhost:5000/all:v0", + "isSuccess": true, + "name": "schemavalidator", + "message": "schema validation passed for configured media types", + "artifactType": "vnd.aquasecurity.trivy.report.sarif.v1" + }, + { + "isSuccess": false, + "name": "sbom", + "message": "Original Error: (Original Error: (create store from input config failed with error Original Error: (invalid OCI Image Index: failed to decode index file: EOF), Error: plugin init failure, Code: PLUGIN_INIT_FAILURE, Component Type: referrerStore, Detail: could not create local oras cache at path: /home/runner/.ratify/local_oras_cache), Error: verify signature failure, Code: VERIFY_SIGNATURE_FAILURE, Plugin Name: sbom, Component Type: verifier), Error: verify reference failure, Code: VERIFY_REFERENCE_FAILURE, Plugin Name: sbom, Component Type: verifier", + "nestedResults": [ + { + "subject": "localhost:5000/all@sha256:b71c1f874fbc92173278bcb7bb44c785b167f7efa3c44b52eb48e20d540741b5", + "isSuccess": true, + "name": "notation", + "message": "signature verification success", + "extensions": { + "Issuer": "CN=ratify-bats-test,O=Notary,L=Seattle,ST=WA,C=US", + "SN": "CN=ratify-bats-test,O=Notary,L=Seattle,ST=WA,C=US" + }, + "artifactType": "application/vnd.cncf.notary.signature" + } + ], + "artifactType": "org.example.sbom.v0" + } + ] +} +``` + +## User Scenarios + +### Using multi-verifier + +1. Multiple different verifiers are executed for the same subject +2. Multiple same verifiers with different version executed for the same subject + +### Multi-tenancy + +1. reusing OCI artifacts ## Purpose -Resolve OCI Store race condition in multi-verifier scenarios -## Table of Content -- Data Flow -- Component Description -- User Scenarios -- Performance -- Supported Limits -- Appendices +- Resolve OCI Store race condition in multi-verifier scenarios +- Ensure deduplication of OCI artifacts hold in local environment + +## Data Flow -### Data Flow ```mermaid %% Initialize diagram configuration %%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#ffcc00', 'edgeLabelBackground':'#f8f8f8', 'tertiaryColor': '#fff'}}}%% @@ -74,24 +151,41 @@ flowchart TD CacheProvider:::external ``` -### Component Description +## Component Description + +- Referrer Store Architecture + - Cache Provider: Set up to cache data for `GetSubjectDescriptor`, `GetReferenceManifest`. - OCI Store(local cache): A content store based on file system with the OCI-Image layout. - Both executor and plugin initiation would `CreateStoresFromConfig`, add cache check can help avoid duplication. + - task handler is event driven controlled by cache worker: new enqueue item created, last task finished + - a write lock is set in Cache Provider to avoid conflict + - a read lock/availability map is set for the writing content to avoid dirty read -- Cache Worker: +- Cache Worker: - Manage memory backed content store - Enqueue task in cache provider to write into OCI Store - - Check read lock in cache provider to avoid dirty read + - Check read lock/availability map in cache provider to avoid dirty read + +## Comparing with Other Design + +### Single OCIStore VS multi-OCIStores(per verifier) + +1. Syncing in between those OCI stores will cause design difficulty. +2. If if OCI stores are verifer-binded, when the verifier is recycled the OCI stores is gone. Otherwise another resource maintainer(provider) is needed. +3. Maintaining multi-OCIStores means extra memory cost + +### Async VS Sync -### User Scenarios -1. Using different version of same verifier +1. Sync write to OCIStore leads to racing condition. Using lock would naturally heads to more waiting in line. +2. When doing sync write, both read write racing condition have be handled in verifier process which increase the complexity. When doing async write, those jobs are delegated to **Cache Provider**. -2. Multi-tenancy +## Supported Limits and Further Considerations -### Performance +In Ristretto using scenario, do we support multi-notation verifier, in other words do we have to support cache worker with Ristretto -### Supported Limits +## Appendices -### Appendices +- [Multi-tenancy](https://ratify.dev/docs/reference/multi-tenancy) +- [Image Integrity](https://learn.microsoft.com/en-us/azure/aks/image-integrity?tabs=azure-cli#how-image-integrity-works) \ No newline at end of file From 3044b41794cb7a0fc840982c99852d6b655c5219 Mon Sep 17 00:00:00 2001 From: junczhu Date: Mon, 24 Jun 2024 16:36:50 +0000 Subject: [PATCH 3/7] docs: update design of Cache Worker 2 --- docs/design/OCI Store Cache Worker.md | 38 +++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index 18cbfc475..837ce18bf 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -168,6 +168,42 @@ flowchart TD - Enqueue task in cache provider to write into OCI Store - Check read lock/availability map in cache provider to avoid dirty read +```golang + +type CacheWorker interface { + + // CreateMemoryOCIStore creates memory based OCI Store + CreateMemoryOCIStore () error + + // GetAvailableOCIStore returns current OCI layout based OCI Store if exists + GetAvailableOCIStore() (*orasStore, error) + + // GetBlobContent returns the blob with the given digest + // WARNING: This API is intended to use for small objects like signatures, SBoMs + GetBlobContent(ctx context.Context, subjectReference common.Reference, digest digest.Digest) ([]byte, error) + + // GetReferenceManifest returns the reference artifact manifest as given by the descriptor + GetReferenceManifest(ctx context.Context, subjectReference common.Reference, referenceDesc ocispecs.ReferenceDescriptor) (ocispecs.ReferenceManifest, error) + + // GetCachedResource checks read lock from cache provider and returns data cached in OCI layout based OCIStore + GetCachedResource() error + + // EnqueueCacheTask adds caching task into message queue in Cache Provider + EnqueueCacheTask() error + + // DequeueCacheTask handle the up-coming caching task + // checks write lock, availability map of resource + DequeueCacheTask() error + + // CacheBlobContent cached target blob content into OCI layout based OCI Store + CacheBlobContent(ctx context.Context, subjectReference common.Reference, digest digest.Digest) error + + // CacheReferenceManifest cached target manifest into OCI layout based OCI Store + CacheReferenceManifest(ctx context.Context, subjectReference common.Reference, referenceDesc ocispecs.ReferenceDescriptor) error +} + +``` + ## Comparing with Other Design ### Single OCIStore VS multi-OCIStores(per verifier) @@ -185,6 +221,8 @@ flowchart TD In Ristretto using scenario, do we support multi-notation verifier, in other words do we have to support cache worker with Ristretto +Message queue handling is event driven: when ever enqueue, dequeue finished cache worker should start trying dequeuing a new task + ## Appendices - [Multi-tenancy](https://ratify.dev/docs/reference/multi-tenancy) From 0d4b7600c21111bac4fdf16d687790e78ef3fa97 Mon Sep 17 00:00:00 2001 From: junczhu Date: Thu, 27 Jun 2024 00:00:34 +0000 Subject: [PATCH 4/7] chore: add more context --- docs/design/OCI Store Cache Worker.md | 115 ++++++++------------------ docs/img/verifier-store-new.png | Bin 0 -> 176273 bytes docs/img/verifier-store-prev.png | Bin 0 -> 33541 bytes 3 files changed, 33 insertions(+), 82 deletions(-) create mode 100644 docs/img/verifier-store-new.png create mode 100644 docs/img/verifier-store-prev.png diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index 837ce18bf..5afc90f48 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -71,91 +71,30 @@ Intermittent issue affecting e2e tests } ``` -## User Scenarios +## Proposed Solution -### Using multi-verifier +- Remove ORAS `Push` operation, whose target is OCI store, from verifier. Resolve OCI Store race condition in multi-verifier scenarios. +- Using shared memory to implement a queue for ORAS `Push`. Manage ORAS concurrency tasks. -1. Multiple different verifiers are executed for the same subject -2. Multiple same verifiers with different version executed for the same subject +## User Scenarios -### Multi-tenancy +### Using verifier of different types and different versions of same verifier -1. reusing OCI artifacts +When multiple verifiers are executed for the same artifiact can cause the racing condition issue. +With the proposed solution, ORAS `Push` mentioned is only handled by cache worker. -## Purpose +### Reusing OCI artifacts -- Resolve OCI Store race condition in multi-verifier scenarios -- Ensure deduplication of OCI artifacts hold in local environment +The cache is very important when using the verifier to verify the same subject. ## Data Flow -```mermaid -%% Initialize diagram configuration -%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#ffcc00', 'edgeLabelBackground':'#f8f8f8', 'tertiaryColor': '#fff'}}}%% -flowchart TD - %% Define styles - classDef subProcess fill:#ffcc00,stroke:#333,stroke-width:2px; - - %% Define components - subgraph VerifierSubsystem [Verifier Subsystem] - GetSubjectDescriptor[Get Subject Descriptor] - GetSubjectReferenceManifest[Get Subject Reference Manifest] - GetReferrerArtifact[Get Blob Content] - PerformVerification[Perform Verification] - ReturnVerifierResult[Return Verifier Result] - MemoryBasedStore[Memory Based Store] - OCIStoreCache[OCI Store Cache] - OCIStoreCacheWorker[Cache Worker] - CacheProvider[Cache Provider] - ORASFetch1[ORAS Fetch] - ORASFetch2[ORAS Fetch] - - end - - %% Define relationships - GetSubjectDescriptor -->|Store operation| GetSubjectReferenceManifest - GetSubjectReferenceManifest -->|Store operation| Cache_Hit_1 - Cache_Hit_1{Cache Hit?} - Cache_Hit_1 -->|Hit| GetReferrerArtifact - Cache_Hit_1 -->|Miss| ORASFetch1 - ORASFetch1 -->|Fetch| MemoryBasedStore - GetReferrerArtifact --> Cache_Hit_2 - Cache_Hit_2{Cache Hit?} - Cache_Hit_2 -->|Hit| PerformVerification - Cache_Hit_2 -->|Miss| ORASFetch2 - ORASFetch2 -->|Fetch| MemoryBasedStore - PerformVerification --> ReturnVerifierResult - OCIStoreCache --> CacheProvider - CacheProvider --> OCIStoreCache - - %% Highlight subprocesses - GetReferrerArtifact:::subProcess - ORASFetch1:::subProcess - ORASFetch2:::subProcess - PerformVerification:::subProcess - - %% Add connections to the cache - Cache_Hit_1 -.-> OCIStoreCacheWorker - MemoryBasedStore -.-> GetReferrerArtifact - Cache_Hit_2 -.-> OCIStoreCacheWorker - MemoryBasedStore -.-> PerformVerification - MemoryBasedStore -.-> OCIStoreCacheWorker - OCIStoreCacheWorker -.-> CacheProvider - - - %% Define external components - classDef external fill:#f0f0f0,stroke:#333,stroke-width:2px; - OCIStoreCacheWorker:::external - MemoryBasedStore:::external - OCIStoreCache:::external - CacheProvider:::external -``` +![Current Data Flow](../img/verifier-store-prev.png) +![New Design Data Flow](../img/verifier-store-new.png) ## Component Description -- Referrer Store Architecture - -- Cache Provider: Set up to cache data for `GetSubjectDescriptor`, `GetReferenceManifest`. +- Cache Provider: Set up to cache data for `GetSubjectDescriptor`, `ListReferrers`. - OCI Store(local cache): A content store based on file system with the OCI-Image layout. - Both executor and plugin initiation would `CreateStoresFromConfig`, add cache check can help avoid duplication. @@ -163,7 +102,7 @@ flowchart TD - a write lock is set in Cache Provider to avoid conflict - a read lock/availability map is set for the writing content to avoid dirty read -- Cache Worker: +- Cache (Store) Worker: A Store related operations handler. - Manage memory backed content store - Enqueue task in cache provider to write into OCI Store - Check read lock/availability map in cache provider to avoid dirty read @@ -173,7 +112,7 @@ flowchart TD type CacheWorker interface { // CreateMemoryOCIStore creates memory based OCI Store - CreateMemoryOCIStore () error + CreateMemoryOCIStore() error // GetAvailableOCIStore returns current OCI layout based OCI Store if exists GetAvailableOCIStore() (*orasStore, error) @@ -204,19 +143,31 @@ type CacheWorker interface { ``` -## Comparing with Other Design +## Alternative Considers and Comparisons -### Single OCIStore VS multi-OCIStores(per verifier) - -1. Syncing in between those OCI stores will cause design difficulty. -2. If if OCI stores are verifer-binded, when the verifier is recycled the OCI stores is gone. Otherwise another resource maintainer(provider) is needed. -3. Maintaining multi-OCIStores means extra memory cost +### Async Caching VS Sync Caching -### Async VS Sync +Async Caching(with queue) +1. Queue is helpful in efficient task handling, scalability, and fault tolerance which are critical requirements. +Sync Caching 1. Sync write to OCIStore leads to racing condition. Using lock would naturally heads to more waiting in line. 2. When doing sync write, both read write racing condition have be handled in verifier process which increase the complexity. When doing async write, those jobs are delegated to **Cache Provider**. + + +### One Store for All verifiers VS One Store per Verifier + +One Store for All verifiers +1. Systems should be kept as simple as possible. Complexity should only be added where absolutely necessary. +2. Easy for monitoring and gain insights into its behavior and performance +3. Systems can scale out horizontally to handle increased load with no breaking change. + +One Store per Verifier +1. Syncing in between those OCI stores will cause design difficulty. +2. If if OCI stores are verifer-binded, when the verifier is recycled the OCI stores is gone. Otherwise another resource maintainer(provider) is needed. +3. Maintaining multi-OCIStores means extra memory cost + ## Supported Limits and Further Considerations In Ristretto using scenario, do we support multi-notation verifier, in other words do we have to support cache worker with Ristretto diff --git a/docs/img/verifier-store-new.png b/docs/img/verifier-store-new.png new file mode 100644 index 0000000000000000000000000000000000000000..064a97a7bd8d630de833ad33e06782583beb6ece GIT binary patch literal 176273 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 Utx8_^7WjK2ry^S{ZT9y60R;dIxBvhE literal 0 HcmV?d00001 From f9e66d7432af48a7b09518b2635915b27a0f15ff Mon Sep 17 00:00:00 2001 From: junczhu Date: Thu, 27 Jun 2024 00:44:10 +0000 Subject: [PATCH 5/7] chore: update img links --- docs/design/OCI Store Cache Worker.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index 5afc90f48..636c14b8b 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -89,8 +89,8 @@ The cache is very important when using the verifier to verify the same subject. ## Data Flow -![Current Data Flow](../img/verifier-store-prev.png) -![New Design Data Flow](../img/verifier-store-new.png) +![Current Data Flow](https://github.com/ratify-project/ratify/blob/OCIStoreDecorate/docs/img/verifier-store-prev.png) +![New Design Data Flow](https://github.com/ratify-project/ratify/blob/OCIStoreDecorate/docs/img/verifier-store-new.png) ## Component Description From 77b40da851f6c43eb6487d37fad3321a052ceac1 Mon Sep 17 00:00:00 2001 From: junczhu Date: Thu, 27 Jun 2024 01:10:14 +0000 Subject: [PATCH 6/7] chore: update img links 2 --- docs/design/OCI Store Cache Worker.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index 636c14b8b..5afc90f48 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -89,8 +89,8 @@ The cache is very important when using the verifier to verify the same subject. ## Data Flow -![Current Data Flow](https://github.com/ratify-project/ratify/blob/OCIStoreDecorate/docs/img/verifier-store-prev.png) -![New Design Data Flow](https://github.com/ratify-project/ratify/blob/OCIStoreDecorate/docs/img/verifier-store-new.png) +![Current Data Flow](../img/verifier-store-prev.png) +![New Design Data Flow](../img/verifier-store-new.png) ## Component Description From ca45786f9f2f35b8adab11061bf2ba49324b12e0 Mon Sep 17 00:00:00 2001 From: junczhu Date: Tue, 16 Jul 2024 02:45:50 +0000 Subject: [PATCH 7/7] docs: add OCI storage into Alternative Considers and Comparisons --- docs/design/OCI Store Cache Worker.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/design/OCI Store Cache Worker.md b/docs/design/OCI Store Cache Worker.md index 5afc90f48..2fc812b6d 100644 --- a/docs/design/OCI Store Cache Worker.md +++ b/docs/design/OCI Store Cache Worker.md @@ -168,6 +168,11 @@ One Store per Verifier 2. If if OCI stores are verifer-binded, when the verifier is recycled the OCI stores is gone. Otherwise another resource maintainer(provider) is needed. 3. Maintaining multi-OCIStores means extra memory cost +### Using OCI Storage instead of OCI Store + +Based on investigation, all function of OCI Store used by ratify can be implemented by OCI Storage or OCI ReadOnlyStorage. +And for further feature requirements GC would be take into consideration. + ## Supported Limits and Further Considerations In Ristretto using scenario, do we support multi-notation verifier, in other words do we have to support cache worker with Ristretto