Skip to content

L1 budget is not configurable + three dead/unenforced config knobs #163

@27Bslash6

Description

@27Bslash6

Summary

Four config settings are defined (and some validated) but never actually consumed:

  1. l1_max_size_mb / L1CacheConfig.max_size_mb — never passed to L1Cache; the manager hardcodes 100 MB. Configuring it is silently ignored, and it gates the oversized-entry rejection — directly relevant to large-object handling.
  2. enable_compression / compression_level (zlib 1-9) — referenced only in no-op validators + docstrings; no serializer/backend consumes them.
  3. max_value_size (100 MB) and max_chunk_size_mb — no consumer; there is no L2 oversized-entry rejection anywhere.

Evidence

  • config/nested.py:50 + settings.py:191 vs decorators/wrapper.py:482 (no size arg) + l1_cache.py:519,544,623 (hardcoded default_max_memory_mb=100)
  • settings.py:109-118,258-266 (zlib, no-op validators)
  • settings.py:104,180 (max_value_size/max_chunk_size_mb, no consumer)

Impact

Users cannot tune the L1 budget; two compression knobs are lies; there is no L2 size ceiling (a multi-GB value is sent to the backend unchecked).

Fix

Wire l1_max_size_mb through to L1Cache; delete the zlib knobs; either enforce or remove max_value_size/max_chunk_size_mb.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpythonPython library

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions