Locking during UPDATE query with SUBSELECT

Поиск
Список
Период
Сортировка
От Cenkar, Maciej
Тема Locking during UPDATE query with SUBSELECT
Дата
Msg-id 408E2EFCA199634E9212BF6662D3783812D9D0F1@DUB-EXDDA-S31.corp.ebay.com
обсуждение исходный текст
Ответы Re: Locking during UPDATE query with SUBSELECT  (David Steele <david@pgmasters.net>)
Список pgsql-general

Hi All,

 

I wonder if anyone can explain something I cannot easily find on google.

 

Given PostgreSQL 9.3.5 what is locking strategy when executing query such as:

 

UPDATE table SET some_col = some_val WHERE id IN (SELECT id FROM expensive_query_with_joins).

 

Is this starting to lock rows after it executed sub-select or is it locking whole table and then executing select?

 

Is there any advantage in precomputing ids from nested select to run only

UPDATE table SET some_col = some_val WHERE id IN (precomputed_values)?

 

If it changes anything table has few indices and many millions of rows.

 

Regards,

Maciek

В списке pgsql-general по дате отправления:

Предыдущее
От: JD
Дата:
Сообщение: : :Full text search query ::
Следующее
От: Tomas Vondra
Дата:
Сообщение: Re: : :Full text search query ::