@@ -107,6 +107,12 @@ defmodule DB.Entry do
107107 RocksDB . put ( key , hash , db_handle ( db_opts , :tx_filter , % { } ) )
108108 end )
109109
110+ if entry . header . height >= 445_00000 do
111+ old_cnt = RocksDB . get ( "tx_count" , db_handle ( db_opts , :sysconf , % { } ) ) || "0"
112+ new_cnt = :erlang . binary_to_integer ( old_cnt ) + length ( entry . txs )
113+ RocksDB . put ( "tx_count" , :erlang . integer_to_binary ( new_cnt ) , db_handle ( db_opts , :sysconf , % { } ) )
114+ end
115+
110116 receipts_by_txid = Map . new ( receipts , fn r -> { r . txid , Map . drop ( r , [ :txid ] ) } end )
111117 Enum . each ( entry . txs , fn ( txu ) ->
112118 receipt = Map . fetch! ( receipts_by_txid , txu . hash )
@@ -164,6 +170,12 @@ defmodule DB.Entry do
164170 RocksDB . delete ( key , db_handle ( db_opts , :tx_filter , % { } ) )
165171 end )
166172
173+ if entry . header . height >= 445_00000 do
174+ old_cnt = RocksDB . get ( "tx_count" , db_handle ( db_opts , :sysconf , % { } ) ) || "0"
175+ new_cnt = :erlang . binary_to_integer ( old_cnt ) - length ( entry . txs )
176+ RocksDB . put ( "tx_count" , :erlang . integer_to_binary ( new_cnt ) , db_handle ( db_opts , :sysconf , % { } ) )
177+ end
178+
167179 Enum . each ( entry . txs , fn ( txu ) ->
168180 RocksDB . delete ( txu . hash , db_handle ( db_opts , :tx , % { } ) )
169181
0 commit comments