Known Bugs
Bugs in convoy that we know about, with their effect and a workaround.
This page lists the bugs that we found in convoy. Each bug has an ID that does not change.
Status values:
- Confirmed: we read the code and the defect is clear, or we reproduced it.
- Suspected, not reproduced: the code shows the defect, but nobody reproduced it on a live cluster yet.
- Fixed in a version: the badge names the convoy version that has the fix.
- Withdrawn: the report was wrong. The reason is in the “Withdrawn” group.
Each bug also shows as a note on the page of the feature that it affects.
Open#
| ID | Bug | Status | Feature | convoy |
|---|---|---|---|---|
| KB-1 | Without a render store, status reports a rollback that did not occur | Confirmed | Progressive rollout | 0.9.0 |
| KB-10 | releaseNamespace and targetNamespace do not set the namespace of rendered objects | Confirmed | Rendering | 0.9.0 |
| KB-11 | Without health assessment, lastHealthy can point to a render that was never applied | Suspected, not reproduced | Progressive rollout | 0.9.0 |
| KB-12 | Deleting a Release deletes its CRDs and Namespaces, also when the prune policy protects them | Confirmed | Deletion | 0.9.0 |
| KB-13 | A pruned object can come back in the ReleaseInventory as a health-only entry | Suspected, not reproduced | Health assessment | 0.9.0 |
| KB-14 | A transient read error can restart the health deadline of a resource | Suspected, not reproduced | Health assessment | 0.9.0 |
| KB-15 | A forced sync is used up by a reconcile that fails before the apply | Suspected, not reproduced | Sync policy | 0.9.0 |
| KB-16 | A reconcile that stops before the sync clears status.waves | Suspected, not reproduced | Sync waves | 0.9.0 |
| KB-17 | A replica that cannot list members keeps its shards after its leases expire | Suspected, not reproduced | Sharding | 0.9.0 |
| KB-18 | The API docs say that waveStrategy.timeout waits without a limit, but a syncWave mutation gets 30s | Confirmed | Sync waves | 0.9.0 |
| KB-19 | A wave failure does not record the wave number in status.lastAttempted.failure | Confirmed | Sync waves | 0.9.0 |
| KB-20 | A failing mutation stops a pinned rollback and the rollout state machine | Confirmed | Mutations | 0.9.0 |
| KB-3 | A render that fails the dry run keeps the rollout in Progressing | Suspected, not reproduced | Progressive rollout | 0.9.0 |
| KB-4 | Manual sync mode can apply without a /sync request | Suspected, not reproduced | Sync policy | 0.9.0 |
| KB-5 | Proxied subresources can return 404 with more than one observer replica | Suspected, not reproduced | Scaling and HA | 0.9.0 |
| KB-6 | A CEL compile error in one health rule stops the health assessment of the Release | Confirmed | Health assessment | 0.9.0 |
| KB-7 | A wave timeout can count from the apply time of an earlier render | Suspected, not reproduced | Sync waves | 0.9.0 |
| KB-8 | A wave gate can pass on health from the previous render | Suspected, not reproduced | Sync waves | 0.9.0 |
| KB-9 | In manual sync mode, writes other than /sync can start an apply | Suspected, not reproduced | Sync policy | 0.9.0 |
Fixed#
No fixed bugs yet.
Withdrawn (1)
| ID | Report | Reason |
|---|---|---|
| KB-2 | OCIRegistry rejects an empty defaultContentType | Required by design. Only the code comment was wrong. |