Template-based Note creation can time out during concurrent load #172

Open
opened 2026-09-26 13:00:59 +00:00 by kayg · 1 comment
Owner

A post-merge adversarial pass found one Note creation request that exceeded the client timeout during concurrent load.

Evidence from 2026-09-26:

  • tests/adversarial/attack.py issued 16 POST /api/v1/notes/from-template requests with 16 workers.
  • The probe reported one -1 status and only 15 returned Note IDs.
  • A count-only check after the storm found all 16 expected Markdown files and all 16 Index rows with distinct Note IDs. No file loss or identity collision was observed.
  • The shared host also had several concurrent Rust builds, local servers, and adversarial probes. Resource contention is a plausible cause, but this run did not isolate the Notes endpoint.

Please profile template-based Note creation under controlled concurrent load and decide whether to reduce service latency or document the capacity limit. Reproduce with the template create storm in tests/adversarial/attack.py. No server behavior change is proposed from this single shared-host run.

A post-merge adversarial pass found one Note creation request that exceeded the client timeout during concurrent load. Evidence from 2026-09-26: - `tests/adversarial/attack.py` issued 16 `POST /api/v1/notes/from-template` requests with 16 workers. - The probe reported one `-1` status and only 15 returned Note IDs. - A count-only check after the storm found all 16 expected Markdown files and all 16 Index rows with distinct Note IDs. No file loss or identity collision was observed. - The shared host also had several concurrent Rust builds, local servers, and adversarial probes. Resource contention is a plausible cause, but this run did not isolate the Notes endpoint. Please profile template-based Note creation under controlled concurrent load and decide whether to reduce service latency or document the capacity limit. Reproduce with the template create storm in `tests/adversarial/attack.py`. No server behavior change is proposed from this single shared-host run.
Author
Owner

Merge-round 7a follow-up on head 516faaa698. The full adversarial run sent 16 parallel POST /api/v1/notes/from-template requests. Its template create storm reported timed-out statuses (including -1) and only 2/16 unique Note IDs in the responses. The assertion did not read back every expected Note, so this run does not prove persisted Note loss or ID collision. The host was heavily loaded during the full API round. This is new evidence for the existing concurrent template latency investigation.

Merge-round 7a follow-up on head 516faaa698570bdb468626cf6cd75d9c81b33ac2. The full adversarial run sent 16 parallel POST /api/v1/notes/from-template requests. Its template create storm reported timed-out statuses (including -1) and only 2/16 unique Note IDs in the responses. The assertion did not read back every expected Note, so this run does not prove persisted Note loss or ID collision. The host was heavily loaded during the full API round. This is new evidence for the existing concurrent template latency investigation.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal#172
No description provided.