1
0
mirror of https://github.com/romanz/electrs.git synced 2024-11-19 09:54:09 +01:00
Commit Graph

1341 Commits

Author SHA1 Message Date
Roman Zeyde
44cda47f39 Update release notes 2021-10-15 22:20:23 +03:00
Roman Zeyde
c38341f9ab Use an Arc<TcpStream> instead of cloning in p2p.rs 2021-10-15 20:13:38 +03:00
Roman Zeyde
cf0acfb6aa
Merge pull request #558 from romanz/init-rpc
Call Tracker::sync once in server.rs
2021-10-15 16:53:05 +03:00
Roman Zeyde
12496c44be Call Tracker::sync only in server.rs
This way, the RPC server is running (but not responding) during initial sync.

Following https://github.com/romanz/electrs/issues/534.
2021-10-15 16:37:31 +03:00
Roman Zeyde
9eb415e94d
Merge pull request #550 from romanz/p2p-perf
Rewrite and simplify p2p message receiving thread
2021-10-15 16:22:28 +03:00
Frederic Lepied
b114826725 contrib/xpub.py support ypub/zpub 2021-10-15 15:05:18 +03:00
Roman Zeyde
05e0221b8e Rewrite and simplify p2p message receiving thread
Add a few more utilization metrics.
2021-10-15 14:47:04 +03:00
Roman Zeyde
98b3f21656
Merge pull request #557 from romanz/mempool-metrics
Re-introduce mempool vsize and txs' count metrics
2021-10-15 11:17:39 +03:00
Roman Zeyde
06e9b4d13d Re-introduce mempool vsize and txs' count metrics
Fixes #551
2021-10-15 10:53:58 +03:00
Roman Zeyde
121a4bcc91 Re-introduce mempool vsize and txs' count metrics' -m Fixes 2021-10-15 10:51:05 +03:00
Roman Zeyde
e4256a0d2f Rename fee histogram struct 2021-10-15 10:45:14 +03:00
Roman Zeyde
2ce22bd2a3 Support testnet and regtest in contrib/xpub.py 2021-10-14 18:44:16 +03:00
Roman Zeyde
cd0531b8b7 Copy StreamReader implementation into our crate 2021-10-14 09:20:32 +03:00
Roman Zeyde
f927e237f7 Fix contrib/xpub.py
Following https://github.com/romanz/electrs/issues/549
2021-10-14 08:56:40 +03:00
Roman Zeyde
e76b9df1d7
Merge pull request #548 from flepied/fix-history-contrib
enhance contribs to allow to connect to an external server
2021-10-13 18:33:50 +03:00
Frederic Lepied
74f13419a8 enhance contribs to allow to connect to an external server 2021-10-13 15:06:03 +02:00
Roman Zeyde
b94c98fc31
Merge pull request #546 from romanz/p2p-metrics
Add p2p protocol monitoring
2021-10-12 17:46:22 +03:00
Roman Zeyde
c880988bd7 Add p2p protocol monitoring 2021-10-12 10:58:17 +03:00
Roman Zeyde
173ea45329 Don't connect twice to bitcoind
It was added when JSON RPC was using a persistent connection,
disconnecting after full compaction (which took a while).

Now, p2p handling is running in a separate thread and JSON RPC
is creating a new connection for each request (#538).
2021-10-12 09:58:25 +03:00
Roman Zeyde
f288fd2116 Allow --reindex-last-blocks to be larger than height 2021-10-11 13:17:20 +03:00
Roman Zeyde
2d2544f502
Merge pull request #545 from romanz/reindex-blocks
Allow reindexing last blocks, mainly for sync logic testing
2021-10-11 12:01:10 +03:00
Roman Zeyde
2a10f5fd99 Allow reindexing last blocks, mainly for sync logic testing
Also, added clippy exception for:
```
warning: the function has a cognitive complexity of (26/25)
   --> ./electrs/target/release/build/electrs-600a795995255594/out/configure_me_config.rs:453:9
    |
453 | /         pub fn merge_args<I: IntoIterator<Item=::std::ffi::OsString>>(&mut self, args: I) -> Result<impl Iterator<Item=::std::ffi::OsString>, super::Error> {
454 | |             let mut iter = args.into_iter().fuse();
455 | |             self._program_path = iter.next().map(Into::into);
456 | |
...   |
571 | |             Ok(None.into_iter().chain(iter))
572 | |         }
    | |_________^
    |
    = note: `#[warn(clippy::cognitive_complexity)]` on by default
    = help: you could split it up into multiple smaller functions
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cognitive_complexity
```
2021-10-11 11:10:23 +03:00
Roman Zeyde
6755b4c7f1
Merge pull request #544 from romanz/db-size
Expose index DB size as a Prometheus gauge metric
2021-10-11 09:08:57 +03:00
Roman Zeyde
632fe4c622 Expose index DB size as Prometheus gauge metric
Fixes #541.
2021-10-10 21:25:35 +03:00
Roman Zeyde
a552a2bb2d Allow disabling Electrum RPC while continuing indexing 2021-10-09 13:49:56 +03:00
Roman Zeyde
fbda004ecb Drop ELECTRS_VERBOSE and ELECTRS_TIMESTAMP from Docker usage example 2021-10-07 21:36:50 +03:00
Roman Zeyde
2ea514373e Actually, there is no need to define any ServiceFlags at p2p connection 2021-10-06 22:42:07 +03:00
Roman Zeyde
640202ecb3 No need to define ServiceFlags::NETWORK at p2p connection 2021-10-06 22:39:12 +03:00
Roman Zeyde
45a91f9b1b Don't ignore signals during IBD
Fixes #532.

Also, don't fail electrs when exiting due to SIGINT/SIGTERM.
2021-10-06 11:20:37 +03:00
Roman Zeyde
f896f9c2a4 Add a few comments following https://github.com/romanz/electrs/pull/526 review 2021-10-06 09:29:00 +03:00
Roman Zeyde
ca93d3c75c Fix process-related metrics collection feature
Previously, it wasn't enabled when building with:
```
cargo build --all --features "prometheus/process" --release
```
2021-10-05 13:14:56 +03:00
Roman Zeyde
1402d290dc Use p2p protocol to replace waitfornewblock hidden RPC
Fixes https://github.com/romanz/electrs/issues/522.
2021-10-04 21:07:50 +03:00
Roman Zeyde
1a7d624e6a Monitor cached transactions' size 2021-10-04 18:40:47 +03:00
Roman Zeyde
9a45d9c798 Fix cache methods' scope 2021-10-04 18:40:47 +03:00
Roman Zeyde
ced9796bde Deduplicate default metrics' buckets 2021-10-04 18:40:47 +03:00
Roman Zeyde
af169e7e63
Merge pull request #528 from romanz/prometheus-buckets
Use correct Prometheus buckets for size and duration
2021-10-04 12:42:09 +03:00
Roman Zeyde
05e4657bdc
Merge pull request #529 from romanz/fix-duplicate-history
Fix duplicate history computation
2021-10-04 12:41:31 +03:00
Roman Zeyde
8b9d412fb8 Fix duplicate history computation
Also, simplify the relevant code a bit.
2021-10-04 11:02:48 +03:00
Roman Zeyde
9770d90d22 Use correct Prometheus buckets for size and duration
Fixes #3
2021-10-04 10:35:39 +03:00
Roman Zeyde
60c1313c19 Bump prometheus to 0.13 2021-10-04 10:10:10 +03:00
Roman Zeyde
fc81d95940 Update build description for 32-bit OS 2021-10-04 09:13:03 +03:00
Roman Zeyde
239e4658af There should be one (and only one) signal handler in electrs 2021-10-03 21:15:22 +03:00
Roman Zeyde
b51d2af65b Simplify RPC handling in batches 2021-10-03 16:18:09 +03:00
Roman Zeyde
2bc61b73d0 Warn when TCP shutdown fails 2021-10-01 10:17:06 +03:00
Roman Zeyde
57552bdb78 Don't shutdown RPC connection write-side before all responses are sent 2021-09-30 21:40:33 +03:00
Roman Zeyde
e7525ca537
Merge pull request #521 from Kixunil/patch-4
Clarify upgrading to 0.9.0
2021-09-30 18:37:10 +03:00
Martin Habovštiak
759cc64978
Clarify upgrading to 0.9.0
Removing/renaming unsupported switches was not called out explicitly and it's possible that someone is using a different bitcoind address, not just port.

Closes #520
2021-09-30 16:50:21 +02:00
Roman Zeyde
ed574ab4c1
Merge pull request #515 from romanz/init-height-metric
Initialize chain height metric
2021-09-30 16:01:01 +03:00
Roman Zeyde
a07de5aa5c
Merge pull request #518 from Kixunil/patch-4
Update documentation regarding cargo features
2021-09-30 15:59:52 +03:00
Martin Habovštiak
0db0e8c8c1
Update documentation regarding cargo features
With new `rocksdb` it's no longer necessary to disable features when dynamically linking.
Thus this change removes instructions to add `--no-default-features`.
However there's now a new feature called `metrics` which enables Prometheus.
This change also documents this and explains how to turn it off.

Closes #517
2021-09-30 14:09:26 +02:00