Fulcrum 1.9.5
What's new:
This is a hotfix release. 1.9.4 was a lemon -- it contained a bug whereby the server would hang waiting for the mempool (due to inappropriate use of thread variable signals). It has been fixed. I sincerely apologize for the error on my part. All users of 1.9.4 should upgrade to 1.9.5 immediately.
Otherwise, 1.9.4 was a good improvement for performance. 1.9.5 is just like 1.9.4 except it lacks the synch hang bug.
Release notes from 1.9.4:
- This is a bugfix + performance improvement release of Fulcrum. In this release, the performance of mempool synching from
bitcoind
has been improved by as much as ~30% for large mempools. Additionally, a rare corner-case bug related to mempool synching has been fixed. It is recommended that all admins running public Fulcrum servers update to v1.9.4 at their earliest convenience.
Summary of changes (vs 1.9.3):
- Performance! - Improved the performance of the
SynchMempoolTask
by ~30% for large mempools. This is particularly important when Fulcrum first starts up against a daemon that has chronically full mempools (such as on BTC). (#207). - Bugfix - A rare corner-case bug involving unsent scripthash notifications during some unlikely-but-possible mempool scenarios has been fixed. (#207).
- Miscellaneous:
- macOS: The source tree now includes a "fat" binary for
librocksdb.a
which work on bothx86_64
andarm64
(Apple Silicon). - Refactored the
SynchMempoolTask
to a separate compilation unit - Other small nits.
- macOS: The source tree now includes a "fat" binary for
Pre-compiled binaries for Linux
I have provided two pre-built binaries for Linux:
Fulcrum-1.9.5-x86_64-linux.tar.gz
, which is compiled on anUbuntu 18.04
system using Docker.Fulcrum-1.9.5-arm64-linux.tar.gz
, which is compiled on anUbuntu 20.04
system (for ARM64 bit) using Docker.Fulcrum-1.9.5-x86_64-linux-ub16.tar.gz
, which is compiled on a stockUbuntu 16.04
system (using Docker) but with g++ 8.1.0 installed from this ppa source:ppa:jonathonf/gcc-8
&ppa:jonathonf/gcc
All 3 of the above binaries contain jemalloc
, libzmq
, Qt5Core
, Qt5Network
(from Qt 5.15.6), and OpenSSL 1.1.1
statically linked. They still require libz2
, libstd++
, and the right libc
version as dynamic libs on your system (but those are usually present if you are on a recent system).
If the first regular -linux
binary fails, try the second one (-linux-ub16
), which should work on older systems, hopefully.
Pre-compiled binaries for Windows
Fulcrum-1.9.5-win64.zip
- Pre-built, statically linked Windows version.- It should "just work" on any Windows 10 or above 64-bit system.
- Includes is a statically-linked
Fulcrum.exe
, built withjemalloc
,libzmq
,Qt 5.15.2
,OpenSSL 3.0.1
, andgcc 11.2.0
. - Additionally,
FulcrumAdmin.exe
is included which is the python script, but made into aonefile .exe
using PyInstaller.- NOTE Windows virus scanners have been known to erroneously identify
FulcrumAdmin.exe
as containing a virus. This is because many heuristic scanners dislike the use ofPyInstaller
onefile .exe's. See: #203. Please ignore this -- we contain no viruses! Also please complain to your virus software vendor about this.
- NOTE Windows virus scanners have been known to erroneously identify
See the .asc
file for signatures; I signed the sha256 hashes of all the release binaries. My gpg public key can be obtained here: https://github.com/Electron-Cash/keys-n-hashes/blob/master/pubkeys/calinkey.txt
Binary builds for macOS coming soon -- Until then you can always build from source!