From a699a721c3532c5aeb15659032e2b54de6382953 Mon Sep 17 00:00:00 2001 From: omahs <73983677+omahs@users.noreply.github.com> Date: Tue, 14 Feb 2023 02:18:42 +0100 Subject: [PATCH 1/2] docs: Fix typos (#124) --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e3d61a65..affaa8ef 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ TODO: explain future plan to leverage CRDTs for rollback checkpoints. ## Accessing the Data -_Scrolls_ doesn't provide any custom client for accesing the data, it relies on the fact that the canonical clients of the selected backends are ubiquitous, battle-tested and relatively easy to use. By knowing the structure of the stored keys/values, a developer should be able to query the data directly from Redis. +_Scrolls_ doesn't provide any custom client for accessing the data, it relies on the fact that the canonical clients of the selected backends are ubiquitous, battle-tested and relatively easy to use. By knowing the structure of the stored keys/values, a developer should be able to query the data directly from Redis. TODO: reference specs for each key/value @@ -223,7 +223,7 @@ Assuming you're using Redis as a storage backend (only one available ATM), we re {b'2548228522837ea580bc55a3e6a09479deca499b5e7f3c08602a1f3191a178e7:20', b'04086c503512833c7a0c11fc85f7d0f0422db9d14b31275b3d4327c40c6fd73b:25'} ``` - The Redis operation being used is `smembers` which return the list of members of a set stored under a particular key. In this case, we query by the value `c1.addr1w8tqqyccvj7402zns2tea78d42etw520fzvf22zmyasjdtsv3e5rz`, where `c1` is the key prefix specified in the config for our particular collection and `addr1w8tqqyccvj7402zns2tea78d42etw520fzvf22zmyasjdtsv3e5rz` is the address we're intereted in querying. The response from redis is the list of UTXOs (in the format `{tx-hash}:{output-index}`) that are associated with that particular address. + The Redis operation being used is `smembers` which return the list of members of a set stored under a particular key. In this case, we query by the value `c1.addr1w8tqqyccvj7402zns2tea78d42etw520fzvf22zmyasjdtsv3e5rz`, where `c1` is the key prefix specified in the config for our particular collection and `addr1w8tqqyccvj7402zns2tea78d42etw520fzvf22zmyasjdtsv3e5rz` is the address we're interested in querying. The response from redis is the list of UTXOs (in the format `{tx-hash}:{output-index}`) that are associated with that particular address. ### How do I read the data using NodeJS? @@ -231,6 +231,6 @@ TODO ### What is "swarm mode"? -Swarm mode is a way to speed up the process of rebuidling collection from scratch by splitting the tasks into concurrent instances of the _Scrolls_ daemon by partitioning the history of the chain into smaller fragments. +Swarm mode is a way to speed up the process of rebuilding collection from scratch by splitting the tasks into concurrent instances of the _Scrolls_ daemon by partitioning the history of the chain into smaller fragments. ![swarm mode diagram](assets/swarm.svg) From 9c7d27f132ae65f21538ba56e9d85be3391a9f7a Mon Sep 17 00:00:00 2001 From: Santiago Carmuega Date: Tue, 14 Feb 2023 03:48:59 +0100 Subject: [PATCH 2/2] fix: Skip byron addresses (#134) --- src/reducers/addresses_by_stake.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/reducers/addresses_by_stake.rs b/src/reducers/addresses_by_stake.rs index cc70aef2..d6f95fd8 100644 --- a/src/reducers/addresses_by_stake.rs +++ b/src/reducers/addresses_by_stake.rs @@ -32,7 +32,12 @@ impl Reducer { address: Address, output: &mut super::OutputPort, ) -> Result<(), gasket::error::Error> { - let full_address = address.to_bech32().or_panic()?; + // exit early since we don't care about Byron + if matches!(address, Address::Byron(_)) { + return Ok(()); + } + + let full_address = address.to_string(); let stake_address = any_address_to_stake_bech32(address); let stake_address = match stake_address {