-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
merge stacks signers into develop #700
Draft
rafaelcr
wants to merge
30
commits into
develop
Choose a base branch
from
stacks-signers
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Changes how redis tests are performed so they run with a dockerized integration environment instead of relying on a local `redis-server` install controlled via Rust code. Adds tasks and launch configs to VScode so they are easier to launch and adjusts the CI to use it as well.
Starts listening to the new `/stackerdb_chunks` Stacks node event and parses the incoming message. Parsers are taken from the `stacks_codec` crate, which has been updated with the latest serializers. For future PRs: * Start integrating the signer messages into the predicates framework * Store signer messages in a local SQLite DB for replay * Expand unit tests to include full Stacks node integration tests --------- Co-authored-by: Matthew Little <zone117x@gmail.com>
Expands the TS client to include new signer messages, and adds missing `signer_bitvec` and `signer_signatures` fields to block metadata.
Fixes the `slot_id` and `slot_version` field sizes so the signer pubkey is calculated correctly
Creates a local sqlite DB for signer messages (`stacks_signers.sqlite`) and stores all messages in it so we can later retrieve them via predicate scans.
## [1.9.0-stacks-signers.1](v1.8.0...v1.9.0-stacks-signers.1) (2024-10-25) ### Features * add various new nakamoto block fields to `/new_block` ingestion and `StacksPayload` ([#659](#659)) ([f48cda5](f48cda5)) * include recovered signer pubkeys in new block payload ([#662](#662)) ([b5ad4ba](b5ad4ba)) * include signer messages in Stacks predicate payloads ([#656](#656)) ([aee14bc](aee14bc)) * parse `/stackerdb_chunks` Stacks node event ([#653](#653)) ([e44d84a](e44d84a)) * store signer messages in local sqlite database ([#664](#664)) ([d12acd9](d12acd9)) * support tenure-height in block messages ([#661](#661)) ([99e5a61](99e5a61)) * **ts-client:** add persisted predicates and periodic health check ([#658](#658)) ([535226a](535226a)) * **ts-client:** add signer messages to stacks payloads ([#657](#657)) ([ff66bb2](ff66bb2)) ### Bug Fixes * add a configurable max timeout for outgoing predicate payload requests ([#642](#642)) ([6c1dfa9](6c1dfa9)), closes [#643](#643) * increase stacks event server body size limit to 500MB ([#660](#660)) ([21234c9](21234c9)) * return 500 status code to Stacks node when event ingestion fails ([#648](#648)) ([63c753c](63c753c)), closes [#646](#646) * signer pubkey calculation ([#665](#665)) ([cc93873](cc93873)) * update SignerMessage deserializing ([#663](#663)) ([71364c1](71364c1)) * validate ts client predicates before registering ([#639](#639)) ([2d08f72](2d08f72))
## [1.9.0-stacks-signers.2](v1.9.0-stacks-signers.1...v1.9.0-stacks-signers.2) (2024-10-25) ### Features * add mock signer message support ([#669](#669)) ([ad5fd54](ad5fd54))
## [1.9.0-stacks-signers.3](v1.9.0-stacks-signers.2...v1.9.0-stacks-signers.3) (2024-10-25) ### Features * add mock signature pubkey ([#670](#670)) ([c414d79](c414d79))
## [1.9.0-stacks-signers.4](v1.9.0-stacks-signers.3...v1.9.0-stacks-signers.4) (2024-10-25) ### Bug Fixes * bump stacks codec ([3c117b5](3c117b5))
## [1.9.0-stacks-signers.5](v1.9.0-stacks-signers.4...v1.9.0-stacks-signers.5) (2024-10-25) ### Bug Fixes * mock signature retrieval ([#671](#671)) ([8bb59c1](8bb59c1))
Workaround for bug in stacks-core event emitter http code. Regression in stacks-core where http requests must now have their POST body read before closing the connection. ``` chainhook-1 | {"msg":"POST /drop_mempool_tx","level":"DEBUG","ts":"2024-10-30T10:41:34.030361652Z"} stacks-node-1 | WARN [1730284894.031170] [testnet/stacks-node/src/event_dispatcher.rs:496] [relayer-http://0.0.0.0:20443/] Event dispatcher: connection or request failed to chainhook:20455 - Custom { kind: Other, error: "Failed to send 8192 bytes: \"Failed to send socket data\"" }, backoff: 158.191s, attempts: 10 ``` Chainhook ignored some events by returning a 200 http response and closing the connection after reading the http request headers, and ignoring the request body.
## [1.9.0-stacks-signers.6](v1.9.0-stacks-signers.5...v1.9.0-stacks-signers.6) (2024-10-31) ### Bug Fixes * read stacks-core http event POST payloads for ignored events ([#673](#673)) ([a01470e](a01470e))
propagate error when storing peer_info
## [1.9.0-stacks-signers.7](v1.9.0-stacks-signers.6...v1.9.0-stacks-signers.7) (2024-11-07) ### Bug Fixes * propagate error when trying to store peer info ([1bc949a](1bc949a))
Also, remove the old code that attempted to re-import a TSV every 32 Stacks blocks Fixes #677
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.