getumbrel / docker-electrs Goto Github PK
View Code? Open in Web Editor NEWA Docker container for electrs
License: MIT License
A Docker container for electrs
License: MIT License
I'm running umbrel on an IBM Z (mainframe, 64-bit, big endian) running Ubuntu 20.04.2 LTS. Everything is running fine, except electrs. electrs effectively stops running (sleeps indefinitely) after the following error message:
thread 'bulk_index' panicked at 'index 2497364531 out of range for slice of length 133729722', src/libcore/slice/mod.rs:2674:5
Starting from a new node, electrs runs and waits for bitcoin to fully sync:
...
electrs | WARN - wait until IBD is over: headers=688177 blocks=688052 progress=0.9994805920510615
electrs | WARN - wait until IBD is over: headers=688177 blocks=688058 progress=0.9995014055113616
...
once bitcoin is sync'd, electrs starts building the index:
electrs | DEBUG - opening DB at "/data/db/mainnet"
electrs | TRACE - latest indexed blockhash: 0000000000000000000000000000000000000000000000000000000000000000
electrs | INFO - listing block files at "/data/.bitcoin/blocks/blk*.dat"
electrs | INFO - indexing 2627 blk*.dat files
electrs | DEBUG - found 0 indexed blocks
electrs | TRACE - downloading 100000 block headers
...
electrs | DEBUG - applying 688073 new headers from height 0
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00000.dat": 0 rows
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00001.dat": 0 rows
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00002.dat": 0 rows
the following errors get logged and electrs sleeps forever after the last one:
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00040.dat": 0 rows
electrs | thread 'bulk_index' panicked at 'index 1457594409 out of range for slice of length 134058325', src/libcore/slice/mod.rs:2674:5
...
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00077.dat": 0 rows
electrs | thread 'bulk_index' panicked at 'index 3347378801 out of range for slice of length 133998011', src/libcore/slice/mod.rs:2674:5
...
electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00260.dat": 0 rows
electrs | thread 'bulk_index' panicked at 'index 613586893 out of range for slice of length 133644501', src/libcore/slice/mod.rs:2674:5
...electrs | TRACE - indexed "/data/.bitcoin/blocks/blk00352.dat": 0 rows
electrs | thread 'bulk_index' panicked at 'index 2497364531 out of range for slice of length 133729722', src/libcore/slice/mod.rs:2674:5
Any ideas what might be wrong, where I can start looking for the problem? I reproduced this several times, even trying different 3 different OS's to build the electrs image.
If it proves too elusive, can run something other than electrs?
Thanks for any pointers.
--joe
The logs from electrs don't have timestamps.
https://github.com/getumbrel/docker-electrs/blob/master/Dockerfile#L30 uses SIGINT which causes the compaction on the data to happen at every startup ... which is not great.
This should be just SIGTERM, see romanz/electrs#64 (comment)
Umbrel is running an older version of Electrs v0.9.14. Update Electrs to the newest version v0.10.0.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.