# Isolation

Record: `arch:isolation`
Kind: constraint
Layer: [Atomic Boundary](https://banes-lab.com/records/layer/atomic-boundary.md)
Severity: contextual
Scope: database, transaction, concurrency
Canonical: https://banes-lab.com/ontology#arch-isolation

## Repair

- Refactored by: Add Locking, Set Isolation Level
- Detected by: concurrency tests, isolation anomalies
- Violated by: race-condition state corruption
- Measured by: anomaly rate, lock contention
- Enforced by: DB isolation, concurrency tests

## requires

- [Concurrency Control](https://banes-lab.com/records/arch/concurrency-control.md)

## reinforces

- [Correctness](https://banes-lab.com/records/arch/correctness.md)

## enables

- [Safe Concurrent Operations](https://banes-lab.com/records/lex/safe-concurrent-operations.md)

## conflicts-with

- [Dirty Reads/Writes](https://banes-lab.com/records/lex/dirty-reads-writes.md)

## tensions-with

- [Throughput](https://banes-lab.com/records/arch/throughput.md)

## tensions

- [Isolation Throughput](https://banes-lab.com/records/tension/isolation-throughput.md)

## referenced-by

- [Partitioning](https://banes-lab.com/records/arch/partitioning.md)
- [ACID](https://banes-lab.com/records/arch/acid.md)
- [Concurrency Control](https://banes-lab.com/records/arch/concurrency-control.md)
- [Pessimistic Locking](https://banes-lab.com/records/arch/pessimistic-locking.md)
