Tags: graphprotocol/graph-node
Tags
fix: extract file path from IPC URL in Transport::new_ipc (#6443)
Optimize log filter matching and trigger allocation (#6419) * chain/ethereum: Use O(1) edge lookup in EthereumLogFilter Replace all_edges() linear scan with contains_edge() and edge_weight() in matches() and requires_transaction_receipt(). * chain/ethereum: Pre-allocate triggers Vec in parse_log_triggers Replace flat_map(...).collect() with explicit loops and a pre-sized Vec to avoid repeated reallocations.
chain/ethereum: Pre-allocate Vec in parse_log_triggers to avoid repea… …ted memmove Replace flat_map(...).collect() with explicit loops and a pre-allocated Vec. FlatMap size_hint returns (0, None), so collect() starts with a small buffer and doubles repeatedly, triggering memmove to copy the growing buffer on each reallocation. For high-activity blocks with thousands of logs, this caused __memmove_avx_unaligned_erms to consume ~17% of total CPU time. Pre-counting logs and using Vec::with_capacity eliminates all reallocations.
PreviousNext