Re: condition variable cleanup and subtransactions
От | Robert Haas |
---|---|
Тема | Re: condition variable cleanup and subtransactions |
Дата | |
Msg-id | CA+TgmoaWzE1xVJa3vgyt4PUX=FO+fG0uqXj7F=NsLjdCSLLDtw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: condition variable cleanup and subtransactions (Thomas Munro <thomas.munro@enterprisedb.com>) |
Список | pgsql-hackers |
On Thu, Dec 21, 2017 at 6:46 AM, Thomas Munro <thomas.munro@enterprisedb.com> wrote: > On Fri, Dec 22, 2017 at 12:00 AM, Andres Freund <andres@anarazel.de> wrote: >> Oh. This seems to be a condition variable bug independent of PHJ. The >> problem is that the DSM segment etc all get cleaned up in >> *subtransaction* abort. >> >> Afaict it's a bug that AbortTransaction() does >> ConditionVariableCancelSleep() but AbortSubTransaction() does not, >> despite the latter releasing dsm segments via >> ResourceOwnerRelease(RESOURCE_RELEASE_BEFORE_LOCKS). >> >> Adding that seems to fix the crash. >> >> This seems like something we need to backpatch. > > Agreed. That affects any user of condition variables inside DSM > segments, including the released Parallel Index Scan and Parallel > Bitmap Heap Scan code. Fixed. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: