MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / retry_queue_exponential_backoff

Function retry_queue_exponential_backoff

nodedb/tests/event_trigger.rs:390–416  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

388
389#[test]
390fn retry_queue_exponential_backoff() {
391 let mut queue = TriggerRetryQueue::new();
392
393 let entry = RetryEntry {
394 tenant_id: 1,
395 collection: "orders".into(),
396 row_id: "r1".into(),
397 operation: "INSERT".into(),
398 trigger_name: "audit_trigger".into(),
399 new_fields: None,
400 old_fields: None,
401 attempts: 0,
402 last_error: "timeout".into(),
403 next_retry_at: std::time::Instant::now(),
404 source_lsn: 100,
405 source_sequence: 1,
406 cascade_depth: 0,
407 };
408
409 queue.enqueue(entry);
410 assert_eq!(queue.len(), 1);
411
412 let (ready, exhausted) = queue.drain_due();
413 assert!(exhausted.is_empty());
414 let total = ready.len() + queue.len();
415 assert_eq!(total, 1);
416}
417
418#[test]
419fn retry_queue_multiple_entries_fifo() {

Callers

nothing calls this directly

Calls 4

nowFunction · 0.85
enqueueMethod · 0.45
drain_dueMethod · 0.45
lenMethod · 0.45

Tested by

no test coverage detected