Re: Fix missing EvalPlanQual recheck for TID scans
От | Chao Li |
---|---|
Тема | Re: Fix missing EvalPlanQual recheck for TID scans |
Дата | |
Msg-id | 91C3354F-CCF0-4691-9F79-6F13C4D38B0F@gmail.com обсуждение исходный текст |
Ответ на | Re: Fix missing EvalPlanQual recheck for TID scans (David Rowley <dgrowleyml@gmail.com>) |
Ответы |
Fix missing EvalPlanQual recheck for TID scans
Re: Fix missing EvalPlanQual recheck for TID scans |
Список | pgsql-hackers |
If you need guidance about how this should be behaving, try with "SET
enable_tidscan = 0;" and see what that does.
David
[1] https://www.postgresql.org/docs/current/transaction-iso.html#XACT-READ-COMMITTED
Read Committed is the default isolation level in PostgreSQL. When a transaction uses this isolation level, a SELECT
query (without a FOR UPDATE/SHARE
clause) sees only data committed before the query began; it never sees either uncommitted data or changes committed by concurrent transactions during the query's execution. In effect, a SELECT
query sees a snapshot of the database as of the instant the query begins to run. However, SELECT
does see the effects of previous updates executed within its own transaction, even though they are not yet committed. Also note that two successive SELECT
commands can see different data, even though they are within a single transaction, if other transactions commit changes after the first SELECT
starts and before the second SELECT
starts.
UPDATE
, DELETE
, SELECT FOR UPDATE
, and SELECT FOR SHARE
commands behave the same as SELECT
in terms of searching for target rows: they will only find target rows that were committed as of the command start time.
HighGo Software Co., Ltd.
https://www.highgo.com/
В списке pgsql-hackers по дате отправления: