perf: Refactor event processing system for better performance

This commit is contained in:
ysq
2025-08-26 17:57:39 +08:00
parent f87f3dd7f3
commit dee683396d
33 changed files with 1158 additions and 1666 deletions
@@ -1,8 +1,7 @@
use std::collections::HashMap;
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey, signature::Signature};
use crate::streaming::event_parser::{
common::{read_u64_le, EventMetadata, EventType, ProtocolType},
@@ -385,11 +384,11 @@ impl EventParser for PumpSwapEventParser {
}
fn parse_events_from_inner_instruction(
&self,
inner_instruction: &UiCompiledInstruction,
signature: &str,
inner_instruction: &CompiledInstruction,
signature: Signature,
slot: u64,
block_time: Option<Timestamp>,
program_received_time_ms: i64,
program_received_time_us: i64,
index: String,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner.parse_events_from_inner_instruction(
@@ -397,7 +396,7 @@ impl EventParser for PumpSwapEventParser {
signature,
slot,
block_time,
program_received_time_ms,
program_received_time_us,
index,
)
}
@@ -406,10 +405,10 @@ impl EventParser for PumpSwapEventParser {
&self,
instruction: &CompiledInstruction,
accounts: &[Pubkey],
signature: &str,
signature: Signature,
slot: u64,
block_time: Option<Timestamp>,
program_received_time_ms: i64,
program_received_time_us: i64,
index: String,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner.parse_events_from_instruction(
@@ -418,7 +417,7 @@ impl EventParser for PumpSwapEventParser {
signature,
slot,
block_time,
program_received_time_ms,
program_received_time_us,
index,
)
}