10. Database Transactions
General usage: 10. Database Transactions. Status links explain differences for each data source.
| Data source | Annotations | Templates | Programmatic | Shared transactions | Propagation | Isolation |
|---|---|---|---|---|---|---|
| MySQL | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| PostgreSQL | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| Oracle | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| SQL Server | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| DB2 | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| H2 | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | ✓ All | ✓ Supported |
| ClickHouse | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
| Redis | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
| MongoDB | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
| ES 6 | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
| ES 7 | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
| Milvus | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ◐ Limited | ✕ Unsupported |
- Shared transactions: JdbcTemplate, Session, and the Builder API participate in the same transaction.
- Propagation: seven modes —
REQUIRED,REQUIRES_NEW,NESTED,SUPPORTS,NOT_SUPPORTED,MANDATORY, andNEVER. - Propagation counts: a mode counts as fully supported only when all its scenarios pass. Hover for each mode's status; follow the status link for partial-support limits.
- Limited: some calls work, but JDBC or database transaction capabilities impose restrictions. Follow the data source link for supported behavior and limits.
- Isolation levels: whether dbVisitor can apply transaction isolation settings for the data source, not whether every database accepts the same values. Follow the status link for accepted values and behavior.