powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Запись из разных потоков в одну таблицу
3 сообщений из 28, страница 2 из 2
Запись из разных потоков в одну таблицу
    #38801535
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YamahaR1Ну а если например будет производиться одновременное копирование данных из трех потоков в одну таблицу, это не приведет к дедлоку?
Не должно. Там же только вставка будет. Причем заточеная под множество записей, в отличие от последовательной вставке\обновлении в процессе обработки данных.
...
Рейтинг: 0 / 0
Запись из разных потоков в одну таблицу
    #38801855
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jedditeНу почему же не про блокировки? При таком подходе каждый поток работает со своим snapshot и блокировок не происходит
А что происходит, когда снапшот надо поправить, а он устарел?

Проблема взаимных блокировок в том, что Вы толком не говорите СУБД, что хотите работать с данными только своей сессии.
Другими словами New_CODE и NEW_CODE1 присваиваются только в рамках 1 сессии или могут перенумеровывать данные другой сессии (произошедшей ранее и не только).
...
Рейтинг: 0 / 0
Запись из разных потоков в одну таблицу
    #38801883
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Грубо говоря алгоритм параллельной вставки с обработкой вставленного выглядит следующим образом.

1. Создается транзакция
2. Создается временная таблица с данными только этой транзакции.
3. Временная таблица заполняется insert (с проверкой самосогласованности строки).
4. Временная таблица обрабатывается (update с перенумеровкой).
5. Содержимое временной таблицы вставляется целиком в основную.
6. транзакция завершается.

Если же перенумерация связана с данными в основной таблице, то
3а. Захватываем некоторую глобальную блокировку.

Если же надо менять и другие записи из основной таблицы (3а как есть)

4. Содержимое временной таблицы вставляется целиком в основную.
5. Основная таблица обрабатывается.
...
Рейтинг: 0 / 0
3 сообщений из 28, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Запись из разных потоков в одну таблицу
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]