[Performance review] Share output-equivalent attachment filename allocation #101

Closed
opened 2026-09-08 10:24:52 +02:00 by zemion · 2 comments
Owner

P5: repeated names restart suffix scanning, causing 2001000 membership probes for 2000 equal requested filenames; ZIP service duplicates it. Share an efficient allocator with exact filename/order/casefold/pre-suffixed-collision equivalence. Never merge attachments or initiate delivery.

Tracking: GovOPlaN/govoplan-core#298

User authorized implementation on 2026-09-08. Work is local until explicitly published; keep this issue open until verification and publication state are recorded. Preserve tenant isolation, current authorization, immutable history, audit evidence, deterministic ordering, retry safety and existing API compatibility. Add focused regressions and owning EN/DE documentation. No live mail/provider side effects or historical data rewrites.

P5: repeated names restart suffix scanning, causing 2001000 membership probes for 2000 equal requested filenames; ZIP service duplicates it. Share an efficient allocator with exact filename/order/casefold/pre-suffixed-collision equivalence. Never merge attachments or initiate delivery. Tracking: https://git.add-ideas.de/GovOPlaN/govoplan-core/issues/298 User authorized implementation on 2026-09-08. Work is local until explicitly published; keep this issue open until verification and publication state are recorded. Preserve tenant isolation, current authorization, immutable history, audit evidence, deterministic ordering, retry safety and existing API compatibility. Add focused regressions and owning EN/DE documentation. No live mail/provider side effects or historical data rewrites.
zemion added the
type
bug
priority
p1
status
in-progress
labels 2026-09-08 10:24:52 +02:00
Author
Owner

Local implementation receipt — 2026-09-08

Shared next-suffix filename allocation now serves message and ZIP building with exact casefold, pre-suffixed collision, count and ordering equivalence.46 tests+20 subtests pass;10000 identical names require 19999 membership probes.2000-name allocation is approximately 0.01 s versus 2.4 s on this host, not a campaign delivery throughput claim. EN/DE docs updated. No attachment merging, SMTP/IMAP activity or delivery was initiated.

Verification: tools/checks/check-focused.sh completed successfully,72/72 manifest architecture checks passed, and changed-source Ruff F plus git diff --check passed across 16 repositories. Tests use isolated databases/mock providers; no live data/provider mutation, commit, push, tag, deployment or release was performed. Changes remain local and unpublished: keep this issue OPEN until publication/rollout state is recorded. Before rollout, back up and test coordinated Mail/Files/Connectors/Datasources migrations on a database copy. PostgreSQL concurrency, real provider races and representative load testing remain operational verification, not a claimed certification.

## Local implementation receipt — 2026-09-08 Shared next-suffix filename allocation now serves message and ZIP building with exact casefold, pre-suffixed collision, count and ordering equivalence.46 tests+20 subtests pass;10000 identical names require 19999 membership probes.2000-name allocation is approximately 0.01 s versus 2.4 s on this host, not a campaign delivery throughput claim. EN/DE docs updated. No attachment merging, SMTP/IMAP activity or delivery was initiated. Verification: tools/checks/check-focused.sh completed successfully,72/72 manifest architecture checks passed, and changed-source Ruff F plus git diff --check passed across 16 repositories. Tests use isolated databases/mock providers; no live data/provider mutation, commit, push, tag, deployment or release was performed. Changes remain local and unpublished: keep this issue OPEN until publication/rollout state is recorded. Before rollout, back up and test coordinated Mail/Files/Connectors/Datasources migrations on a database copy. PostgreSQL concurrency, real provider races and representative load testing remain operational verification, not a claimed certification.
Author
Owner

Source publication and database verification — 2026-09-08

Remote main branches and annotated tags were verified against the exact coordinated commits. The implementation-specific tests and EN/DE documentation recorded above remain the acceptance evidence. Cross-module focused checks, manifest shapes, 63 WebUI build configurations and 230 browser tests passed. This records source publication, not a package-registry release, runtime image, website deployment or production rollout.

Database correction to the previous local-only note: the already-running development server had automatically applied Files a2b3c4d5e701, Mail b5d6e7f8091a, Connectors d2a4c6e8f0b1 and Datasources e2b8d4a0f6c3 during reloads. Their heads and expected schema/indexes were verified in the local development PostgreSQL database. A current-state backup was captured and restored into a private, isolated PostgreSQL 16 cluster; this was not a pre-upgrade backup. The supported no-op migration preserved all 281 tables and 142,287 rows by per-row SHA-256 comparison, and retained the same migration heads. Files source identity recomputation matched all 7,385 rows (2 non-null identities, zero mismatches). Both Datasources PostgreSQL concurrency tests, previously skipped without a dedicated database, passed against that isolated cluster. The test cluster was stopped. No real mail delivery, POP3 retrieval/deletion, legacy mailbox reconciliation or external connector import was initiated.

Representative production load/deadline testing and real-provider race/compatibility verification remain separate operational rollout checks; this is not security certification. Operational follow-up: GovOPlaN/govoplan-core#299.

Closing this implementation issue: its code, regression, documentation and source-publication criteria are satisfied. Operational checks above are not claimed complete.

## Source publication and database verification — 2026-09-08 - govoplan-campaign: [v0.1.29](https://git.add-ideas.de/GovOPlaN/govoplan-campaign/src/tag/v0.1.29) · [19437ce37855](https://git.add-ideas.de/GovOPlaN/govoplan-campaign/commit/19437ce378553f6ab559e3c0cba44150e495ef52) - govoplan-core: [v0.1.46](https://git.add-ideas.de/GovOPlaN/govoplan-core/src/tag/v0.1.46) · [6591aaa3fdaf](https://git.add-ideas.de/GovOPlaN/govoplan-core/commit/6591aaa3fdaf19d1900ccff326c56a0b0969d9fa) Remote main branches and annotated tags were verified against the exact coordinated commits. The implementation-specific tests and EN/DE documentation recorded above remain the acceptance evidence. Cross-module focused checks, manifest shapes, 63 WebUI build configurations and 230 browser tests passed. This records source publication, not a package-registry release, runtime image, website deployment or production rollout. Database correction to the previous local-only note: the already-running development server had automatically applied Files a2b3c4d5e701, Mail b5d6e7f8091a, Connectors d2a4c6e8f0b1 and Datasources e2b8d4a0f6c3 during reloads. Their heads and expected schema/indexes were verified in the local development PostgreSQL database. A current-state backup was captured and restored into a private, isolated PostgreSQL 16 cluster; this was not a pre-upgrade backup. The supported no-op migration preserved all 281 tables and 142,287 rows by per-row SHA-256 comparison, and retained the same migration heads. Files source identity recomputation matched all 7,385 rows (2 non-null identities, zero mismatches). Both Datasources PostgreSQL concurrency tests, previously skipped without a dedicated database, passed against that isolated cluster. The test cluster was stopped. No real mail delivery, POP3 retrieval/deletion, legacy mailbox reconciliation or external connector import was initiated. Representative production load/deadline testing and real-provider race/compatibility verification remain separate operational rollout checks; this is not security certification. Operational follow-up: https://git.add-ideas.de/GovOPlaN/govoplan-core/issues/299. Closing this implementation issue: its code, regression, documentation and source-publication criteria are satisfied. Operational checks above are not claimed complete. <!-- govoplan-integrity-publication-20260908 -->
zemion removed the
status
in-progress
label 2026-09-08 12:57:25 +02:00
Sign in to join this conversation.
No labels
priority
p1
type
bug
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-campaign#101