Michal Nazarewicz
Michal Nazarewicz
The difference is caused by how signer of the transaction is chosen. In the fast test signers are chosen in sequence from all the available accounts. In the slow tests,...
Perhaps I’ve spoken too soon. The above is correct and changing `random_unused_account` implementation does speed up the slow test but the opposite does not slow down the fast test: ```...
It’s still not clear to me why changing the fast code to use random accounts doesn’t slow it down though. There are some differences how the accounts are set up...
The tests create 200k accounts and all transactions are signed by one of them. The test uses each account only once. Sequential reads indeed seem like a plausible explanation though...
Turns out ``` diff --git a/genesis-tools/genesis-populate/src/lib.rs b/genesis-tools/genesis-populate/src/lib.rs index d3a9793d..3eceddfa 100644 --- a/genesis-tools/genesis-populate/src/lib.rs +++ b/genesis-tools/genesis-populate/src/lib.rs @@ -29,7 +29,7 @@ use near_store::{ use nearcore::{get_store_path, NightshadeRuntime}; fn get_account_id(account_index: u64) -> AccountId { -...
There’s only a small difference: test{} near_{}_{} Trie::retrieve_raw_bytes : 1832596 → 1944114 TrieCachingStorage : 2118923 → 2232747 TrieCachingStorage (cached): 2 → 0 TrieCachingStorage (missed): 2118921 → 2232747 RocksDB::get : 2322764...
> The difference seems to be that in the `rocksdb::Version::Get` the slow version does everything that the fast version does, _plus_ `rocksdb::TableCache::Get`. Yep, this is exactly true. RocksDB has this...
Discussion on Zulip: https://near.zulipchat.com/#narrow/stream/313099-pagoda.2Fstorage/topic/Using.20variant.20name.20as.20col_name @Longarithm, this might mess with any flat state tests you’re doing since it renames the FlatState column family.
Another way to view it is that disk corruption is just one possible corruption. Really we need a system which doesn’t penalise validators for a cosmic rays bit flipping data...
This is not limited to GitHub and happens on many websites. Returning from the editor, the text input is updated but the website doesn’t ‘notice’ that the text has changed....