285 Commits

Author SHA1 Message Date
pragmaxim
e94564c3ee Merge branch 'master' into pub-new-block-txs 2026-02-17 08:11:32 +01:00
pragmaxim
f37e1e6706 fix possible racing condition with minimal contention 2026-02-11 08:40:14 +01:00
pragmaxim
9aed7923c6 syncing/caching premetheus metrics 2026-02-11 08:13:40 +01:00
pragmaxim
9487b23db7 support for 32bit systems 2026-02-10 12:58:12 +01:00
pragmaxim
213a7e160c zero existing erc20 balances 2026-02-10 12:54:00 +01:00
pragmaxim
4ab7046cb9 addressContracts cache cap - flush early on cache size limit 2026-02-09 07:37:53 +01:00
pragmaxim
94dcf3a2dd revert addrContractsCacheMinSize to original 300KB 2026-02-08 13:27:07 +01:00
pragmaxim
67ceb7666d collect and log txs and transfer counts, vin/vouts, etc. in bulkconnect 2026-02-08 13:01:25 +01:00
pragmaxim
9bbbbb43cd increase addrContractsCacheMinSize 2026-02-08 10:59:47 +01:00
pragmaxim
5ef333645a address hotness 2026-02-08 10:34:00 +01:00
pragmaxim
9a5dd21f83 contractIndexLookup benchmark 2026-02-08 06:56:25 +01:00
pragmaxim
0763a362a6 unpackedAddrContracts_findContractIndex tests 2026-02-07 08:36:06 +01:00
pragmaxim
13ceaa0cd6 lower addrContractsCacheMinSize 2026-02-07 07:50:01 +01:00
pragmaxim
02ff88be81 Skip ERC20 balance aggregation 2026-02-07 07:43:03 +01:00
pragmaxim
468a349627 avoid linar scan in contract lists 2026-02-07 07:35:05 +01:00
pragmaxim
cdd6e069ca fix: continue syncing on missing block error 2026-01-26 11:02:52 +01:00
pragmaxim
2824b9924e fix: closing Rocksdb on shutdown signal 2026-01-26 09:01:25 +01:00
pragmaxim
bdc1fc4fff fix: commit 0790f881 broke test compilation 2026-01-16 05:48:34 +01:00
kaladinlight
32232953cd publish new block transactions by address 2025-09-30 09:38:15 -06:00
Martin Boehm
db2d8cd248 Add AddrContractsCache to speed up indexing 2025-09-02 10:08:47 +02:00
CPUchain
e98b435128 Fix for windows support 2025-06-04 21:31:07 +02:00
Martin Boehm
e8cda83163 Support priority fees for mined transactions 2025-04-22 12:19:04 +02:00
Martin Boehm
0790f8810e Add parallel connect of blocks for EthereumType coins 2025-04-22 12:19:04 +02:00
Martin Boehm
d61a113685 Unpack addressContracts partially during connect block to improve performance 2025-04-22 12:19:04 +02:00
Martin Boehm
a9be4a06ea Optimize slice handling of pack/unpack addressContracts
Will trigger database migration, which can take minutes/hours.
During migration Blockbook is not syncing and providing any data
2025-04-22 12:19:04 +02:00
Martin Boehm
6f9de0ec1c Synchronize connect block with reconnect internal data 2025-04-22 12:19:04 +02:00
Martin Boehm
1d105b9509 Improve error handling in sync block loop 2025-03-06 17:17:03 +01:00
Martin Boehm
c1be4504e6 Initialize block times asynchronously to speed up server startup 2025-02-22 22:53:39 +01:00
kevin
7d4872e830 Add Base Support (#1150)
* add base support

* backend config

* add base archive blockchain factory

* add dbProtoAddrContracts flag and default to legacy encoding. fix tests

* default cache behavior for dbMaxAddrContracts default value

* update to defer func to ensure addressContracts is reset and handle possible error

* base config default to use dbProtoAddrContracts

* add network config

* update op-geth and op-node versions

* remove coingecko url

* update coingecko platform identifier

* token type -> token standard

* reduce allocations as pack/unpack addr contracts is primary bottleneck for l2 chains

* archive snapshot no longer supported, use fullnode snapshot as best effort

* remove proto encoded addr contracts as bench marks indicate there is no performance gain as initially suspected

* revert address contract cache changes
2025-02-20 22:55:15 +01:00
Martin Boehm
cddbf7228a chore(blockbook): rename type to standard 2025-02-06 22:47:11 +01:00
Albina Nikiforova
9feda1a857 chore(blockbook): rename type to standard 2025-02-06 22:47:11 +01:00
hishope
f2cd67e81f chore: fix some problematic function names
Signed-off-by: hishope <csqiye@126.com>
2024-12-09 21:05:30 +01:00
Martin Boehm
c3cdf9bca4 Fix usage of Network configuration parameter 2024-12-09 20:57:37 +01:00
Martin Boehm
a0960c8e17 Add network parameter to getInfo ws request 2024-08-06 10:50:01 +02:00
Jiří Musil
7d0c424ad8 Ignore Ordinals in Golomb filters (#967) 2023-11-08 10:21:18 +01:00
Martin Boehm
83d411be4e Use golomb config in block sync, refactor 2023-11-08 10:21:18 +01:00
Martin Boehm
96dbc8c9dc Add configuration for block golomb filters 2023-11-08 10:21:18 +01:00
grdddj
911454f171 Implement Golomb block filters for each block
Contains a websocket method `getBlockFilter` and REST endpoint `block-filters`
2023-11-08 10:21:18 +01:00
Martin Boehm
6e51bdefd3 Fix bulk import of ethereum internal data 2023-08-01 23:09:51 +02:00
Martin Boehm
a4f7f5b965 Get hourly and five minutes fiat rates 2023-04-25 09:13:43 +02:00
Martin Boehm
d856618607 Refactor fiat rates handler 2023-04-24 23:58:08 +02:00
kevin
36c744b7df perf: leverage binary search for managing for Ids and MultiTokenValues (#910)
The change executes a migration, which for ETH mainnet takes about 20 minutes of down time.
2023-04-13 13:22:58 +02:00
Martin Boehm
fabad15c10 Refetch failed ethereum internal data 2023-04-13 11:28:52 +02:00
Martin Boehm
d7e548ed22 Get errors of fetching internal data from DB 2023-04-12 23:31:34 +02:00
Martin Boehm
bf45be9fdc Delay reporting of blockchain not in sync to avoid false monitoring alerts 2023-03-13 00:17:07 +01:00
Martin Boehm
bf5f6f9e30 Limit the number of db size on disc calculations 2023-03-12 20:56:11 +01:00
Martin Boehm
708f96cf57 Add extended index option - vin.txid 2023-03-08 17:04:20 +01:00
Martin Boehm
d52832f6f7 Add extended index option - spendingTxid 2023-03-08 17:04:20 +01:00
Martin Boehm
55f3ad3caa Estimate mining time of mempool tx 2023-02-01 17:58:37 +01:00
Martin Boehm
76a19b7f10 Add estimate fee and average block period prometheus metrics 2023-02-01 17:58:37 +01:00