citus icon indicating copy to clipboard operation
citus copied to clipboard

postgresql is crashing when selecting from citus columnar table

Open vnoreika opened this issue 1 year ago • 3 comments

Hello,

we have a problem that postgresql is crashing when we left join citus table on heap tables. OS Redhat 8.9 , Postgresql 16.3 , Citus 12.1.4

How to reproduce:

create extension citus; create table test1 (a integer); create table test2 (a integer); create table test3 (b integer) using columnar;

SELECT *    FROM test1 a1      LEFT JOIN test2 a2 ON a1.a = a2.a      LEFT JOIN test3 b  ON a2.a = b.b ;

server closed the connection unexpectedly

From logs: <2024-07-09 10:00:21.484 EEST%2048391%668cdfda.1f4187%%%> DETAIL: Failed process was running: select * FROM test1 a1 LEFT JOIN test2 a2 ON a1.a = a2.a left JOIN test3 b ON a2.a = b.b ; <2024-07-09 10:00:21.484 EEST%2048391%668cdfda.1f4187%%%> LOG: terminating any other active server processes <2024-07-09 10:00:21.489 EEST%2048570%668ce005.1f423a%[unknown]%[local]%[unknown]> LOG: connection received: host=[local] <2024-07-09 10:00:21.489 EEST%2048570%668ce005.1f423a%postgres%[local]%test> FATAL: the database system is in recovery mode <2024-07-09 10:00:21.492 EEST%2048391%668cdfda.1f4187%%%> LOG: all server processes terminated; reinitializing

vnoreika avatar Jul 09 '24 08:07 vnoreika

Hello,

as a workaround for this you can set columnar.enable_custom_scan to false

copetol avatar Jul 24 '24 22:07 copetol

Absolutely the same problem! It would be great to fix this bug as soon as possible...

Fenoman avatar Sep 18 '24 19:09 Fenoman

Hello, It is enough to exclude outer_join_rels from candidateRelids in columnar_customscan.c FindCandidateRelids and it will work:


#if PG_VERSION_NUM >= PG_VERSION_16
	candidateRelids = bms_del_members(candidateRelids, root->outer_join_rels);	
#endif

OlgaSergeyevaB avatar Oct 14 '24 06:10 OlgaSergeyevaB

Hi, we seem to be facing a similar issue, getting a Segmentation fault using multiple left join on columnar tables. What is the status of the issue, could it be integrated into a next release?

Naralas avatar Dec 05 '24 13:12 Naralas

Hi, @Naralas Created https://github.com/citusdata/citus/pull/7703 We use a fork https://github.com/OlgaSergeyevaB/citus

OlgaSergeyevaB avatar Dec 07 '24 05:12 OlgaSergeyevaB

Fixed by #7703 (commit 459c283e7) - thanks @OlgaSergeyevaB

colm-mchugh avatar Feb 24 '25 09:02 colm-mchugh