TomZ
ffa9db67a3
Make lookup command look at the blockchain too
2018-09-25 00:07:00 +02:00
TomZ
9aec9e5eeb
Merge branch 'master' into UnspentOutputDB
2018-09-24 21:25:34 +02:00
TomZ
e1c9da3c86
Update benchmark data collection for UTXO
2018-09-24 21:24:40 +02:00
TomZ
a28ffd18bb
Write less txid's to the DB file and write shorter ones.
...
When pruning we sort leafs by txid / output and refrain from
writing the txid repeatedly for outputs of the same tx.
Additionally, use the fact that we only ever get to a leaf via
a bucket and since the first 64 bits of a txid is there, skip
repeating them when writing to disk.
Last, make pruning have different strategies.
This should shrink the utxo by about 40%
2018-09-24 21:24:28 +02:00
TomZ
eb725209e1
Make the doublespend unit test more stable.
2018-09-24 21:23:27 +02:00
TomZ
1e9d9b3ea2
Fix system call, its in bytes not in ints
2018-09-24 21:23:27 +02:00
TomZ
343b0345eb
Remove dead code
2018-09-24 21:23:27 +02:00
TomZ
39154aa625
Make startup/shutdown a bit more logical
...
Actually delete the asio io_service when we are done with it since that
will delete any left over tasks in the queue.
This makes deletion order more predictable.
2018-09-24 21:23:27 +02:00
TomZ
571d84ae0e
Remove dead code.
2018-09-24 21:23:27 +02:00
TomZ
c6acb41cc1
Fix validation engine sometimes hanging on shutdown.
2018-09-24 21:23:27 +02:00
TomZ
4d2f5130d4
Minor logging fix
...
show users that have configured the block size too low that this why
they get no new data.
2018-09-24 21:23:27 +02:00
TomZ
371ac9849c
Fix case where reindex thought it was done
...
After we extract all block-headers from the files and we then shut down
the node this makes sure that we avoid thinking we finished because
there are no more jobs.
This so that a restarting node has the opportunity to continue indexing.
2018-09-24 21:23:27 +02:00
TomZ
16be66df67
Make logging a bit better (block validation)
...
when far behind don't print every single new block / header found,
only print every 1000th or so.
2018-09-24 21:23:27 +02:00
TomZ
e7e4a43084
Make UTXO auto-prune
2018-09-20 22:03:44 +02:00
TomZ
02a7c1d2f6
Refactor pruner to lib from DBA tools
2018-09-20 22:03:44 +02:00
TomZ
13c2a64f56
Identify another usecase of utxo rollback and fix
...
Including unit test
2018-09-20 21:55:07 +02:00
TomZ
88e5e829a5
Re-do the UTXO rollback functionality
...
this is a much less memory-intensive version as it doesn't copy
entire buckets anymore.
2018-09-20 21:55:07 +02:00
TomZ
c55c5ebe32
make lookup command a bit more useful.
2018-09-20 21:55:07 +02:00
TomZ
fb6b7f562d
Add CLI command Lookup (for the utxo)
2018-09-20 21:55:07 +02:00
TomZ
59916e1d01
Fixes in new utxo DB.
...
Fix loading old checkpoints, add fflush etc.
2018-09-20 21:55:07 +02:00
TomZ
087f2aa61e
Add export command
2018-09-20 21:55:07 +02:00
TomZ
41771b8060
Finish up check command
2018-09-20 21:55:07 +02:00
TomZ
9a8bc78700
Move common code to the baseclass and start Check command
2018-09-20 21:55:07 +02:00
TomZ
bf370f121d
Make pruning work
2018-09-20 21:55:07 +02:00
TomZ
6c0f39317f
Copy some data in the prune command
2018-09-20 21:55:07 +02:00
TomZ
44d7dae89a
Start prune command
2018-09-20 21:55:07 +02:00
TomZ
067c196a81
Add -v option to show bucket usage.
2018-09-20 21:55:07 +02:00
TomZ
da90708d7f
Implement proper expansion of files.
2018-09-20 21:55:07 +02:00
TomZ
f81fea1a89
Add InfoCommand to show details of an info file
2018-09-20 21:55:07 +02:00
TomZ
73cb23da3d
start new tool
2018-09-20 21:55:07 +02:00
TomZ
e7d2a52641
Remove proof-of-concept tool
2018-09-20 21:55:07 +02:00
TomZ
4072951b00
Log more
2018-09-20 21:55:07 +02:00
TomZ
4a52fd62ca
Add test for duplicate inputs.
...
This failed on Bitcoin Core (with a crash), best way to show we don't
crash is to write a passing unit test.
2018-09-19 21:39:13 +02:00
TomZ
5aebd68835
Make faster.
2018-09-05 11:16:29 +02:00
TomZ
6c68f9df12
Updates to UnspentOutputDatabase classes
...
* remove unused code
* reorg code to make the access to disk be outside the mutex
* add detection of slow disk-writes and slow down data coming in
* Update and fix the rmHint
2018-09-05 11:16:29 +02:00
TomZ
c17be105cf
Rename variables for clarity of what they do
2018-08-30 18:44:12 +02:00
TomZ
d062dbca39
remove dead code
2018-08-17 23:22:13 +02:00
TomZ
f9f128b1cf
Use signatures lookup cache
2018-08-17 23:13:02 +02:00
TomZ
523bf6d694
Fix and test merge conflicts
2018-08-15 20:38:28 +02:00
TomZ
82a670787e
Merge branch 'master' into UnspentOutputDB
...
Conflicts:
testing/prevector/test_prevector.cpp
testing/test/test_bitcoin.cpp
testing/utxo/test_utxo.cpp
2018-08-15 20:30:45 +02:00
TomZ
62bab30e36
Fix compiler warning
2018-08-15 20:23:36 +02:00
Tom Zander
69e7cd89f8
Merge branch 'master' into 'master'
...
Add CuckooCache
See merge request FloweeTheHub/thehub!6
2018-08-15 18:22:22 +00:00
TomZ
36c564d99f
log Qt version in CMake
2018-08-14 22:44:00 +02:00
TomZ
9117309f6d
Add 'make check' target
2018-08-14 22:44:00 +02:00
TomZ
9bfdb93535
Update gitlab CI system
2018-08-14 22:44:00 +02:00
TomZ
7df238b281
Refactor tests a little
...
Duplicate the test_bitcoin file into the common dir,
I hope to remove the original in future.
Make the common dir a new static lib and create a new
qtestlib based unit test out of the old doublespend unit test.
2018-08-14 22:44:00 +02:00
TomZ
a982b6b3b4
Avoid duplication
2018-08-14 17:00:29 +02:00
TomZ
f1fb278f75
Merge branch 'testlib'
2018-08-14 15:53:43 +02:00
TomZ
c09634c131
Update the gitlab CI config and run the new test
2018-08-14 15:53:03 +02:00
TomZ
98d58df63d
Move utxo tests over to be qtestlib too
2018-08-14 15:53:00 +02:00