Для моей реализации конкретная запись должна выполняться массово и без возможности вмешательства других.
Я сказал, что две конкурирующие транзакции таким образом приведут к тому, что первая заблокирует вторую, а вторая может завершиться или не завершиться после первой.
Разместите документы, подтверждающие это. Кроме того, что именно происходит со второй транзакцией, если первая блокируется? Будет ли он поставлен в очередь, сбой или какая-то комбинация?
Если это невозможно подтвердить, следует ли установить для этой транзакции уровень изоляции SERIALIZABLE
? Если да, то как это можно сделать с помощью подготовленных операторов libpqxx?
Если транзакции сериализуются, будет ли вторая транзакция терпеть неудачу или будет поставлена в очередь до завершения первой?
Если какой-либо из них не работает, как это можно обнаружить с помощью libpqxx?