# Do not treat a Cloudflare DNS batch transaction as atomic global propagation

> A successful database transaction can still reach the distributed DNS layer record by record.

- Canonical URL: https://update.dsesecurity.com/updates/do-not-treat-a-cloudflare-dns-batch-transaction-as-atomic-global-propagation/
- Publisher: Detection Systems & Engineering (DSE Security)
- Author: DSE Security Editorial Team
- Published: 2026-10-20T18:16:55+00:00
- Modified: 2026-10-20T18:34:36+00:00
- Last reviewed by DSE: 2026-10-20
- Resource type: Guide
- DSE priority: Information
- Topics: Cybersecurity, Networks & Infrastructure
- Reading time: 2 minutes

## What you need to know

A successful database transaction can still reach the distributed DNS layer record by record.

## Potentially affected

This concerns the Cloudflare batch-record API and its documented commit and propagation semantics.

## DSE recommendation

DSE recommends designing coordinated record changes to tolerate a transition with mixed old and new answers.

## Article

A successful database transaction can still reach the distributed DNS layer record by record.

## Source facts

Cloudflare states that a DNS batch executes in one database transaction, while propagation through its distributed key-value system is not atomic. Batch operations run in delete, patch, put, then post order. Patches preserve unspecified fields; puts reset unspecified fields to their defaults. A failed operation prevents the database changes and returns the first error.

Source: [Cloudflare — Batch record changes](https://developers.cloudflare.com/dns/manage-dns-records/how-to/batch-record-changes/).

## Applicability

This concerns the Cloudflare batch-record API and its documented commit and propagation semantics.

## DSE recommendation

DSE recommends designing coordinated record changes to tolerate a transition with mixed old and new answers. Use patch versus replacement semantics intentionally and preserve an export of the prior records. Review operation order where names or record types conflict. Keep the batch small enough to inspect and match it to an approved change set rather than relying on a single success response as the full acceptance evidence. Ask the application owner to approve a mixed-answer transition before submitting the batch. Include operation order and patch-versus-put intent in the reviewed request description. Keep rollback values for each affected record so a successful database transaction is not mistaken for a service-wide atomic cutover.

## Verification

In a controlled zone, apply a representative batch and inspect returned results, stored fields, and authoritative answers over time. Confirm unspecified settings stayed unchanged for patches and match intended defaults for replacements. Test the dependent service during the transition and retain the exact before-and-after records without exposing API credentials.

## Official reference

[Cloudflare — Batch record changes](https://developers.cloudflare.com/dns/manage-dns-records/how-to/batch-record-changes/). Reviewed October 20, 2026.

## Primary reference

- Name: Cloudflare — Batch record changes
- Authority: developers.cloudflare.com
- URL: https://developers.cloudflare.com/dns/manage-dns-records/how-to/batch-record-changes/
- Source publication date: Not stated by the source

## Citation and use

Preferred citation: “Do not treat a Cloudflare DNS batch transaction as atomic global propagation,” DSE Security, https://update.dsesecurity.com/updates/do-not-treat-a-cloudflare-dns-batch-transaction-as-atomic-global-propagation/
Publishing principles: https://update.dsesecurity.com/updates/dse-updates-editorial-methodology/
Usage and citation policy: https://update.dsesecurity.com/usage/
Copyright © 2026 Detection Systems & Engineering. All rights reserved.
