Description
CDS 10 reduces the default maximum delivery attempts for queue-backed messaging from 20 to 10. A message that cannot be processed successfully will now be moved to the dead-letter state after 10 attempts instead of 20. Projects that require more than 10 retry attempts before giving up — and have not set maxAttempts explicitly — will observe messages failing sooner than before. Services that already set maxAttempts to an explicit value are unaffected.
How to Check
- [ ] Search
cds envoutput formaxAttemptsin any queue or outbox config block. - [ ] Search
package.jsonand.cdsrc.jsonformaxAttemptsin a CAP queue or outbox configuration object. - [ ] Review source files for programmatic assignment of
maxAttemptson a queue config object. - [ ] If no explicit value is set, assess whether the business process tolerates at most 10 delivery attempts or requires more.
Migration Steps
Locate queue and outbox configurations in
package.jsonor.cdsrc.json.If the default of 20 is relied upon, set
maxAttemptsexplicitly to preserve the old behavior:
"cds": {
"requires": {
"my-queue": {
+ "maxAttempts": 20
}
}
}- Alternatively, review whether 10 attempts is acceptable and leave the new default in place, updating any dead-letter handling or monitoring thresholds accordingly.
Notes
Explicit maxAttempts values anywhere in the config — whether set to 20 or any other number — are fully honored and not affected by the default change. Only projects that relied on the implicit default of 20 are impacted.