Skip to content

core/plugins/quota: warn that a block-scoped limit shadows userdb overrides - #1606

Open
rokokol wants to merge 1 commit into
dovecot:mainfrom
rokokol:quota-userdb-shadowing
Open

core/plugins/quota: warn that a block-scoped limit shadows userdb overrides#1606
rokokol wants to merge 1 commit into
dovecot:mainfrom
rokokol:quota-userdb-shadowing

Conversation

@rokokol

@rokokol rokokol commented Aug 27, 2026

Copy link
Copy Markdown

The Per-User Quota examples override quota_storage_size from userdb, and the page's main example deliberately keeps that setting outside the quota { .. } block ("Keep this setting outside the quota { .. } to allow easily overriding it in userdb lookups"). What the page never states is what happens when the limit is declared inside the block: the block-scoped value shadows the flat userdb override, which is then silently ignored — while doveadm user, which this section recommends for verification, still echoes the field back as if it had taken effect.

Measured on stock 2.4.4 with a passwd-file userdb, both directions: userdb_quota_storage_size=100M overrides a top-level quota_storage_size = 1G and is ignored when the limit is declared inside a named block; userdb_quota/<name>/storage_size addresses the block-scoped limit.

This trips users migrating from 2.3, where the limit commonly lived inside plugin { quota_rule = ... } — see e.g. Quota plugin: "quota_storage_size" not recognized from userdb extra fields in dovecot 2.4.1 on the mailing list.

This adds a warning box to the Per-User Quota section naming the failure mode and the path form that addresses a block-scoped limit.

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