Skip to content
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

wallet2, RPC: Optimize RPC calls for periodic refresh from 3 down to 1 call [release-v0.18] #8800

Merged
merged 2 commits into from
Aug 17, 2023

Conversation

rbrunner7
Copy link
Contributor

This is the 0.18 release branch version of my PR #8076 already merged into master, with two commits, the main one from me and a second one with further improvements from @j-berman.

Conflicts that I had to resolve were minimal.

@jeffro256
Copy link
Contributor

Looks good to me! Matches #8076

rbrunner7 and others added 2 commits July 9, 2023 08:30
…[release-v0.18]

- `/getblocks.bin` respects the `RESTRICTED_TX_COUNT` (=100) when
returning pool txs via a restricted RPC daemon.
- A restricted RPC daemon includes a max of `RESTRICTED_TX_COUNT` txs
in the `added_pool_txs` field, and returns any remaining pool hashes
in the `remaining_added_pool_txids` field. The client then requests
the remaining txs via `/gettransactions` in chunks.
- `/gettransactions` no longer does expensive no-ops for ALL pool txs
if the client requests a subset of pool txs. Instead it searches for
the txs the client explicitly requests.
- Reset `m_pool_info_query_time` when a user:
  (1) rescans the chain (so the wallet re-requests the whole pool)
  (2) changes the daemon their wallets points to (a new daemon would
      have a different view of the pool)
- `/getblocks.bin` respects the `req.prune` field when returning
pool txs.
- Pool extension fields in response to `/getblocks.bin` are optional
with default 0'd values.
@rbrunner7
Copy link
Contributor Author

rbrunner7 commented Jul 9, 2023

Rebased to latest release branch. Only trivial merge conflicts, and no changes in my code; the "Compare" function does not makes that easy to verify however because quite a number of changes came in through the rebase.

Copy link
Collaborator

@selsta selsta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested on master branch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants