Re: [BUG] PostgreSQL crashes with ThreadSanitizer during early initialization
Emmanuel Sibi <emmanuelsibi.mec@gmail.com>
From: Emmanuel Sibi <emmanuelsibi.mec@gmail.com>
To: Quan Zongliang <quanzongliang@yeah.net>
Cc: Aleksander Alekseev <aleksander@tigerdata.com>,
pgsql-hackers@lists.postgresql.org
Date: 2025-09-15T15:19:01Z
Lists: pgsql-hackers
Hi Quan, Thanks for testing the patch! I'm glad it resolves the startup crash. > I tested this patch. postgres -V no longer crashes. Regarding the shutdown issue - I tested extensively with ThreadSanitizer enabled using both build configurations I mentioned earlier, and all shutdown modes work correctly in my environment: > There is a minor issue. I'm not sure if it's caused by this patch. > The database can only be shut down using the immediate mode. Fast shutdown: 2025-09-15 20:20:07.454 IST [28229] LOG: received fast shutdown request [...] 2025-09-15 20:20:07.574 IST [28229] LOG: database system is shut down Smart shutdown: 2025-09-15 20:28:14.271 IST [31263] LOG: received smart shutdown request [...] 2025-09-15 20:28:14.399 IST [31263] LOG: database system is shut down All modes complete within seconds with the final "database system is shut down" message, unlike the hang you're experiencing. The patch only moves __ubsan_default_options() to a separate compilation unit to avoid TSan initialization issues during startup. It doesn't modify any shutdown logic or signal handling code. My Environment: Ubuntu 24.04.1, clang 18, PostgreSQL 17.2. Best regards, Emmanuel
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Avoid possible crash within libsanitizer.
- d4baa327a1c9 19 (unreleased) landed
- c775bf048abd 16.11 landed
- a9515f294de1 17.7 landed
- 6d8acb777715 18.1 landed