MCPcopy Create free account
hub / github.com/acking-you/static_flow / cleanup_api_behavior_before

Method cleanup_api_behavior_before

crates/store/src/lancedb_api.rs:574–596  ·  view source on GitHub ↗
(&self, before_ms: i64)

Source from the content-addressed store, hash-verified

572 }
573
574 pub async fn cleanup_api_behavior_before(&self, before_ms: i64) -> Result<usize> {
575 let _guard = self.api_behavior_gate.write().await;
576 let _file_guard =
577 acquire_table_access_file_lock(&self.api_behavior_table, TableAccessMode::Exclusive)
578 .await?;
579 let table = self.api_behavior_table().await?;
580 let filter =
581 format!("occurred_at < arrow_cast({before_ms}, 'Timestamp(Millisecond, None)')");
582 let deleted = table
583 .count_rows(Some(filter.clone()))
584 .await
585 .context("failed to count api behavior rows before cleanup")?
586 as usize;
587 if deleted == 0 {
588 return Ok(0);
589 }
590
591 table
592 .delete(&filter)
593 .await
594 .context("failed to cleanup api behavior rows")?;
595 Ok(deleted)
596 }
597
598 /// Compact the api_behavior_events table to merge small fragments.
599 /// This reduces the number of open file descriptors and improves query

Calls 6

api_behavior_tableMethod · 0.80
count_rowsMethod · 0.80
cloneMethod · 0.80
deleteMethod · 0.80
writeMethod · 0.45

Tested by

no test coverage detected