Commit Graph

425 Commits

Author SHA1 Message Date
Sergi Delgado Segura
b0bcffd825 Update CONTRIBUTING.md 2020-01-15 12:52:49 +01:00
Sergi Delgado Segura
fa13fb7611 Merge pull request #83 from sr-gi/64-data-to-disk
Removes unnecessary data from memory
2020-01-15 12:46:50 +01:00
Sergi Delgado Segura
a49f86dd88 Merge branch 'master' into 64-data-to-disk 2020-01-15 12:44:29 +01:00
Sergi Delgado Segura
72336f3309 Merge pull request #82 from sr-gi/chainmonitor
Implements the ChainMonitor
2020-01-15 11:40:43 +01:00
Sergi Delgado Segura
42a957f555 Merge branch 'master' into chainmonitor 2020-01-15 11:38:32 +01:00
Sergi Delgado Segura
0519ea9ca8 Merge pull request #79 from orbitalturtle/isolate-config
Isolate pisa config options
2020-01-15 10:25:51 +01:00
Sergi Delgado Segura
6bf2cb5379 Merge branch 'master' into isolate-config 2020-01-15 10:15:48 +01:00
Sergi Delgado Segura
36eaa93dc4 Merge pull request #65 from orbitalturtle/pisa-cli-modularity
Refactor add_appointment cli code
2020-01-15 10:14:49 +01:00
Turtle
bd41c8b862 Add unit tests for remaining cli functions 2020-01-15 03:35:34 -05:00
Turtle
3775b78500 Fix filename typo in cli README 2020-01-15 03:35:34 -05:00
Turtle
39208e4b14 Test new functions split off in pisa_cli 2020-01-15 03:35:34 -05:00
Turtle
40d7ca1912 Refactor add_appointment cli code 2020-01-15 03:35:31 -05:00
Turtle
1188ddda17 Add load_config function 2020-01-15 03:10:21 -05:00
Turtle
e22bd89534 Test load_config functions 2020-01-15 03:10:13 -05:00
Sergi Delgado Segura
ae772bf91b Adds missing tests
Tests that given a block hash and the two monitor threads running, the hash is only notified to the subscribers once (by the first thread that notices it)
2020-01-13 15:48:52 +01:00
Sergi Delgado Segura
eb71ab8fc4 Adds missing args on docs and adds polling_delta parm to monitor_chain 2020-01-13 15:42:27 +01:00
Sergi Delgado Segura
1a26d7d6a3 Fixes typos based on @orbitalturtle comments 2020-01-13 15:31:54 +01:00
Turtle
c22bf220f0 Move config options used by inspector to the constructor 2020-01-13 02:23:07 -05:00
Turtle
7aa74d5953 Move config options used by watcher and responder to the constructor 2020-01-13 02:23:02 -05:00
Sergi Delgado Segura
db46444348 Adapts the tests to work with data in db instead of memory 2020-01-09 18:20:00 +01:00
Sergi Delgado Segura
5196f5df29 Removes most appointment data from memory
Data used to be stored both in memory and disk (db). This commits modifies the Watcher, Responder and Cleaner so they only keep the needed maps and load information from disk when necessary.
2020-01-09 18:18:26 +01:00
Sergi Delgado Segura
34636ab8e0 Unit tests for the db_manager triggered_flag functions 2020-01-09 18:18:12 +01:00
Sergi Delgado Segura
d9cccfb26a Refactors the API to used the new triggered functions 2020-01-09 18:15:43 +01:00
Sergi Delgado Segura
f6af67be87 Refactors db_manager to have a new entry type for the triggered appointmnets. Adds methods to create, load a and remove this new entries 2020-01-09 18:14:19 +01:00
Sergi Delgado Segura
15f9a9efe1 Removes triggered from to_json
Triggered has been deatached from the appointment having it's own entry into the db, so not part of the appointment data anymore
2020-01-09 18:13:24 +01:00
Sergi Delgado Segura
49657ccbfc Merge pull request #81 from sr-gi/chainmaester
Adds basic logic to detect forks while offline
2020-01-08 09:55:39 +01:00
Sergi Delgado Segura
dfc90cd930 Sets ChainMonitor terminate on shutdown and removes unused imports 2020-01-07 16:31:17 +01:00
Sergi Delgado Segura
40e656dcd3 ChainMonitor unit tests 2020-01-07 16:09:49 +01:00
Sergi Delgado Segura
31b4c2e993 Bug fix and moves update condition to update_state
The tip update was performed in the wrong order, so tips never made it to last_tips
2020-01-07 16:08:43 +01:00
Sergi Delgado Segura
f10c3c46eb Updates tests to use ChainMonitor as global fixture 2020-01-07 16:08:10 +01:00
Sergi Delgado Segura
9bb69d1f5a Uses conf parameters instead of hardcoded values for the ChainMonitor and includes docstrings 2020-01-06 13:33:17 +01:00
Sergi Delgado Segura
b2272aa4ea Adds ChainMonitor config parameters 2020-01-06 13:32:25 +01:00
Sergi Delgado Segura
e5514cefce Updates old docs/comments regarding zmq 2020-01-06 12:27:02 +01:00
Sergi Delgado Segura
069e15fdba Updates current tests to work with chain_monitor instead of zmq_sub 2020-01-03 13:36:52 +01:00
Sergi Delgado Segura
3889d30e31 Minor refactor
Runs chain_monitor as daemon so it terminates along with the main thread. Reorders attack_responder so it is in the same stanza as attack_watcher
2020-01-03 13:35:52 +01:00
Sergi Delgado Segura
c594018dce Bug fix: Properly initializes Responder 2020-01-03 11:37:26 +01:00
Sergi Delgado Segura
8fab59975f Adds basic ChainMonitor to the system
ChainMonitor is the actor in charge of checking new blocks. It improves from the previous zmq_subscriber by also doing polling and, therefore, making sure that no blocks are missed.

Documentation and tests are still required. Partially covers #31
2020-01-02 16:15:27 +01:00
Sergi Delgado Segura
747f4bb888 Simplifies get_missed_blocks
get_missed_blocks is always called after calling find_last_common_ancestor, so the later was called twice returning the same value as the input. It does not seem to be any reason for it atm.
2020-01-02 12:05:07 +01:00
Sergi Delgado Segura
a5e9f1b874 Removes unused imports 2020-01-02 11:23:34 +01:00
Sergi Delgado Segura
3ff10ea1bf Makes all BLockProcessor methods static 2020-01-02 11:21:01 +01:00
Sergi Delgado Segura
5ce5936fc0 Fixes bootstrap from backed up data 2019-12-27 12:22:07 +01:00
Sergi Delgado Segura
57d5aa4940 Adds missing block processor tests 2019-12-27 11:12:30 +01:00
Sergi Delgado Segura
23078f6c6c Updates circleci with bitcoind_mock 2019-12-23 07:09:04 +01:00
Sergi Delgado Segura
ea681850a8 Adds some ChainMaester functionallity to the BlockProcessor
The ChainMaester functionallity has been split into the new bitcoind mock and the blockprocessor (there's ChainMaester no more 😢)
2019-12-23 06:45:24 +01:00
Sergi Delgado Segura
2b0945f1ba Updates tests with external bitcoind mock 2019-12-23 06:43:54 +01:00
Sergi Delgado Segura
ef92e2bf6f Removes bitcoind_mock from the codebase
It can be now found at https://github.com/sr-gi/bitcoind_mock/
2019-12-22 10:29:28 +01:00
Sergi Delgado Segura
1210061fb3 Merge pull request #78 from sr-gi/verbose-test
Enables stdout for unit tests
2019-12-17 17:24:33 +01:00
Sergi Delgado Segura
fffcb39124 Enables stdout for unit tests
By default pytests does not capture stdout, but it can do with -s. It is nice to have the option to verbose the tests if needed
2019-12-17 17:22:40 +01:00
Sergi Delgado Segura
d4e7e999e1 Sets sim verbose to False for unit tests 2019-12-17 17:21:48 +01:00
Sergi Delgado Segura
b82065120c Adds verbose flag to show/hide block generation on stdout 2019-12-17 17:21:21 +01:00