Skip to main content

cognee_database/entities/
sync_operation.rs

1use sea_orm::entity::prelude::*;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Debug, PartialEq, Eq, DeriveEntityModel, Serialize, Deserialize)]
5#[sea_orm(table_name = "sync_operations")]
6pub struct Model {
7    #[sea_orm(primary_key, auto_increment = false)]
8    pub id: String,
9    #[sea_orm(unique, indexed)]
10    pub run_id: String,
11    pub status: String,
12    pub progress_percentage: i32,
13    #[sea_orm(column_type = "Json", nullable)]
14    pub dataset_ids: Option<Json>,
15    #[sea_orm(column_type = "Json", nullable)]
16    pub dataset_names: Option<Json>,
17    #[sea_orm(indexed)]
18    pub user_id: String,
19    pub created_at: DateTimeUtc,
20    pub started_at: Option<DateTimeUtc>,
21    pub completed_at: Option<DateTimeUtc>,
22    pub total_records_to_sync: Option<i32>,
23    pub total_records_to_download: Option<i32>,
24    pub total_records_to_upload: Option<i32>,
25    pub records_downloaded: i32,
26    pub records_uploaded: i32,
27    pub bytes_downloaded: i64,
28    pub bytes_uploaded: i64,
29    #[sea_orm(column_type = "Json", nullable)]
30    pub dataset_sync_hashes: Option<Json>,
31    pub error_message: Option<String>,
32    pub retry_count: i32,
33}
34
35#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
36pub enum Relation {}
37
38impl ActiveModelBehavior for ActiveModel {}