*хочется крайне странного, хочется тегировать запросы информацией о том, какие таблицы / строки в каких таблицах лочит запрос. Для транзакций собирать список того, что залочат все запросы. Потом автоматом собирать все транзакции в коде, в которых есть пересечение по залоченным таблицам и проверять, что нет дедлоков. Я нормальный?
чот я вспоминаю, как делал что-то похожее - но там запросы группировались таким образом, что бы дедлоки в принципе не могли возникать
Это вообще был ад, у там в логах прилетал иногда deadlock, в котором 5-7 транзакций перемешивались, и надо было этот узел развязать, чтобы понять. Зато я придумал как сделать тесты, которые будут проверять не лочит ли запрос лишнее
тогда в моём случае было проще, так это был просто поток update/insert/delete в разные таблицы. в полноценном sql в один запрос можно что угодно засунуть, даже игру life на рекурсивных CTE запросах