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 1w65Px-003wCE-33 for pgsql-hackers@arkaria.postgresql.org; Fri, 27 Mar 2026 11:31:58 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w65Pw-009OJz-1H for pgsql-hackers@arkaria.postgresql.org; Fri, 27 Mar 2026 11:31:56 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w65Pv-009OJr-35 for pgsql-hackers@lists.postgresql.org; Fri, 27 Mar 2026 11:31:56 +0000 Received: from mail.postgrespro.ru ([93.174.132.70]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w65Pt-00000001T4x-1OWc for pgsql-hackers@lists.postgresql.org; Fri, 27 Mar 2026 11:31:55 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mx2023; t=1774611112; bh=jUbiJutEbxf0nrGFsYbS1HfG1gde35Sr5cOF4siBYi8=; h=Message-ID:Date:User-Agent:To:From:Subject:From; b=TjWhf2XR1Jq739uAP2B6ur1xCJLTWKJzhB8iRX6t968Ev16un+bvej9VdFGe4CNvC fME2Kcsa4tUzxW6orWyDXWROAEgDkhK6s/OjbDt9ka6X9T2zdQEPzzMx+GtM52WFtv e0LVG8P3SwvX57KLbUyhPYXoMYj07no5nBmBB42YjUDpGNpDr6sIuxyJJB25v0RhoD X1ZxlcJub+/1Wlers/LpsHVDnZMB3rjVC+K9BX1PgZdwfCbL5UJP9TEbPKbW2kDi91 ahX3s93TTXJmnqXSDp0eNlENbgY0Ypsrt7nBfCkx2t87xQuHTBUflHRnNpAfbZU+Y9 PjjVTbLju5LQQ== Received: from [10.3.12.57] (broadband-188-255-38-164.ip.moscow.rt.ru [188.255.38.164]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: m.melnikov@postgrespro.ru) by mail.postgrespro.ru (Postfix/465) with ESMTPSA id 78C4160675 for ; Fri, 27 Mar 2026 14:31:52 +0300 (MSK) Content-Type: multipart/mixed; boundary="------------rQZVY1ZbUuSSmmDTdoeBfVWw" Message-ID: Date: Fri, 27 Mar 2026 14:31:52 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: pgsql-hackers@lists.postgresql.org From: "Maksim.Melnikov" Subject: Fix race with LLVM and bison. List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------rQZVY1ZbUuSSmmDTdoeBfVWw Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi All. I've found build error in configuration --with-llvm CPPFLAGS="-O2" ./configure --enable-debug --enable-cassert --enable-tap-tests --with-openssl --with-icu  --with-llvm .... make world-bin -j3 .... cubescan.c:9:10: fatal error: 'cubeparse.h' file not found     9 | #include "cubeparse.h"  /* must be after cubedata.h for YYSTYPE and NDBOX */ .... segscan.c:9:10: fatal error: 'segparse.h' file not found     9 | #include "segparse.h"   /* must be after segdata.h for SEG */ The reason is race, that exist between LLVM compilation and bison source code generation and compilation can occur first. Ideally LLVM compilation target should depend on header files targets. The error is difficult to reproduce and I've done simple patch to have stable reproducing. Fix patch is also attached. Thanks. --------------rQZVY1ZbUuSSmmDTdoeBfVWw Content-Type: text/x-patch; charset=UTF-8; name="v1-0002-Patch-simplify-reproducing-of-race-with-LLVM-and-.patch" Content-Disposition: attachment; filename*0="v1-0002-Patch-simplify-reproducing-of-race-with-LLVM-and-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiMzI2Y2EwMGI1NDJjYTQ1NDUzZWZjY2JkNDFkOTdjY2RmNzY2ZTMwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYWtzaW0gTWVsbmlrb3YgPG0ubWVsbmlrb3ZAcG9z dGdyZXNwcm8ucnU+CkRhdGU6IEZyaSwgMjcgTWFyIDIwMjYgMTM6MzM6NDYgKzAzMDAKU3Vi amVjdDogW1BBVENIIHYxIDIvMl0gUGF0Y2ggc2ltcGxpZnkgcmVwcm9kdWNpbmcgb2YgcmFj ZSB3aXRoIExMVk0gYW5kIGJpc29uCiBjb2RlIGdlbmVyYXRpb24uCgotLS0KIHNyYy9NYWtl ZmlsZS5nbG9iYWwuaW4gfCAxICsKIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoK ZGlmZiAtLWdpdCBhL3NyYy9NYWtlZmlsZS5nbG9iYWwuaW4gYi9zcmMvTWFrZWZpbGUuZ2xv YmFsLmluCmluZGV4IGE3Njk5YjAyNmJiLi5mMTg2ZjJlOTFlMSAxMDA2NDQKLS0tIGEvc3Jj L01ha2VmaWxlLmdsb2JhbC5pbgorKysgYi9zcmMvTWFrZWZpbGUuZ2xvYmFsLmluCkBAIC04 MDksNiArODA5LDcgQEAgZW5kaWYKIAogJS5jOiAlLnkKIAkkKGlmICQoQklTT05fQ0hFQ0tf Q01EKSwkKEJJU09OX0NIRUNLX0NNRCkpCisJc2xlZXAgMTBzCiAJJChCSVNPTikgJChCSVNP TkZMQUdTKSAtbyAkQCAkPAogCiAlLmk6ICUuYwotLSAKMi40My4wCgo= --------------rQZVY1ZbUuSSmmDTdoeBfVWw Content-Type: text/x-patch; charset=UTF-8; name="v1-0001-Fix-race-with-LLVM-compilation-and-bison-code-gen.patch" Content-Disposition: attachment; filename*0="v1-0001-Fix-race-with-LLVM-compilation-and-bison-code-gen.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBlYTE1N2Y4ODNkNTQ5NzRmNTkyNGQ3ODU5MjgxM2I1ZjFmMDgyYmQ1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYWtzaW0gTWVsbmlrb3YgPG0ubWVsbmlrb3ZAcG9z dGdyZXNwcm8ucnU+CkRhdGU6IEZyaSwgMjcgTWFyIDIwMjYgMTM6MzM6MDkgKzAzMDAKU3Vi amVjdDogW1BBVENIIHYxIDEvMl0gRml4IHJhY2Ugd2l0aCBMTFZNIGNvbXBpbGF0aW9uIGFu ZCBiaXNvbiBjb2RlCiBnZW5lcmF0aW9uLgoKSW4gY2FzZSB3aGVuIHNvdXJjZSBmaWxlIGlz IGNvbXBpbGVkIHdpdGggTExWTSBhbmQgaW5jbHVkZSBoZWFkZXIgZmlsZQp0aGF0IHNob3Vs ZCBiZSBnZW5lcmF0ZWQgYnkgYmlzb24sIGNvbXBpbGUgZXJyb3IgY2FuIG9jY3VyLCBleGFt cGxlOgoKY3ViZXNjYW4uYzo5OjEwOiBmYXRhbCBlcnJvcjogJ2N1YmVwYXJzZS5oJyBmaWxl IG5vdCBmb3VuZAogICAgOSB8ICNpbmNsdWRlICJjdWJlcGFyc2UuaCIKClRoZSByZWFzb24g aXMgcmFjZSwgdGhhdCBleGlzdCBiZXR3ZWVuIExMVk0gY29tcGlsYXRpb24gYW5kIGJpc29u IGNvZGUKZ2VuZXJhdGlvbiBhbmQgY29tcGlsYXRpb24gY2FuIG9jY3VyIGZpcnN0LiBJZGVh bGx5IExMVk0gY29tcGlsYXRpb24KdGFyZ2V0IHNob3VsZCBkZXBlbmQgb24gaGVhZGVyIGZp bGVzIHRhcmdldHMuCi0tLQogY29udHJpYi9jdWJlL01ha2VmaWxlIHwgNCArKysrCiBjb250 cmliL3NlZy9NYWtlZmlsZSAgfCA0ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvY29udHJpYi9jdWJlL01ha2VmaWxlIGIvY29udHJpYi9j dWJlL01ha2VmaWxlCmluZGV4IGRmYjBkODA2ZTRiLi5iNGYzZDMyNDUwYiAxMDA2NDQKLS0t IGEvY29udHJpYi9jdWJlL01ha2VmaWxlCisrKyBiL2NvbnRyaWIvY3ViZS9NYWtlZmlsZQpA QCAtMzUsNiArMzUsMTAgQEAgZW5kaWYKIGN1YmVwYXJzZS5oOiBjdWJlcGFyc2UuYwogCXRv dWNoICRACiAKK2lmZXEgKCQod2l0aF9sbHZtKSwgeWVzKQorY3ViZXNjYW4uYzogY3ViZXBh cnNlLmgKK2VuZGlmCisKIGN1YmVwYXJzZS5jOiBCSVNPTkZMQUdTICs9IC1kCiAKICMgRm9y Y2UgdGhlc2UgZGVwZW5kZW5jaWVzIHRvIGJlIGtub3duIGV2ZW4gd2l0aG91dCBkZXBlbmRl bmN5IGluZm8gYnVpbHQ6CmRpZmYgLS1naXQgYS9jb250cmliL3NlZy9NYWtlZmlsZSBiL2Nv bnRyaWIvc2VnL01ha2VmaWxlCmluZGV4IGI0MDhmNDA0OWNiLi5iOThjYTczYmM2NCAxMDA2 NDQKLS0tIGEvY29udHJpYi9zZWcvTWFrZWZpbGUKKysrIGIvY29udHJpYi9zZWcvTWFrZWZp bGUKQEAgLTM0LDYgKzM0LDEwIEBAIGVuZGlmCiBzZWdwYXJzZS5oOiBzZWdwYXJzZS5jCiAJ dG91Y2ggJEAKIAoraWZlcSAoJCh3aXRoX2xsdm0pLCB5ZXMpCitzZWdzY2FuLmJjOiBzZWdw YXJzZS5oCitlbmRpZgorCiBzZWdwYXJzZS5jOiBCSVNPTkZMQUdTICs9IC1kCiAKICMgRm9y Y2UgdGhlc2UgZGVwZW5kZW5jaWVzIHRvIGJlIGtub3duIGV2ZW4gd2l0aG91dCBkZXBlbmRl bmN5IGluZm8gYnVpbHQ6Ci0tIAoyLjQzLjAKCg== --------------rQZVY1ZbUuSSmmDTdoeBfVWw--