Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mBsVA-0007QA-MP for pgsql-bugs@arkaria.postgresql.org; Fri, 06 Aug 2021 05:34:37 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mBsV9-0007d4-MA for pgsql-bugs@arkaria.postgresql.org; Fri, 06 Aug 2021 05:34:35 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mBsV9-0007cw-BF for pgsql-bugs@lists.postgresql.org; Fri, 06 Aug 2021 05:34:35 +0000 Received: from mail.postgrespro.ru ([93.174.131.139]) by magus.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mBsV6-0003aP-I4 for pgsql-bugs@lists.postgresql.org; Fri, 06 Aug 2021 05:34:34 +0000 Received: from [192.168.129.222] (unknown [94.25.177.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mail.postgrespro.ru (Postfix) with ESMTPSA id D4BE821CB075; Fri, 6 Aug 2021 08:34:31 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mail; t=1628228072; bh=oxaxWgU6vgm7tvzUpwZnph8RnV51/pRtULQWj7owHa4=; h=To:Cc:From:Subject:Date; b=OSGdRaXomeBFFlqImIdOtBwfBqVN6Wuqvcq7RNj+GJPxgV6cbR8d7gOyPPSh2Wrtn 7ibMQ3oxL2sV+TDPC/oX0c0L07bcLFO3tmlCT/MzEeQvwuAplL+ZfIa0nMbX9gFS7Y k6EidvX7vSV8ZCsR2DJ9g3a8N+O1OPm/0LuxJwqY= To: PostgreSQL mailing lists Cc: Heikki Linnakangas From: Andrey Lepikhov Organization: Postgres Professional Subject: SEGFAULT on a concurrent UPDATE of mix of local and foreign partitions Message-ID: Date: Fri, 6 Aug 2021 10:34:30 +0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------65CD9795E2DF8C0858C46F2D" Content-Language: en-US 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. --------------65CD9795E2DF8C0858C46F2D Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hi, Postgres SEGFAULT'ed on the UPDATE of mix of local and foreign partitions. Initialization - see t.sql For replaying this segfault just execute in parallel: UPDATE test SET x = x - 1; The problem was introduced by commit 1375422. ExecUpdate has found a concurrently updated tuples and starts subplan evaluation. This operation creates new EState for EPQState and sets es_result_relations in NULL value. Next, ExecInitNode(subplan) is launched and underlying ExecInitForeignScan tries to access to an element of es_result_relations. This causes SEGFAULT. I studied this problem shortly. I think, EPQState can use es_result_relations of a parent EState. Patch in attachment fixes this. check-world passed clearly. -- regards, Andrey Lepikhov Postgres Professional --------------65CD9795E2DF8C0858C46F2D Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="0001-Share-es_result_relations-of-parent-EState-in-EPQSta.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Share-es_result_relations-of-parent-EState-in-EPQSta.pa"; filename*1="tch" RnJvbSBhYjA2N2JkZWI2ZGU4NGRiODA1MDRkMmZiMDVkYTQzODVmYTAyZWJjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV5IFYuIExlcGlraG92IiA8YS5sZXBpa2hv dkBwb3N0Z3Jlc3Byby5ydT4KRGF0ZTogRnJpLCA2IEF1ZyAyMDIxIDEwOjExOjUyICswNTAw ClN1YmplY3Q6IFtQQVRDSF0gU2hhcmUgZXNfcmVzdWx0X3JlbGF0aW9ucyBvZiBwYXJlbnQg RVN0YXRlIGluIEVQUVN0YXRlCiBiZWNhdXNlIEZEVyBkaXJlY3QtbW9kaWZ5IG5vZGVzIGV4 cGVjdCBpdCBhdmFpbGFibGUuCgotLS0KIHNyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNNYWlu LmMgfCA4ICsrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNNYWlu LmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjTWFpbi5jCmluZGV4IGIzY2U0YmFlNTMu LmEwMzBmZWM4NmEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNNYWlu LmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY01haW4uYwpAQCAtMjcxNCwxMCAr MjcxNCwxMiBAQCBFdmFsUGxhblF1YWxTdGFydChFUFFTdGF0ZSAqZXBxc3RhdGUsIFBsYW4g KnBsYW5UcmVlKQogCXJjZXN0YXRlLT5lc19vdXRwdXRfY2lkID0gcGFyZW50ZXN0YXRlLT5l c19vdXRwdXRfY2lkOwogCiAJLyoKLQkgKiBSZXN1bHRSZWxJbmZvcyBuZWVkZWQgYnkgc3Vi cGxhbnMgYXJlIGluaXRpYWxpemVkIGZyb20gc2NyYXRjaCB3aGVuIHRoZQotCSAqIHN1YnBs YW5zIHRoZW1zZWx2ZXMgYXJlIGluaXRpYWxpemVkLgorCSAqIFNoYXJlIHRoZSBwYXJlbnQn cyBjb3B5IG9mIFJlc3VsdFJlbEluZm9zIG5lZWRlZCBieSBzdWJwbGFucy4KKwkgKiBXZSBt dXN0IGRvIHRoaXMgYmVmb3JlIGluaXRpYWxpemluZyB0aGUgc3VicGxhbiwgYmVjYXVzZSBk aXJlY3QtbW9kaWZ5CisJICogRkRXcyBleHBlY3QgdGhlaXIgUmVzdWx0UmVsSW5mb3MgdG8g YmUgYXZhaWxhYmxlLgogCSAqLwotCXJjZXN0YXRlLT5lc19yZXN1bHRfcmVsYXRpb25zID0g TlVMTDsKKwlyY2VzdGF0ZS0+ZXNfcmVzdWx0X3JlbGF0aW9ucyA9IHBhcmVudGVzdGF0ZS0+ ZXNfcmVzdWx0X3JlbGF0aW9uczsKKwogCS8qIGVzX3RyaWdfdGFyZ2V0X3JlbGF0aW9ucyBt dXN0IE5PVCBiZSBjb3BpZWQgKi8KIAlyY2VzdGF0ZS0+ZXNfdG9wX2VmbGFncyA9IHBhcmVu dGVzdGF0ZS0+ZXNfdG9wX2VmbGFnczsKIAlyY2VzdGF0ZS0+ZXNfaW5zdHJ1bWVudCA9IHBh cmVudGVzdGF0ZS0+ZXNfaW5zdHJ1bWVudDsKLS0gCjIuMzEuMQoK --------------65CD9795E2DF8C0858C46F2D Content-Type: application/sql; x-mac-type="0"; x-mac-creator="0"; name="t.sql" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="t.sql" RFJPUCBFWFRFTlNJT04gSUYgRVhJU1RTIHBvc3RncmVzX2ZkdyBDQVNDQURFOwpEUk9QIFRB QkxFIHRlc3QsdDJfMSBDQVNDQURFOwoKQ1JFQVRFIEVYVEVOU0lPTiBwb3N0Z3Jlc19mZHc7 CkNSRUFURSBTRVJWRVIgcmVtb3RlIEZPUkVJR04gREFUQSBXUkFQUEVSIHBvc3RncmVzX2Zk dzsKQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgUFVCTElDIFNFUlZFUiByZW1vdGU7CkNSRUFU RSBUQUJMRSB0ZXN0KGtleSBpbnQsIHggYmlnaW50KSBQQVJUSVRJT04gQlkgTElTVCAoa2V5 KTsKQ1JFQVRFIFRBQkxFIHQxIFBBUlRJVElPTiBPRiB0ZXN0IEZPUiBWQUxVRVMgSU4gKDEp OwpDUkVBVEUgVEFCTEUgdDJfMSAoa2V5IGludCwgeCBiaWdpbnQpOwpDUkVBVEUgRk9SRUlH TiBUQUJMRSB0MiBQQVJUSVRJT04gT0YgdGVzdCBGT1IgVkFMVUVTIElOICgyKSBTRVJWRVIg cmVtb3RlIE9QVElPTlMgKHRhYmxlX25hbWUgJ3QyXzEnKTsKCklOU0VSVCBJTlRPIHRlc3Qg KGtleSwgeCkgVkFMVUVTICgxLCAtMSk7CklOU0VSVCBJTlRPIHRlc3QgKGtleSwgeCkgVkFM VUVTICgyLCAxKTsK --------------65CD9795E2DF8C0858C46F2D Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="backtrace.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="backtrace.txt" ICogZnJhbWUgIzA6IDB4MDAwMDAwMDEwYTIxZGY2NiBwb3N0Z3Jlc2BFeGVjSW5pdEZvcmVp Z25TY2FuKG5vZGU9MHgwMDAwN2Y4ZTZiODIzYmE4LCBlc3RhdGU9MHgwMDAwN2Y4ZTZkODA5 YjIwLCBlZmxhZ3M9MCkgYXQgbm9kZUZvcmVpZ25zY2FuLmM6MjMwOjMwCiAgICBmcmFtZSAj MTogMHgwMDAwMDAwMTBhMWZjM2MzIHBvc3RncmVzYEV4ZWNJbml0Tm9kZShub2RlPTB4MDAw MDdmOGU2YjgyM2JhOCwgZXN0YXRlPTB4MDAwMDdmOGU2ZDgwOWIyMCwgZWZsYWdzPTApIGF0 IGV4ZWNQcm9jbm9kZS5jOjI4NDoyNwogICAgZnJhbWUgIzI6IDB4MDAwMDAwMDEwYTIxODI2 NSBwb3N0Z3Jlc2BFeGVjSW5pdEFwcGVuZChub2RlPTB4MDAwMDdmOGU2YjgwZTE1MCwgZXN0 YXRlPTB4MDAwMDdmOGU2ZDgwOWIyMCwgZWZsYWdzPTApIGF0IG5vZGVBcHBlbmQuYzoyMzI6 MjcKICAgIGZyYW1lICMzOiAweDAwMDAwMDAxMGExZmMxOTMgcG9zdGdyZXNgRXhlY0luaXRO b2RlKG5vZGU9MHgwMDAwN2Y4ZTZiODBlMTUwLCBlc3RhdGU9MHgwMDAwN2Y4ZTZkODA5YjIw LCBlZmxhZ3M9MCkgYXQgZXhlY1Byb2Nub2RlLmM6MTgxOjI3CiAgICBmcmFtZSAjNDogMHgw MDAwMDAwMTBhMWY0YmUxIHBvc3RncmVzYEV2YWxQbGFuUXVhbFN0YXJ0KGVwcXN0YXRlPTB4 MDAwMDdmOGU2YjgxNzQ5MCwgcGxhblRyZWU9MHgwMDAwN2Y4ZTZiODBlMTUwKSBhdCBleGVj TWFpbi5jOjI4MTc6MzEKICAgIGZyYW1lICM1OiAweDAwMDAwMDAxMGExZjM5OWYgcG9zdGdy ZXNgRXZhbFBsYW5RdWFsQmVnaW4oZXBxc3RhdGU9MHgwMDAwN2Y4ZTZiODE3NDkwKSBhdCBl eGVjTWFpbi5jOjI2MzA6MwogICAgZnJhbWUgIzY6IDB4MDAwMDAwMDEwYTFmMzhkZSBwb3N0 Z3Jlc2BFdmFsUGxhblF1YWwoZXBxc3RhdGU9MHgwMDAwN2Y4ZTZiODE3NDkwLCByZWxhdGlv bj0weDAwMDA3ZjhlNmI1OWUxNjAsIHJ0aT0yLCBpbnB1dHNsb3Q9MHgwMDAwN2Y4ZTZiODMw Njg4KSBhdCBleGVjTWFpbi5jOjIzNzA6MgogICAgZnJhbWUgIzc6IDB4MDAwMDAwMDEwYTI0 MDg1YyBwb3N0Z3Jlc2BFeGVjVXBkYXRlKG10c3RhdGU9MHgwMDAwN2Y4ZTZiODE3M2E4LCBy ZXN1bHRSZWxJbmZvPTB4MDAwMDdmOGU2YjgxNzVjMCwgdHVwbGVpZD0weDAwMDA3ZmZlZTVk NzY4NTgsIG9sZHR1cGxlPTB4MDAwMDAwMDAwMDAwMDAwMCwgc2xvdD0weDAwMDA3ZjhlNmI4 MmY5ZjAsIHBsYW5TbG90PTB4MDAwMDdmOGU2YjgxOTRmMCwgZXBxc3RhdGU9MHgwMDAwN2Y4 ZTZiODE3NDkwLCBlc3RhdGU9MHgwMDAwN2Y4ZTZiODE3MTIwLCBjYW5TZXRUYWc9dHJ1ZSkg YXQgbm9kZU1vZGlmeVRhYmxlLmM6MTg2MToxOAogICAgZnJhbWUgIzg6IDB4MDAwMDAwMDEw YTIzZTk2NCBwb3N0Z3Jlc2BFeGVjTW9kaWZ5VGFibGUocHN0YXRlPTB4MDAwMDdmOGU2Yjgx NzNhOCkgYXQgbm9kZU1vZGlmeVRhYmxlLmM6MjU5MjoxMgogICAgZnJhbWUgIzk6IDB4MDAw MDAwMDEwYTFmYzhjMiBwb3N0Z3Jlc2BFeGVjUHJvY05vZGVGaXJzdChub2RlPTB4MDAwMDdm OGU2YjgxNzNhOCkgYXQgZXhlY1Byb2Nub2RlLmM6NDYzOjkKICAgIGZyYW1lICMxMDogMHgw MDAwMDAwMTBhMWY0NzYyIHBvc3RncmVzYEV4ZWNQcm9jTm9kZShub2RlPTB4MDAwMDdmOGU2 YjgxNzNhOCkgYXQgZXhlY3V0b3IuaDoyNTc6OQogICAgZnJhbWUgIzExOiAweDAwMDAwMDAx MGExZWZlMDEgcG9zdGdyZXNgRXhlY3V0ZVBsYW4oZXN0YXRlPTB4MDAwMDdmOGU2YjgxNzEy MCwgcGxhbnN0YXRlPTB4MDAwMDdmOGU2YjgxNzNhOCwgdXNlX3BhcmFsbGVsX21vZGU9ZmFs c2UsIG9wZXJhdGlvbj1DTURfVVBEQVRFLCBzZW5kVHVwbGVzPWZhbHNlLCBudW1iZXJUdXBs ZXM9MCwgZGlyZWN0aW9uPUZvcndhcmRTY2FuRGlyZWN0aW9uLCBkZXN0PTB4MDAwMDdmOGU2 YjgyNDBkMCwgZXhlY3V0ZV9vbmNlPXRydWUpIGF0IGV4ZWNNYWluLmM6MTU1MToxMAogICAg ZnJhbWUgIzEyOiAweDAwMDAwMDAxMGExZWZjZDAgcG9zdGdyZXNgc3RhbmRhcmRfRXhlY3V0 b3JSdW4ocXVlcnlEZXNjPTB4MDAwMDdmOGU2YjgxNWIyMCwgZGlyZWN0aW9uPUZvcndhcmRT Y2FuRGlyZWN0aW9uLCBjb3VudD0wLCBleGVjdXRlX29uY2U9dHJ1ZSkgYXQgZXhlY01haW4u YzozNjE6MwogICAgZnJhbWUgIzEzOiAweDAwMDAwMDAxMGExZWZhNjEgcG9zdGdyZXNgRXhl Y3V0b3JSdW4ocXVlcnlEZXNjPTB4MDAwMDdmOGU2YjgxNWIyMCwgZGlyZWN0aW9uPUZvcndh cmRTY2FuRGlyZWN0aW9uLCBjb3VudD0wLCBleGVjdXRlX29uY2U9dHJ1ZSkgYXQgZXhlY01h aW4uYzozMDU6MwogICAgZnJhbWUgIzE0OiAweDAwMDAwMDAxMGE0YWZmNTkgcG9zdGdyZXNg UHJvY2Vzc1F1ZXJ5KHBsYW49MHgwMDAwN2Y4ZTZiODI0MDM4LCBzb3VyY2VUZXh0PSJVUERB VEUgdGVzdCBTRVQgeCA9IHggLSAxOyIsIHBhcmFtcz0weDAwMDAwMDAwMDAwMDAwMDAsIHF1 ZXJ5RW52PTB4MDAwMDAwMDAwMDAwMDAwMCwgZGVzdD0weDAwMDA3ZjhlNmI4MjQwZDAsIHFj PTB4MDAwMDdmZmVlNWQ3NmQzMCkgYXQgcHF1ZXJ5LmM6MTYwOjIKICAgIGZyYW1lICMxNTog MHgwMDAwMDAwMTBhNGFlZGUzIHBvc3RncmVzYFBvcnRhbFJ1bk11bHRpKHBvcnRhbD0weDAw MDA3ZjhlNmUwMzYxMjAsIGlzVG9wTGV2ZWw9dHJ1ZSwgc2V0SG9sZFNuYXBzaG90PWZhbHNl LCBkZXN0PTB4MDAwMDdmOGU2YjgyNDBkMCwgYWx0ZGVzdD0weDAwMDA3ZjhlNmI4MjQwZDAs IHFjPTB4MDAwMDdmZmVlNWQ3NmQzMCkgYXQgcHF1ZXJ5LmM6MTI2Njo1CiAgICBmcmFtZSAj MTY6IDB4MDAwMDAwMDEwYTRhZTNhOCBwb3N0Z3Jlc2BQb3J0YWxSdW4ocG9ydGFsPTB4MDAw MDdmOGU2ZTAzNjEyMCwgY291bnQ9OTIyMzM3MjAzNjg1NDc3NTgwNywgaXNUb3BMZXZlbD10 cnVlLCBydW5fb25jZT10cnVlLCBkZXN0PTB4MDAwMDdmOGU2YjgyNDBkMCwgYWx0ZGVzdD0w eDAwMDA3ZjhlNmI4MjQwZDAsIHFjPTB4MDAwMDdmZmVlNWQ3NmQzMCkgYXQgcHF1ZXJ5LmM6 Nzg2OjUKICAgIGZyYW1lICMxNzogMHgwMDAwMDAwMTBhNGE5MzkzIHBvc3RncmVzYGV4ZWNf c2ltcGxlX3F1ZXJ5KHF1ZXJ5X3N0cmluZz0iVVBEQVRFIHRlc3QgU0VUIHggPSB4IC0gMTsi KSBhdCBwb3N0Z3Jlcy5jOjEyMTQ6MTA= --------------65CD9795E2DF8C0858C46F2D--