Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wRtsO-002n4p-14 for pgsql-hackers@arkaria.postgresql.org; Tue, 26 May 2026 15:39:28 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wRtsM-004pxb-08 for pgsql-hackers@arkaria.postgresql.org; Tue, 26 May 2026 15:39:26 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wRtsL-004pxT-0x for pgsql-hackers@lists.postgresql.org; Tue, 26 May 2026 15:39:26 +0000 Received: from fhigh-a1-smtp.messagingengine.com ([103.168.172.152]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wRtsJ-00000000sD7-2hho for pgsql-hackers@lists.postgresql.org; Tue, 26 May 2026 15:39:24 +0000 Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfhigh.phl.internal (Postfix) with ESMTP id 21DE71400090; Tue, 26 May 2026 11:39:22 -0400 (EDT) Received: from phl-imap-05 ([10.202.2.95]) by phl-compute-06.internal (MEProxy); Tue, 26 May 2026 11:39:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eulerto.com; h= cc:cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm1; t=1779809962; x=1779896362; bh=5NyrBxFWL3 qDW4FFIq7ROha4TZIHOj6fUVCA5zSh2Ag=; b=zTvgI0XXsrQwVLiQOqKa+vkh6Y vHkYLM+g8gnGrdd2z6JbYbPbJoDkdkv5ImtPJdbchqYY+2lZFci50Y2bXpy+duOx Y8h5L4+tqnTFT2UveeWYFDLJswmn6+KUVKt1cAJtMQXtQ35jr+9Bot5TnqsB2fnB fhZHWzWoCf9NTzRTcSxP94p7OoLFpbSaB4B5mpQnVdfZyNefDy502zmYZ/oCfWtK IaLcECzwLqXUB3BHdZ1a9U1ooyAm27OcqbTrzcJjfHIlbYMkBV90thtmj4V7UckO gUJnV/delstkyRM6TXrlPg15QvLN3w+OHifGmGWjrfX1giFXE+DO+f5mUL9g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1779809962; x=1779896362; bh=5NyrBxFWL3qDW4FFIq7ROha4TZIHOj6fUVC A5zSh2Ag=; b=PD5GTJtugr3B1qVH+3YqcIZpSuQosULogmP4exO2Q7jcaTAeKHQ WETnqU1QHF44vQaOJ/9ilsIlTBbiKw8fYw49cNuIdY5Rw7H/Fp+h/5DNWqui0+ID h7Tp57M8XE8N3ZP0k8MvhpdDSBNe5BjM4UwwZcP6ipPm9AM6+HLULTJ16ta7LBJR tJTvGy7/xJ/Ray6daRgN0R7OMm9okGAtT69+L0aAS+AgZLmKM/DFGe5kTHoKsSj1 DD2Sejp337YwuozyzubmFQ/noOCRkUCsa7Vu1WSVWNppEuWLBB0J82BlMQUKjFSm Cmy7TpQXIWfz3dY/gQZZQwCMeKDWBrw6qYA== X-ME-Sender: X-ME-Proxy-Cause: dmFkZTElddrW2p9LNuB0ViS+c+T8unsZUXyU7VmD3/bkqsHFoGLdCO1w2pUKkJ/D03iNJw o725V3zhTn/+hj8aXQeTOWZFS5zycPwRJo0kFWh+QUTx3HAmIOLW9tIzLneKN08ewU/lZJ EKbjnDffEYOz5RaoS1B5oIUHWpiVX2Lw270LhTEADAa0PFqHHsHkZzPVoYyC91b8AygoU5 8HQIaTXNIjlXrxABMgHRGLlC01LpqeYx/g91bF1XO0S1dEyNh+YxIhIMhNt0iN0HATNgV1 BKCesXovD8XXUeH+XyTYQVUieWAcZUMQ2jeQv+ISEySwvljTnmXXrEilYATKcNRyLptylh wHhvce0ChcUrb0auhfFHcaMYCiAgl24JdJSKOasfx0Y5ZP8gYnZhrP4NbzQ2sLxr/rN2wD WCehU0IAl4PEfI7RewbfKOiRSeBPazv6wKJj/PVT15muO1PrNatlY8qJ+VOajUA6K+6I78 /UHI8PzZnTSqUBCLscz2je1jIEbCJHLZk4+e6BaOO5wqGtDhL2x7UX9EgPX+z5+8XZJfC+ ZWDVlH7Hu0k0fEOMIzFBETHCzO4+1OaaZOr9YUViCrAO8JI0nvJGJOzaxLqD/0v4+PI6KB UvgXFbnG0TNjaFDx+xCO1Y1SwBK7cJ51v567O1NOu+HhgDxZKUTp1sb3OaEg X-ME-Proxy: Feedback-ID: i0c21471d:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id 9CF16182007E; Tue, 26 May 2026 11:39:21 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface MIME-Version: 1.0 X-ThreadId: AjWYCrZjqysk Date: Tue, 26 May 2026 12:39:01 -0300 From: "Euler Taveira" To: =?UTF-8?Q?=C3=81lvaro_Herrera?= , "Michael Paquier" Cc: "Kyotaro Horiguchi" , pgsql-hackers@lists.postgresql.org Message-Id: In-Reply-To: References: Subject: Re: NULL pointer dereference in syslogger with load_libraries() and -DEXEC_BACKEND at startup Content-Type: multipart/mixed; boundary=55ed71fe34de31344b078c9141945028b2f6152d List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --55ed71fe34de31344b078c9141945028b2f6152d Content-Type: text/plain Content-Transfer-Encoding: 7bit On Tue, May 26, 2026, at 8:09 AM, Alvaro Herrera wrote: > On 2026-May-26, Michael Paquier wrote: > >> This issue is different, it is a Postgres logic bug, so adding an >> exception like the one you are suggesting is just a shortcut hiding >> the real issue: the log file is not ready yet, but the syslogger is >> invoked at a point when it thinks the log file exists. > > I think we can solve this easily by flipping a new Boolean value at the > same point were MyBackendType was previously set. The attached POC > fixes the scenario you described; can you confirm? It needs some > additional comments, of course. > It fixes the issue for me. However, I'm wondering if we can avoid adding a new boolean for it. We already have redirection_done that guarantees the syslogger is working properly. Couldn't we use it? (SysLogger_Start() opens the file -- logfile_open -- and a few lines below it sets the redirection_done. If we adopt this approach, a comment should be added to avoid breaking it in the future.) > (There is one more place in elog.c where we check that MyBackendType is > _not_ B_LOGGER, but I think that one is correct as-is; and I'm wondering > if that would behave correctly before 0c8e082fba8d.) > Yes. The redirection_done guarantees that the file is open. PS> this patch does not allow writes to syslogger as soon as possible like your patch but it seems acceptable to me. -- Euler Taveira EDB https://www.enterprisedb.com/ --55ed71fe34de31344b078c9141945028b2f6152d Content-Disposition: attachment; filename*0="0001-syslogger-try-to-write-messages-only-after-setup.patch" Content-Type: text/x-patch; name="=?UTF-8?Q?0001-syslogger-try-to-write-messages-only-after-setup.patch?=" Content-Transfer-Encoding: base64 RnJvbSA2NWRlY2ZkY2I3ZjczZWY5MzU0YzU1OTQ5NzY3Y2RiZWI1NmYyNGFiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBFdWxlciBUYXZlaXJhIDxldWxlckBldWxlcnRvLmNv bT4KRGF0ZTogVHVlLCAyNiBNYXkgMjAyNiAxMTo0OToyOCAtMDMwMApTdWJqZWN0OiBbUEFU Q0hdIHN5c2xvZ2dlcjogdHJ5IHRvIHdyaXRlIG1lc3NhZ2VzIG9ubHkgYWZ0ZXIgc2V0dXAK ClNpbmNlIGNvbW1pdCAwYzhlMDgyZmJhOGQgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRoYXQg c3lzbG9nZ2VyIGZpbmlzaGVzCml0cyBzZXR1cCBiZWZvcmUgYW55IHByb2Nlc3MgY2FuIHVz ZSBpdC4gQWRkIGFuIGV4dHJhIGNoZWNrIHRoYXQgaXMgb25seQpzZXQgYWZ0ZXIgdGhlIHNl dHVwIGlzIGRvbmUuCgpEaXNjdXNzaW9uOiBodHRwczovL3Bvc3Rnci5lcy9tL2FoUC1KVDRa UlB5b2JuTGJAcGFxdWllci54eXoKLS0tCiBzcmMvYmFja2VuZC91dGlscy9lcnJvci9lbG9n LmMgfCA3ICsrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvZXJyb3IvZWxvZy5j IGIvc3JjL2JhY2tlbmQvdXRpbHMvZXJyb3IvZWxvZy5jCmluZGV4IDUwYzUzYjU3MWEwLi44 ZTE3OTZjZTVmZiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvZXJyb3IvZWxvZy5j CisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2Vycm9yL2Vsb2cuYwpAQCAtMzg4NCw4ICszODg0 LDExIEBAIHNlbmRfbWVzc2FnZV90b19zZXJ2ZXJfbG9nKEVycm9yRGF0YSAqZWRhdGEpCiAJ CQl3cml0ZV9jb25zb2xlKGJ1Zi5kYXRhLCBidWYubGVuKTsKIAl9CiAKLQkvKiBJZiBpbiB0 aGUgc3lzbG9nZ2VyIHByb2Nlc3MsIHRyeSB0byB3cml0ZSBtZXNzYWdlcyBkaXJlY3QgdG8g ZmlsZSAqLwotCWlmIChNeUJhY2tlbmRUeXBlID09IEJfTE9HR0VSKQorCS8qCisJICogSWYg aW4gdGhlIHN5c2xvZ2dlciBwcm9jZXNzIChhbmQgaXRzIHNldHVwIGlzIGRvbmUpLCB0cnkg dG8gd3JpdGUKKwkgKiBtZXNzYWdlcyBkaXJlY3QgdG8gZmlsZS4KKwkgKi8KKwlpZiAocmVk aXJlY3Rpb25fZG9uZSAmJiBNeUJhY2tlbmRUeXBlID09IEJfTE9HR0VSKQogCQl3cml0ZV9z eXNsb2dnZXJfZmlsZShidWYuZGF0YSwgYnVmLmxlbiwgTE9HX0RFU1RJTkFUSU9OX1NUREVS Uik7CiAKIAkvKiBObyBtb3JlIG5lZWQgb2YgdGhlIG1lc3NhZ2UgZm9ybWF0dGVkIGZvciBz dGRlcnIgKi8KLS0gCjIuMzkuNQoK --55ed71fe34de31344b078c9141945028b2f6152d--