mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-12-10 04:33:59 +01:00
4676a4fb5b[addrman] Don't repeat "Bucketing method was updated" log multiple times (John Newbery)436292367c[addrman] Improve serialization comments (John Newbery)ac3547eddd[addrman] Improve variable naming/code style of touched code. (John Newbery)a5c9b04959[addrman] Don't rebucket new table entries unnecessarily (John Newbery)8062d928ce[addrman] Rename asmap version to asmap checksum (John Newbery)009b8e0fdf[addrman] Improve variable naming/code style of touched code. (John Newbery)b4c5fda417[addrman] Fix new table bucketing during unserialization (John Newbery) Pull request description: This fixes three issues in addrman unserialization. 1. An addrman entry can appear in up to 8 new table buckets. We store this entry->bucket indexing during shutdown so that on restart we can restore the entries to their correct buckets. Commitec45646de9broke the deserialization code so that each entry could only be put in up to one new bucket. 2. Unserialization may result in an entry appearing in a 9th bucket. If the entry already appears in 8 buckets don't try to place it in another bucket. 3. We unnecessarily rebucket when reading a peers.dat with file version 1. Don't do that. ACKs for top commit: vasild: ACK4676a4fb5bglozow: re-ACK4676a4fb5b, changes were a rename, comments, and removing repeat-logging. naumenkogs: ACK4676a4flaanwj: Code review ACK4676a4fb5bdhruv: ACK4676a4fb5bryanofsky: Code review ACK4676a4fb5b. I'm not previously familiar with this code but all the changes here do make sense and seem like improvements. Left some notes and comments, but they aren't important so feel to ignore. Tree-SHA512: b228984f6dec5910be23c3740ae20258da33bcf66ceb7edb10e5a53163450f743bab349e47f09808b7e8d40f27143119ec3e0981d7e678aa494d8559a1c99c23