-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
coreCore ORM functionalityCore ORM functionalitymongodbMongoDB database supportMongoDB database support
Milestone
Description
Description
Implement MongoDB multi-document transactions with proper error handling and retry logic.
Requirements
- Multi-document transaction support
- Transaction retry logic
- Read/write concerns configuration
- Session management
- Causal consistency
- Write comprehensive tests
Acceptance Criteria
- Full transaction support for MongoDB 4.0+
- Automatic retry on transient errors
- Proper session handling
- Read/write concern configuration
Files to create
beatrix_core/src/mongo/transaction.rs
Example Usage
db.transaction(|session| async move {
let user = User::new("John".to_string());
user.save_with_session(&db, &session).await?;
let profile = Profile::new(user.id());
profile.save_with_session(&db, &session).await?;
Ok((user, profile))
}).await?;Metadata
Metadata
Assignees
Labels
coreCore ORM functionalityCore ORM functionalitymongodbMongoDB database supportMongoDB database support