Skip to content

refactor(imp): retire 'hashtable' IMAP cache driver, fall through to 'cache'#61

Merged
ralflang merged 2 commits into
FRAMEWORK_6_0from
refactor/migrate-to-modern-hashtable-and-sessions
Jun 9, 2026
Merged

refactor(imp): retire 'hashtable' IMAP cache driver, fall through to 'cache'#61
ralflang merged 2 commits into
FRAMEWORK_6_0from
refactor/migrate-to-modern-hashtable-and-sessions

Conversation

@ralflang

@ralflang ralflang commented Jun 9, 2026

Copy link
Copy Markdown
Member

The 'hashtable' driver in IMP_Imap_Cache_Wrapper is retired. Existing configurations that set cache.driver = 'hashtable' for the IMAP cache fall through to the 'cache' branch, which uses Horde_Cache (which can itself be backed by the modern HashTable).

Rationale: see horde/Imap_Client#46 — the per-UID Backend_Hashtable strategy was justified for Memcache 1.0 with poor multi-get; modern Redis handles the sliced strategy of Backend_Cache equally well. One code path with consistent TTL/age handling is preferable to two.

No config change required for existing deployments.

Refs horde/Core#131

@ralflang ralflang merged commit 1527394 into FRAMEWORK_6_0 Jun 9, 2026
0 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant