Files
bitcoin/src
merge-script d2dd1697ce Merge bitcoin/bitcoin#22904: sync, log: inline lock contention logging macro to fix duration, improve BCLog::LogMsg()
f530202353 Make unexpected time type in BCLog::LogMsg() a compile-time error (Martin Ankerl)
bddae7e7ff Add util/types.h with ALWAYS_FALSE template (MarcoFalke)
498b323425 log, timer: improve BCLog::LogMsg() (Jon Atack)
8d2f847ed9 sync: inline lock contention logging macro to fix time duration (Jon Atack)

Pull request description:

  Follow-up to #22736.

  The first commit addresses the issue identified and reported by Martin Ankerl in https://github.com/bitcoin/bitcoin/pull/22736#discussion_r703019629 to fix the lock contention duration reporting.

  The next three commits make improvements to the timer code in `BCLog::LogMsg()` and add `util/types.h` with an `ALWAYS_FALSE` template, that springboard from https://github.com/bitcoin/bitcoin/pull/22736#discussion_r702747920 by Marco Falke.

ACKs for top commit:
  martinus:
    re-ACK f530202353. I ran a fully synced node for about a day. My node was mostly idle though so not much was going on. I [wrote a little script](https://github.com/martinus/bitcoin-stuff/blob/main/scripts/parse-debuglog-contention-single.rb) to parse the `debug.log` and summarize the output to see if anything interesting was going on, here is the result:
  theStack:
    ACK f530202353

Tree-SHA512: 37d093eac5590e1b5846ab5994d0950d71e131177d1afe4a5f7fcd614270f977e0ea117e7af788e9a74ddcccab35b42ec8fa4db3a3378940d4988df7d21cdaaa
2021-09-09 15:55:03 +02:00
..
2020-12-08 19:26:30 +01:00
2020-11-19 15:48:24 +01:00
2021-06-20 16:56:07 +02:00
2021-09-07 11:05:16 +02:00
2021-09-07 11:05:16 +02:00
2021-07-30 11:21:51 +02:00
2021-07-30 11:21:51 +02:00
2020-12-31 09:45:41 +01:00
2021-03-17 17:59:22 -07:00
2021-03-17 17:59:22 -07:00
2020-12-31 09:45:41 +01:00
2021-06-03 13:53:31 +02:00
2021-09-07 11:05:16 +02:00
2021-01-07 18:07:09 +02:00
2021-01-04 12:31:31 +08:00
2021-08-26 10:44:26 +02:00
2021-09-07 11:05:16 +02:00
2021-09-07 10:44:48 +02:00
2021-07-30 11:24:59 +02:00
2021-04-06 14:50:17 +08:00
2020-12-31 09:45:41 +01:00
2020-12-31 09:45:41 +01:00
2021-08-23 21:38:34 -04:00
2020-04-30 09:19:14 -04:00
2020-10-12 12:14:53 -07:00
2020-04-16 13:33:09 -04:00