# Reliability patterns without distributed transactions

*MuleSoft Platform Integration Architect Study Guide · Designing integration solutions to meet reliability requirements · Last updated November 13, 2026 · https://www.certifyforce.com/study-guide/mulesoft-platform-integration-architect/designing-integration-solutions-to-meet-reliability-requirements/reliability-patterns-without-distributed-transactions*

Get zero message loss without XA: a reliability pattern behind nontransactional sources, an endpoint that survives the deployment, safe file and FTP handling, a local transaction plus a redelivery-tolerant write (design reasoning, not a documented Mule feature), and Batch Job record-level failure handling.

- Certification: Salesforce MuleSoft Platform Integration Architect
- Exam section: Designing integration solutions to meet reliability requirements
- Study guide: https://www.certifyforce.com/study-guide/mulesoft-platform-integration-architect

**Official exam objective:**

> Select alternatives to traditional transactions (local or XA) where appropriate and beneficial.

## What the exam expects

- Recognize when a nontransactional source (HTTP, File, FTP) rules out a transaction and a reliability pattern is the alternative.
- Choose the transactional endpoint for a reliable acquisition flow from the deployment (standalone or clustered) and the software available.
- Configure resource-based sources so a file is not lost when processing fails in another flow.
- Replace an XA transaction with a Single Resource transaction when throughput matters more than two-phase commit, and plan for redelivered messages.
- Replace one all-or-nothing transaction over a large data set with Batch Job record-level failure handling.

**Reliability pattern**: a design that couples a reliable acquisition flow with an application logic flow so messaging stays reliable even from a nontransactional connector. **Reliable acquisition flow**: the flow that moves a message from a nontransactional source to a transactional outbound operation. **Single Resource (local) transaction**: a transaction over one resource and one connector configuration. **XA transaction**: a global transaction coordinated with two-phase commit across several resources ([Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns), [Transaction Management](https://docs.mulesoft.com/mule-runtime/latest/transaction-management)). **Idempotent write** (Exam convention, design reasoning): a write that is safe to repeat without a duplicate effect. **Message de-duplication**: letting only messages with a unique ID continue through a flow ([Idempotent Message Validator](https://docs.mulesoft.com/mule-runtime/latest/idempotent-message-validator)).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| HTTP failure in acquisition flow | Return an unsuccessful-request response so the client retries. | [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns) |
| File-based VM endpoint | No extra software; non-clustered environments only. | [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns) |
| Persistent JMS endpoint | Clustered and non-clustered; requires a message queue server. | [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns) |
| In-memory VM or JMS | Can lose messages; not considered reliable. | [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns) |
| File and FTP sources | `watermarkEnabled="true"`; no `auto-delete` or `moveToDirectory`. | [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns) |
| Single Resource join rule | Same connector and same `config-ref`; no nested transactions. | [Transaction Management](https://docs.mulesoft.com/mule-runtime/latest/transaction-management), [Single Resource Transactions](https://docs.mulesoft.com/mule-runtime/latest/single-resource-transaction) |
| XA cost | Two-phase commit latency and an external transaction manager. | [XA Transactions](https://docs.mulesoft.com/mule-runtime/latest/xa-transactions) |
| Duplicate detection | Idempotent Message Validator raises `MULE:DUPLICATE_MESSAGE`. | [Idempotent Message Validator](https://docs.mulesoft.com/mule-runtime/latest/idempotent-message-validator) |
| Batch inside a transaction | Not part of it; records use internal batch transactions. | [Transaction Management](https://docs.mulesoft.com/mule-runtime/latest/transaction-management) |
| `maxFailedRecords` values | `0` default stop, `-1` never stop, integer threshold. | [Handling Errors During Batch Job](https://docs.mulesoft.com/mule-runtime/latest/batch-error-handling-faq) |
| Batch Step `acceptPolicy` | `NO_FAILURES` default; `ONLY_FAILURES`; `ALL`. | [Configuring Batch Components](https://docs.mulesoft.com/mule-runtime/latest/batch-filters-and-batch-aggregator) |

## Check yourself

- Why does Mule, at the default log level, log a batch error only the first time it appears in a step?
- When does an FTP-to-VM acquisition flow need a max redelivery count?
- What does `Batch::getStepErrors()` return for a record that has not failed in any step?

## Sources

- [Reliability Patterns](https://docs.mulesoft.com/mule-runtime/latest/reliability-patterns)
- [Transaction Management](https://docs.mulesoft.com/mule-runtime/latest/transaction-management)
- [XA Transactions](https://docs.mulesoft.com/mule-runtime/latest/xa-transactions)
- [Single Resource Transactions](https://docs.mulesoft.com/mule-runtime/latest/single-resource-transaction)
- [Idempotent Message Validator](https://docs.mulesoft.com/mule-runtime/latest/idempotent-message-validator)
- [Handling Errors During Batch Job](https://docs.mulesoft.com/mule-runtime/latest/batch-error-handling-faq)
- [Configuring Batch Components](https://docs.mulesoft.com/mule-runtime/latest/batch-filters-and-batch-aggregator)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 5 linked practice questions, and unlimited timed mock exams are included with the MuleSoft Platform Integration Architect pack (USD $19): https://www.certifyforce.com/practice-exams
