[API] Inconsistent API Behavior When Resolving Issues in Bulk
- Dominant language
- Python
- Stars
- 44.8k
- Forks
- 4.9k
- Avg merge
- 22h 21m
- Merged PRs (30d)
- 586
Description
### Environment
SaaS ([https://sentry.io/]())
### Steps to Reproduce
When making bulk updates via the Sentry API to mark issues as resolved or unresolved, the request returns inconsistent results across different projects. Some requests succeed, while others return 502 Bad Gateway errors with the message:
`upstream connect error or disconnect/reset before headers. reset reason: protocol error`
Sample reqeust
`curl -X PUT "https://sentry.io/api/0/projects///issues/" \ -H "Authorization: Bearer XXXYYYZZZ" \ -H "Content-Type: application/json" \ -d '{ "status": "resolved" }' `
Also, in some cases, the request succeeds (200 OK), but the UI does not reflect the status change.
The issues remain unresolved in the Sentry UI despite the API returning success.
### Expected Result
* The request should return a consistent and successful response across all projects when marking issues as resolved. If there is a limit, the docs should also reflect that.
* The Sentry UI should reflect the status change when a request succeeds.
### Actual Result
* The request intermittently fails with a 502 Bad Gateway error for multiple services.
* Error message received: "upstream connect error or disconnect/reset before headers. reset reason: protocol error"
* In some cases, a 200 OK response is received, but the status does not update in the Sentry UI.
### Product Area
APIs
### Link
*No response*
### DSN
*No response*
### Version
*No response*
Contributor guide
Research direction
Start with the sample curl request and compare bulk resolution responses across the affected projects, including the 502 error and successful 200 response. Trace whether successful requests are reflected in the Sentry UI; done means bulk resolve and unresolve operations behave consistently and the UI shows the resulting status.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100