Improve cryptonote (block and tx) binary read performance

This commit is contained in:
Lee Clagett 2021-01-24 07:42:57 +00:00
parent 0a1ddc2eff
commit 08e4497c6e
29 changed files with 229 additions and 230 deletions

View file

@ -648,11 +648,9 @@ public:
bvc.m_verifivation_failed = true;
cryptonote::block blk;
std::stringstream ss;
ss << sr_block.data;
binary_archive<false> ba(ss);
binary_archive<false> ba{epee::strspan<std::uint8_t>(sr_block.data)};
::serialization::serialize(ba, blk);
if (!ss.good())
if (!ba.good())
{
blk = cryptonote::block();
}
@ -671,11 +669,9 @@ public:
bool tx_added = pool_size + 1 == m_c.get_pool_transactions_count();
cryptonote::transaction tx;
std::stringstream ss;
ss << sr_tx.data;
binary_archive<false> ba(ss);
binary_archive<false> ba{epee::strspan<std::uint8_t>(sr_tx.data)};
::serialization::serialize(ba, tx);
if (!ss.good())
if (!ba.good())
{
tx = cryptonote::transaction();
}