diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-07-02 22:41:15 +0100 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-08-07 09:33:04 +0100 |
commit | 5be43fcdbad5ed034b07831473e07f47b7b10947 (patch) | |
tree | 260422ebe0f60763ad1d61c610c77805ffa25a72 /tests/core_proxy | |
parent | Merge pull request #2159 (diff) | |
download | monero-5be43fcdbad5ed034b07831473e07f47b7b10947.tar.xz |
cryptonote_protocol_handler: sync speedup
A block queue is now placed between block download and
block processing. Blocks are now requested only from one
peer (unless starved).
Includes a new sync_info coommand.
Diffstat (limited to 'tests/core_proxy')
-rw-r--r-- | tests/core_proxy/core_proxy.cpp | 13 | ||||
-rw-r--r-- | tests/core_proxy/core_proxy.h | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/tests/core_proxy/core_proxy.cpp b/tests/core_proxy/core_proxy.cpp index c12b8e9a7..366937e1d 100644 --- a/tests/core_proxy/core_proxy.cpp +++ b/tests/core_proxy/core_proxy.cpp @@ -185,6 +185,19 @@ bool tests::proxy_core::handle_incoming_tx(const cryptonote::blobdata& tx_blob, return true; } +bool tests::proxy_core::handle_incoming_txs(const std::list<blobdata>& tx_blobs, std::vector<tx_verification_context>& tvc, bool keeped_by_block, bool relayed, bool do_not_relay) +{ + tvc.resize(tx_blobs.size()); + size_t i = 0; + for (const auto &tx_blob: tx_blobs) + { + if (!handle_incoming_tx(tx_blob, tvc[i], keeped_by_block, relayed, do_not_relay)) + return false; + ++i; + } + return true; +} + bool tests::proxy_core::handle_incoming_block(const cryptonote::blobdata& block_blob, cryptonote::block_verification_context& bvc, bool update_miner_blocktemplate) { block b = AUTO_VAL_INIT(b); diff --git a/tests/core_proxy/core_proxy.h b/tests/core_proxy/core_proxy.h index 58645edb5..35e88081b 100644 --- a/tests/core_proxy/core_proxy.h +++ b/tests/core_proxy/core_proxy.h @@ -75,6 +75,7 @@ namespace tests bool have_block(const crypto::hash& id); bool get_blockchain_top(uint64_t& height, crypto::hash& top_id); bool handle_incoming_tx(const cryptonote::blobdata& tx_blob, cryptonote::tx_verification_context& tvc, bool keeped_by_block, bool relayed, bool do_not_relay); + bool handle_incoming_txs(const std::list<cryptonote::blobdata>& tx_blobs, std::vector<cryptonote::tx_verification_context>& tvc, bool keeped_by_block, bool relayed, bool do_not_relay); bool handle_incoming_block(const cryptonote::blobdata& block_blob, cryptonote::block_verification_context& bvc, bool update_miner_blocktemplate = true); void pause_mine(){} void resume_mine(){} |