Commit Graph

17030 Commits

Author SHA1 Message Date
Jude Nelson
d08cd0acfc feat: log when we store a block 2022-10-10 15:37:32 -04:00
Jude Nelson
b5e7ee553c feat: add Error::ChannelClosed() variant to detect thread hangups 2022-10-10 15:36:57 -04:00
Jude Nelson
dc58cfc7b4 feat: add a poison-microblock integration test to verify that stream forks are detected and the offending miner gets punished, and also start working out multi-miner tests for verifying that the chain continues to work well under load. 2022-10-05 23:21:45 -04:00
Jude Nelson
8da076e7c7 docs: document that this is only for helium 2022-10-05 23:21:27 -04:00
Jude Nelson
69ce0ff43d feat: make it so the neon runloop sets up structured global thread state, and blocks/unblocks the miner in response to new burnchain data arriving. This prevents the miner from stalling the node in the event of a slow mempool walk. 2022-10-05 23:20:45 -04:00
Jude Nelson
c1d2132281 fix: send a copy of the exit at block height 2022-10-05 23:20:31 -04:00
Jude Nelson
361a3f29fb feat: untangle and restructure the hairball that was neon_node. Now, all the state for all the threads is clearly identified and encapsulated in structs, as is thread-shared global state. Also, everything is now documented. Neon node should be much more approachable now. 2022-10-05 23:19:37 -04:00
Jude Nelson
9d60275519 fix: accommodate poison-microblock transaction evaluation results 2022-10-05 23:17:43 -04:00
Jude Nelson
567303dd48 chre: make it so the test framework can avoid the need for a downloader pass to unblock mining (since tests tend to only have one node, and thus no downloader passes complete) 2022-10-05 23:17:06 -04:00
Jude Nelson
46a76c6852 feat: make it possible to create a burnchain tx submission client from ongoing commit state (so another thread can be used to send the burnchain commit) 2022-10-05 23:16:24 -04:00
Jude Nelson
a27d9f4269 chore: exit_at_block_height is now a bare Option<u64> instead of a borrowed Option<&'a u64> 2022-10-05 23:16:00 -04:00
Jude Nelson
d2c1c59bf8 feat: use new NetworkResult contructor 2022-10-05 23:15:50 -04:00
Jude Nelson
6b0befd79f feat: NetworkResult now reports the p2p thread's burn height 2022-10-05 23:15:36 -04:00
Jude Nelson
0ea6586c79 feat: add a miner-driven mempool submission function so that the miner can add its own transactions while bypassing the usual checks that would prevent them (such as fees or nonce conflicts). Used to submit poison-microblock transactions 2022-10-05 23:14:52 -04:00
Jude Nelson
ab0d95a95a chore: add MinerAborted error variant 2022-10-05 23:14:38 -04:00
Jude Nelson
b1ceaba5e0 feat: make the miner loop interruptable by checking the status of a shared mutex. Mining is blocked as long as at least one thread wants it blocked, and is unblocked if no threads want it blocked. Blocking/unblocking is idempotent when done from the same thread. 2022-10-05 23:13:33 -04:00
Jude Nelson
d47df1fb9f chore: remove fmt warnings 2022-10-05 23:13:14 -04:00
Jude Nelson
6e81ee4bcc feat: add make_readonly_owned() function that effectively takes a read-only snapshot of the the unconfirmed state. Used by a separate miner thread so it doesn't need to hold the relayer thread's chainstate 2022-10-05 23:12:27 -04:00
Jude Nelson
0b8397b6f5 chore: remove fmt warning 2022-10-05 23:12:15 -04:00
Jude Nelson
0fd8fae1c9 feat: add a query to see if there are any pending unprocessed blocks higher than a certain height; add a read-only DB query to see if we have already processed a Stacks block (so we don't need a write lock on the chainstate); catch microblock forks earlier by checking for common ancestors in addition to sequence numbers; 2022-10-05 23:11:26 -04:00
Jude Nelson
5fe6ff7944 feat: when the chains coordinator is about to start processing a burnchain or stacks block, signal to any running miner thread that it should cease what it's doing. This prevents the miner from holding open the write lock on the underlying DB, and in doing so, blocking the coordinator (whose operation takes precedence since the miner builds off of a chain tip produced by the coordinator) 2022-10-05 23:10:20 -04:00
Jude Nelson
602317677b chore: clean up canonical stacks tip memo code to make it more comprehensible 2022-10-05 23:09:52 -04:00
Jude Nelson
627fc84de5 Merge branch 'master' into feat/interruptable-miner 2022-10-05 22:37:30 -04:00
Jude Nelson
031a51ac91 Merge pull request #3319 from stacks-network/fix/arm64
disable arm64 builds
2022-10-05 16:44:39 +00:00
wileyj
a2a451039a disable arm64 builds 2022-10-04 08:56:12 -07:00
Jude Nelson
378fc1b80e fix: changelog entry for 2.05.0.4.0 2022-09-30 16:42:49 -07:00
Aaron Blankstein
bd54bd758e Merge pull request #3314 from stacks-network/feat/denorm-mempool
Hotfix: denormalize mempool iteration, only deserialize considered txs
2022-09-30 17:47:27 -05:00
Aaron Blankstein
cff3d1e47b ci: use rust stable for code coverage tests 2022-09-30 14:39:54 -05:00
Aaron Blankstein
3b4ca5f3cf set mempool schema version to 5 2022-09-30 14:26:53 -05:00
Aaron Blankstein
f74816fb1e feat: denormalize mempool/fee_estimates table to remove join, only deser txs actually considered 2022-09-30 14:08:02 -05:00
Diwaker Gupta
44e35d3158 Merge pull request #3309 from omahs/patch-1
Fix: typos
2022-09-29 11:46:45 -04:00
omahs
be09336d6d Fix: typos
Fix: typos
2022-09-29 10:40:49 +02:00
Aaron Blankstein
07e1df8e3d Merge pull request #3291 from stacks-network/ci/rust-stable
CI: use rust stable for code coverage tests
2022-09-14 10:05:05 -05:00
Aaron Blankstein
74f0d997be ci: use rust stable for code coverage tests 2022-09-13 11:37:49 -05:00
Jude Nelson
3e8a91733d Merge pull request #3271 from stacks-network/feat/release-2.05.0.3.0
Feat/release 2.05.0.3.0
2022-08-31 18:32:32 +00:00
CharlieC3
9db371195e ci: revert GH actions changes 2022-08-31 14:17:17 -04:00
Jude Nelson
1a34c11508 feat: release 2.05.0.3.0 2022-08-31 13:41:12 -04:00
Jude Nelson
a55b518faf Merge branch 'master' into feat/release-2.05.0.3.0 2022-08-31 13:40:49 -04:00
Aaron Blankstein
c4cfcf6332 Merge pull request #3254 from stacks-network/lex-perf
Cache Lex Matchers
2022-08-25 11:51:12 -05:00
Jude Nelson
000b829976 Merge branch 'develop' into lex-perf 2022-08-22 15:08:24 +00:00
wileyj
e4ab78326e inherit secret 2022-08-19 08:24:51 -07:00
wileyj
b28b81fea2 disabling these PR workflows 2022-08-19 08:22:29 -07:00
wileyj
ca1f5d675c build docker images for quay 2022-08-19 08:10:20 -07:00
wileyj
cb22fdbb0f disable docker builds 2022-08-19 07:25:26 -07:00
wileyj
119815d61f Merge pull request #3255 from stacks-network/feat/2.05.0.3.0-changelog
Update CHANGELOG for 2.05.0.3.0
2022-08-18 11:09:38 -07:00
wileyj
c835cf99b3 Remove line about non-existent PR 3229 2022-08-18 08:07:08 -07:00
wileyj
ce21a95d3a Fix typo 2022-08-16 15:51:43 -07:00
wileyj
f8628cd738 revert formatting changes 2022-08-16 15:51:09 -07:00
wileyj
4c76b401a7 Update CHANGELOG for 2.05.0.3.0 2022-08-16 15:47:21 -07:00
Igor
7402238d9d cache lex_matchers 2022-08-16 14:28:00 -05:00