Re: Strange hanging bug in a simple milter
| От | Heikki Linnakangas |
|---|---|
| Тема | Re: Strange hanging bug in a simple milter |
| Дата | |
| Msg-id | 5233684A.2040505@vmware.com обсуждение исходный текст |
| Ответ на | Re: Strange hanging bug in a simple milter (Heikki Linnakangas <hlinnakangas@vmware.com>) |
| Ответы |
Re: Strange hanging bug in a simple milter
|
| Список | pgsql-hackers |
On 13.09.2013 22:26, Heikki Linnakangas wrote: > I'm afraid the "move_locks.diff" patch you posted earlier is also > broken; close_SSL() is called in error scenarios from > pqsecure_open_client(), while already holding the mutex. So it will > deadlock with itself if the connection cannot be established. Actually, I think there's a pre-existing bug there in git master. If the SSL_set_app_data or SSL_set_fd call in pqsecure_open_client fails for some reason, it will call close_SSL() with conn->ssl already set, and the mutex held. close_SSL() will call pqsecure_destroy()->destroy_SSL()->destory_ssl_system(), which will try to acquire the mutex again. - Heikki
В списке pgsql-hackers по дате отправления: