From 17e11d9fec232b29bc28b1935d36cb4bda2858a4 Mon Sep 17 00:00:00 2001 From: Darioush Jalali Date: Thu, 15 Aug 2024 15:58:35 -0700 Subject: [PATCH 1/2] handle accepted/pending tx subs separately --- eth/filters/filter_system.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/eth/filters/filter_system.go b/eth/filters/filter_system.go index cf291091f1..66e2469cb6 100644 --- a/eth/filters/filter_system.go +++ b/eth/filters/filter_system.go @@ -520,14 +520,15 @@ func (es *EventSystem) handlePendingLogs(filters filterIndex, ev []*types.Log) { } } -func (es *EventSystem) handleTxsEvent(filters filterIndex, ev core.NewTxsEvent, accepted bool) { +func (es *EventSystem) handleTxsEvent(filters filterIndex, ev core.NewTxsEvent) { for _, f := range filters[PendingTransactionsSubscription] { f.txs <- ev.Txs } - if accepted { - for _, f := range filters[AcceptedTransactionsSubscription] { - f.txs <- ev.Txs - } +} + +func (es *EventSystem) handleAcceptedTxsEvent(filters filterIndex, ev core.NewTxsEvent) { + for _, f := range filters[AcceptedTransactionsSubscription] { + f.txs <- ev.Txs } } @@ -565,7 +566,7 @@ func (es *EventSystem) eventLoop() { for { select { case ev := <-es.txsCh: - es.handleTxsEvent(index, ev, false) + es.handleTxsEvent(index, ev) case ev := <-es.logsCh: es.handleLogs(index, ev) case ev := <-es.logsAcceptedCh: @@ -579,7 +580,7 @@ func (es *EventSystem) eventLoop() { case ev := <-es.chainAcceptedCh: es.handleChainAcceptedEvent(index, ev) case ev := <-es.txsAcceptedCh: - es.handleTxsEvent(index, ev, true) + es.handleAcceptedTxsEvent(index, ev) case f := <-es.install: if f.typ == MinedAndPendingLogsSubscription { From 6d01d45e175952a4c0404dabd49124ab7a43b4b8 Mon Sep 17 00:00:00 2001 From: Darioush Jalali Date: Thu, 15 Aug 2024 16:00:50 -0700 Subject: [PATCH 2/2] nit: naming --- eth/filters/filter_system.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eth/filters/filter_system.go b/eth/filters/filter_system.go index 66e2469cb6..c388632391 100644 --- a/eth/filters/filter_system.go +++ b/eth/filters/filter_system.go @@ -526,7 +526,7 @@ func (es *EventSystem) handleTxsEvent(filters filterIndex, ev core.NewTxsEvent) } } -func (es *EventSystem) handleAcceptedTxsEvent(filters filterIndex, ev core.NewTxsEvent) { +func (es *EventSystem) handleTxsAcceptedEvent(filters filterIndex, ev core.NewTxsEvent) { for _, f := range filters[AcceptedTransactionsSubscription] { f.txs <- ev.Txs } @@ -580,7 +580,7 @@ func (es *EventSystem) eventLoop() { case ev := <-es.chainAcceptedCh: es.handleChainAcceptedEvent(index, ev) case ev := <-es.txsAcceptedCh: - es.handleAcceptedTxsEvent(index, ev) + es.handleTxsAcceptedEvent(index, ev) case f := <-es.install: if f.typ == MinedAndPendingLogsSubscription {