Вопросы по теме 'database-deadlocks'

Многопоточность — предотвращение и устранение взаимоблокировок базы данных
Я ищу хорошую стратегию работы с взаимоблокировками базы данных из приложения Java 6; несколько параллельных потоков потенциально могут выполнять запись в одну и ту же таблицу одновременно. База данных (Ingres RDMBS) случайным образом уничтожит один...
6553 просмотров

У меня есть данные о тупиках, но я не могу понять, почему они возникают
Я получаю много тупиковых ситуаций в моем большом веб-приложении. Как автоматически повторно запустить заблокированную транзакцию ? (ASP.NET MVC / SQL Server) Здесь я хотел повторно запустить тупиковые транзакции, но мне сказали избавиться...
6300 просмотров

SqlException: тупик
У меня возникают эти два исключения, когда я пытаюсь получить данные из базы данных SQL на C #: System.Data.SqlClient.SqlException: транзакция (идентификатор процесса 97) была заблокирована на ресурсах блокировки с другим процессом и была...
31643 просмотров
schedule 11.04.2022

тупиковая жертва в транзакции, как изменить приоритет?
Я зарегистрировал исключение, созданное приложением ASP.NET. Сообщение: Транзакция (ID процесса 56) была заблокирована при блокировке | ресурсы буфера обмена данными с другим процессом и был выбран в качестве жертвы тупика. Повторите...
5610 просмотров

проблемы взаимоблокировки с триггерами
Я получаю ошибки взаимоблокировки в своем реальном приложении и отслеживаю их (используя «график взаимоблокировки» профилировщика сервера sql) до after insert триггеров, определенных в моих таблицах. в основном сценарий таков - я хочу отслеживать...
7496 просмотров

Тупик SQL при многопоточном массовом запросе на удаление и пакетной вставке
У меня есть пакет в .NET, который читает много файлов и сохраняет их содержимое в одной таблице MySQL InnoDB со следующей структурой: `id` int(11) NOT NULL AUTO_INCREMENT, `Source` varchar(2) NOT NULL, `Period` char(1) NOT NULL,...
1570 просмотров

Предотвратит ли секционирование взаимоблокировки базы данных, когда они вызваны строками, которые в противном случае были бы разделены на две секции?
Я борюсь с взаимоблокировками, которых даже не должно быть, поскольку я запускаю массовое удаление и вставку во взаимоисключающие подмножества таблицы. Тем не менее взаимоблокировки кажутся неизбежными при выполнении запросов в нескольких потоках...
556 просмотров

Взаимоблокировки в PostgreSQL при запуске UPDATE
Я немного запутался, читая о взаимоблокировках PostgreSQL. Типичный пример взаимоблокировки: -- Transaction 1 UPDATE customer SET ... WHERE id = 1 UPDATE customer SET ... WHERE id = 2 -- Transaction 2 UPDATE customer SET ... WHERE id = 2...
17015 просмотров

Когда я ВЫБИРАЮ несколько строк ДЛЯ ОБНОВЛЕНИЯ, могу ли я зайти в тупик?
В MySQL + InnoDB предположим, что у меня есть одна таблица и два потока, которые оба выполняют SELECT... FOR UPDATE. Предположим, что оба оператора SELECT в конечном итоге выбирают несколько строк, например. оба они в конечном итоге выбирают строки...
1956 просмотров
schedule 16.11.2022

Попытка понять тупик MySQL в таблице InnoDB
Я пытаюсь понять взаимоблокировку, обнаруженную MySQL во время одновременной обработки клиентами одних и тех же таблиц. Это интересная часть команды «SHOW InnoDB STATUS»: ------------------------ LATEST DETECTED DEADLOCK ------------------------...
4029 просмотров

Блокировки таблиц MySQL
Меня попросили сделать несколько PHP-скриптов в базе данных MySQL, чтобы показать некоторые данные, когда я заметил, что у них странный дизайн. Они хотят провести исследование, для которого потребуется собрать до 2000 записей на каждого пользователя,...
127 просмотров

Как Hibernate определяет порядок обновления / вставки / удаления
Давайте сначала забудем о Hibernate. Предположим, что у меня есть две таблицы, A и B. Две транзакции обновляют одни и те же записи в этих двух таблицах, но txn 1 обновляет B, а затем A, а txn 2 обновляет A, затем B. Это типичный пример тупиковой...
26611 просмотров
schedule 02.03.2022

Postgresql - ›тупик от простого обновления. Я не могу понять причину
Вот таблица (упрощенная): Table "public.link" Column | Type | Modifiers...
7575 просмотров
schedule 23.06.2022

Тупик из-за столкновения хэшей?
У меня взаимоблокировка, которая возникает при эксклюзивной блокировке одного и того же кластеризованного индекса двумя разными идентификаторами процесса. База данных находится в режиме RCSI. У меня есть два вопроса. 1) Помимо перекрытия строк...
545 просмотров

Как избежать зависаний базы данных?
Некоторые функции базы данных, такие как SELECT ... FOR UPDATE и ON DELETE CASCADE , неявно уязвимы для взаимоблокировок, поскольку в базе данных не указывается, какой порядок блокировки будет использоваться. Я нашел два обсуждения , которые...
7428 просмотров

Два процесса заблокированы на одном ресурсе
Я не эксперт по взаимоблокировкам, но то, что я вижу, не совсем понятно мне. Похоже, что два разных процесса блокируются на одном и том же объекте. Разве один процесс не будет просто ждать освобождения ресурса и продолжать свою жизнь? Обычно при...
579 просмотров

Влияние незафиксированного уровня изоляции чтения на транзакции вставки/обновления
мое приложение имеет проблему взаимоблокировки, когда существует вероятность конфликта с трех разных сторон: 1) Событие базы данных MySQL, которое выполняется каждые минуты и запускает пару команд обновления в транзакциях. 2) Фоновая задача =...
697 просмотров

Пакетный запрос занимает от нескольких миллисекунд до 2 минут на SQL Server.
У меня есть пакет, который загружает данные конфигурации, проанализированные примерно из сотни рабочих книг XLS, с информацией о положении ячеек, типе ячеек, значении ячеек и т. д. Это очень большая партия, в ней используется несколько временных...
150 просмотров

Повторите попытку при тупике для MySQL / SQLAlchemy
Я искал довольно долгое время и не могу найти решение своей проблемы. Мы используем SQLAlchemy в сочетании с MySQL для нашего проекта и несколько раз сталкиваемся с ужасной ошибкой: 1213, 'Обнаружена тупиковая ситуация при попытке получить...
7914 просмотров

Тупик SQL Server при использовании PreparedStatements
У меня есть приложение сервлета Java, и я использую подготовленный запрос для обновления записи в таблице базы данных SQL Server. Допустим, я хочу выполнить UPDATE MyTable SET name = 'test' WHERE id = '10' . (Да, id — это тип varchar) Для этого...
2217 просмотров