Test Details Overview

Fix LMDB reader slot exhaustion in `wallet.password_race_corrupt_seed` (#5204)

The test started 300 threads that rekey or enter the password. Each
password attempt and successful rekey refreshes the representative keys
cache, which opens a wallet read transaction before waiting on the
wallets mutex, so every queued thread holds one of the 126 reader slots
LMDB provides by default. On CI enough threads queued up to exhaust
them and the test aborted with MDB_READERS_FULL.

Ten groups of three threads stay well below the limit. The wallet write
transaction serializes the operations either way, so the extra threads
added queueing, not interleavings.

__________

Type: commit

Hash: 3d0e33a231e4ff7477e04c8993743549afa66565

Created: yesterday

__________

gr0v1ty/nano-node:3d0e33a231e4ff7477e04c8993743549afa66565

Test Results

Test Case Status Duration Median Deviation Log Graph
5n4pr_conf_10k_bintree PASS 120 s 4.0 s - Show
5n4pr_conf_10k_change PASS 151 s 0.0 s - Show
5n4pr_conf_change_dependant PASS 108 s -6.0 s - -
5n4pr_conf_change_independant FAIL 1581 s 1463.0 s Show -
5n4pr_conf_send_dependant PASS 114 s -2.0 s - -
5n4pr_conf_send_independant PASS 110 s -3.0 s - -
5n4pr_rocks_10k_bintree PASS 115 s -3.0 s - -
5n4pr_rocks_10k_change PASS 161 s -8.0 s - -