таблицы в другую, без транзакции и в рамках одного запроса ? (insert table1 select from table2 ). Запускаю через psql.
Таблица размером 400 GB.
Если делать в рамках транзакции, то вторая транзакция на встаку новых данных не схватит ли "deadlock" ?
что значит без транзакции? она буде по любому
просто в psql не делаю begin sql commit
ну так постгрес сам за тебя это делает в таком случае
> вторая транзакция на встаку новых данных не схватит ли "deadlock" Может, почему нет-то (если речь о произвольной другой транзакции)? Причём его может "схватить" как раз вот эта, а не какая-то другая.
В каком смысле произвольной ? Вторая транзакция просто будет выполнять Inser into values в эту же таблицу, в которой первая транзакция переливает данные.
а всё блин, сам забылся. Я проверял уже этот кейс, вставка новых данных успешно проходит.
> В каком смысле произвольной ? В смысле "транзакция, которая выполняет [только] INSERT (один или более, одного или более rows) в ту же таблицу каким-либо образом". > Вторая транзакция просто будет выполнять Самый очевидный вариант — если эти транзакции "сталкиваются" на каком-то уникальном ключе (ключах), вставляя данные в разном порядке.
Обсуждают сегодня