0.7.24-pre.1
This commit is contained in:
@@ -212,14 +212,7 @@ impl KbTradeAggregationService {
|
||||
);
|
||||
}
|
||||
let slot_i64 = kb_convert_slot_to_i64(transaction.slot);
|
||||
let existing_trade_was_empty = match &existing_trade_option {
|
||||
Some(existing_trade) => {
|
||||
existing_trade.base_amount_raw.is_none()
|
||||
&& existing_trade.quote_amount_raw.is_none()
|
||||
&& existing_trade.price_quote_per_base.is_none()
|
||||
}
|
||||
None => false,
|
||||
};
|
||||
let created_trade_event = existing_trade_option.is_none();
|
||||
let trade_event_dto = crate::KbTradeEventDto::new(
|
||||
pool.dex_id,
|
||||
pool_id,
|
||||
@@ -242,20 +235,15 @@ impl KbTradeAggregationService {
|
||||
event_kind = %decoded_event.event_kind,
|
||||
pool_account = ?decoded_event.pool_account,
|
||||
decoded_event_id = ?decoded_event.id,
|
||||
created_trade_event = created_trade_event,
|
||||
"trade aggregation candidate"
|
||||
);
|
||||
let upsert_result =
|
||||
let trade_event_id_result =
|
||||
crate::upsert_trade_event(self.database.as_ref(), &trade_event_dto).await;
|
||||
let trade_event_id = match upsert_result {
|
||||
let trade_event_id = match trade_event_id_result {
|
||||
Ok(trade_event_id) => trade_event_id,
|
||||
Err(error) => return Err(error),
|
||||
};
|
||||
let created_trade_event = existing_trade_option.is_none();
|
||||
let repaired_trade_event = !created_trade_event
|
||||
&& existing_trade_was_empty
|
||||
&& (base_amount_raw.is_some()
|
||||
|| quote_amount_raw.is_some()
|
||||
|| price_quote_per_base.is_some());
|
||||
let pair_metric_result =
|
||||
crate::get_pair_metric_by_pair_id(self.database.as_ref(), pair_id).await;
|
||||
let pair_metric_option = match pair_metric_result {
|
||||
@@ -271,7 +259,7 @@ impl KbTradeAggregationService {
|
||||
));
|
||||
}
|
||||
};
|
||||
if created_trade_event || repaired_trade_event {
|
||||
if created_trade_event {
|
||||
let mut updated_metric = existing_metric.clone();
|
||||
kb_apply_trade_to_pair_metric(
|
||||
&mut updated_metric,
|
||||
|
||||
Reference in New Issue
Block a user