diff options
| author | Crypto City <cryptocity@example.com> | 2021-11-05 19:18:10 +0000 |
|---|---|---|
| committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2022-05-13 17:43:22 +0000 |
| commit | 38cdf01c643df677a0c65b8932d62c3f6eb4e62b (patch) | |
| tree | fa9b08fcfcbb2d98ac2095d0f4a38fbee715dfad /src/wallet/ringdb.h | |
| parent | 353cd5355e4935ccff8e9e6c83385f81d3ce67e8 (diff) | |
| download | monzero-core-38cdf01c643df677a0c65b8932d62c3f6eb4e62b.tar.gz monzero-core-38cdf01c643df677a0c65b8932d62c3f6eb4e62b.tar.xz monzero-core-38cdf01c643df677a0c65b8932d62c3f6eb4e62b.zip | |
wallet2: speedup large tx construction: batch ringdb lookups
3.3 seconds -> 2.8 seconds on a test case
Diffstat (limited to 'src/wallet/ringdb.h')
| -rw-r--r-- | src/wallet/ringdb.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/wallet/ringdb.h b/src/wallet/ringdb.h index 7b02f4605..bdecdba37 100644 --- a/src/wallet/ringdb.h +++ b/src/wallet/ringdb.h @@ -49,6 +49,7 @@ namespace tools bool remove_rings(const crypto::chacha_key &chacha_key, const std::vector<crypto::key_image> &key_images); bool remove_rings(const crypto::chacha_key &chacha_key, const cryptonote::transaction_prefix &tx); bool get_ring(const crypto::chacha_key &chacha_key, const crypto::key_image &key_image, std::vector<uint64_t> &outs); + bool get_rings(const crypto::chacha_key &chacha_key, const std::vector<crypto::key_image> &key_images, std::vector<std::vector<uint64_t>> &all_outs); bool set_ring(const crypto::chacha_key &chacha_key, const crypto::key_image &key_image, const std::vector<uint64_t> &outs, bool relative); bool set_rings(const crypto::chacha_key &chacha_key, const std::vector<std::pair<crypto::key_image, std::vector<uint64_t>>> &rings, bool relative); |
