Skip to content

Add MongoDB change streams support #27

@anitnilay20

Description

@anitnilay20

Description

Implement MongoDB change streams for real-time data monitoring and reactive applications.

Requirements

  • Change stream subscription
  • Filter change events
  • Resume token handling
  • Event type handling (insert, update, delete, replace)
  • Collection and database-level streams
  • Write comprehensive tests

Acceptance Criteria

  • Real-time change monitoring
  • Event filtering capabilities
  • Reliable stream resumption
  • Type-safe event handling

Files to create

  • beatrix_core/src/mongo/change_streams.rs

Example Usage

let mut stream = User::watch()
    .filter(doc! { "operationType": "insert" })
    .start(&db).await?;

while let Some(event) = stream.next().await {
    match event {
        ChangeEvent::Insert { document, .. } => {
            println!("New user: {:?}", document);
        }
        _ => {}
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    coreCore ORM functionalitymongodbMongoDB database support

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions