Skip to content

docs(caching): the pingora cache engine is Enterprise-only in v2.3.0 too - #2204

Merged
lukekim merged 1 commit into
trunkfrom
fix/v23x-pingora-enterprise
Sep 12, 2026
Merged

lukekim merged 1 commit into
trunkfrom
fix/v23x-pingora-enterprise

Conversation

@claudespice

Copy link
Copy Markdown
Contributor

Summary

The version-2.3.x snapshot was published on 2026-09-10 at 11:24 UTC; #2188 merged at 15:07 the same day and edited website/docs/ only. So the newest release's caching page still presents engine: pingora as an ordinary open source backend, and describes its sharded-LRU behaviour as what a reader who sets it will get.

On a published open source spiced they will not get it. pingora is absent from bin/spiced's default feature list, the CacheEngine enum is not feature-gated (so the value parses and nothing fails), and the dispatch arm warns and builds a Moka backend instead. This is the edition-gating shape the hygiene reference calls out: a config enum declared in spicepod but implemented behind a cargo feature.

This applies #2188's text to the 2.3.x snapshot; the page is now byte-identical to trunk's vNext copy.

Scope: only version-2.3.x. features/caching/index.md in 2.0.x, 2.1.x and 2.2.x does not mention engine/pingora at all.

Source PRs

Test plan

  • Docusaurus build gate — cd website && npm run build:
[SUCCESS] [docusaurus-plugin-llms-txt] Plugin completed successfully - processed 488 documents
[SUCCESS] Generated static files in "build".
  • Versioned-docs propagation — diff -u website/versioned_docs/version-2.3.x/features/caching/index.md website/docs/features/caching/index.md now prints nothing: the snapshot matches vNext exactly.
  • Cross-page sweep — grep -rln 'pingora' website/docs website/versioned_docs returns only the two caching pages plus the acknowledgements/index.md dependency lists; no other page carries the claim.
  • Files updated: 1 — versioned_docs/version-2.3.x/features/caching/index.md, matching the diff.

Reproduction

Doc said (website/versioned_docs/version-2.3.x/features/caching/index.md:54 at docs c0f47f88):

engine … Cache backend: moka or pingora.

Code says — pingora is not in the default feature set at v2.3.0:

$ git show v2.3.0:bin/spiced/Cargo.toml | sed -n '/^default = \[/,/^\]/p' | grep -c pingora
0

and the non-pingora build arm falls back (crates/cache/src/lru_cache.rs at v2.3.0):

#[cfg(not(feature = "pingora"))]
{
    tracing::warn!(
        "{PINGORA_ENTERPRISE_ONLY_MESSAGE} Falling back to the Moka cache engine."
    );
    let cache = build_moka_cache(cache_max_size, ttl, hasher.clone(), caching_policy);
    CacheBackendEnum::MokaFallback(MokaBackend::from_cache(cache))
}

Every string the page quotes is grepped from v2.3.0 source, not paraphrased:

$ git grep -n 'PINGORA_ENTERPRISE_ONLY_MESSAGE\|TinyLFU caching policy' v2.3.0 -- crates/cache/src/lru_cache.rs
v2.3.0:crates/cache/src/lru_cache.rs:53:pub const PINGORA_ENTERPRISE_ONLY_MESSAGE: &str = "The Pingora cache engine is included in the Enterprise distribution of Spice.ai. Learn more at https://docs.spice.ai/docs/enterprise";
v2.3.0:crates/cache/src/lru_cache.rs:364:  "Pingora cache engine does not support TinyLFU caching policy. Falling back to LRU."

The startup line the page tells readers to check is the Display impl at lru_cache.rs:208 ("max size: {:.2}, item ttl: {:?}, engine: {}") interpolated into tracing::info!("Initialized sql results cache; {cache_provider}") at crates/runtime/src/init/caching.rs:54, and CacheBackendEnum::MokaFallback(_) => CacheEngine::Moka at lru_cache.rs:177 is why it reads Moka rather than the configured value.

Behavior claim: not run — reproducing the fallback warning needs a spiced built at the v2.3.0 tag with the default feature set. The correction rests on the feature-list grep and the #[cfg(not(feature = "pingora"))] arm quoted above, so it is labeled Unverified, code inspection only for the runtime behaviour and Reproduced for the edition-gating claim itself.

The version-2.3.x snapshot was cut hours before #2188, so the newest
release's caching page still presents `engine: pingora` as an ordinary
open source backend. On a stock spiced the value parses, the runtime
warns and runs Moka instead.
@claudespice
claudespice requested a review from a team as a code owner September 12, 2026 08:21
@claudespice claudespice self-assigned this Sep 12, 2026
@github-actions

github-actions Bot commented Sep 12, 2026 •

Copy link
Copy Markdown
Contributor

✅ Pull with Spice Passed

Passing checks:

  • ✅ Title meets minimum length requirement (10 characters)
  • ✅ Has at least one of the required labels: area/blog, area/docs, area/cookbook, dependencies
  • ✅ No banned labels detected
  • ✅ Has at least one assignee: claudespice

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Pull with Spice Failed

Passing checks:

  • ✅ Title meets minimum length requirement (10 characters)
  • ✅ Has at least one of the required labels: area/blog, area/docs, area/cookbook, dependencies
  • ✅ No banned labels detected

Failed checks:

  • ❌ At least one assignee is required for this pull request.

Please address these issues and update your pull request.

@github-actions

Copy link
Copy Markdown
Contributor

✅ Pull with Spice Passed

Passing checks:

  • ✅ Title meets minimum length requirement (10 characters)
  • ✅ Has at least one of the required labels: area/blog, area/docs, area/cookbook, dependencies
  • ✅ No banned labels detected
  • ✅ Has at least one assignee: claudespice

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Pull with Spice Failed

Passing checks:

  • ✅ Title meets minimum length requirement (10 characters)
  • ✅ Has at least one of the required labels: area/blog, area/docs, area/cookbook, dependencies
  • ✅ No banned labels detected

Failed checks:

  • ❌ At least one assignee is required for this pull request.

Please address these issues and update your pull request.

@github-actions

Copy link
Copy Markdown
Contributor

🚀 deployed to https://8510bfba.spiceai-org-website.pages.dev

@lukekim
lukekim merged commit dfd42e1 into trunk Sep 12, 2026
8 of 11 checks passed
@lukekim
lukekim deleted the fix/v23x-pingora-enterprise branch September 12, 2026 17:25

This branch was successfully deployed

1 active deployment
preview — af1b1421 Deployed Sep 12, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants