Hi, I am getting a server crash for below test case.
postgres=# CREATE TABLE test( c1 int, c2 int, c3 text) partition by range(c1); CREATE TABLE postgres=# create table test_p1 partition of test for values from (minvalue) to (0); CREATE TABLE postgres=# create table test_p2 partition of test for values from (0) to (maxvalue); CREATE TABLE postgres=# postgres=# select (select max((select t1.c2 from test t1 where t1.c1 = t2.c1))) from test t2; server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. The connection to the server was lost. Attempting reset: Failed. !> --*logfile* TRAP: FailedAssertion("!(!parallel_aware || pathnode->path.parallel_safe)", File: "pathnode.c", Line: 1288) 2018-06-13 12:48:41.577 IST [52050] LOG: server process (PID 52061) was terminated by signal 6: Aborted 2018-06-13 12:48:41.577 IST [52050] DETAIL: Failed process was running: select (select max((select t1.c2 from test t1 where t1.c1 = t2.c1))) from test t2; *--core file * Core was generated by `postgres: edb postgres [local] SELECT '. Program terminated with signal 6, Aborted. #0 0x0000003dd2632495 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 64 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig); Missing separate debuginfos, use: debuginfo-install keyutils-libs-1.4-5.el6.x86_64 krb5-libs-1.10.3-65.el6.x86_64 libcom_err-1.41.12-23.el6.x86_64 libselinux-2.0.94-7.el6.x86_64 openssl-1.0.1e-57.el6.x86_64 zlib-1.2.3-29.el6.x86_64 (gdb) bt #0 0x0000003dd2632495 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #1 0x0000003dd2633c75 in abort () at abort.c:92 #2 0x0000000000a32782 in ExceptionalCondition (conditionName=0xc23718 "!(!parallel_aware || pathnode->path.parallel_safe)", errorType=0xc23411 "FailedAssertion", fileName=0xc2357d "pathnode.c", lineNumber=1288) at assert.c:54 #3 0x00000000007f1a3d in create_append_path (root=0x27a5930, rel=0x27c25f0, subpaths=0x27c4e60, partial_subpaths=0x0, required_outer=0x0, parallel_workers=2, parallel_aware=true, partitioned_rels=0x27c36f0, rows=-1) at pathnode.c:1288 #4 0x0000000000797d40 in add_paths_to_append_rel (root=0x27a5930, rel=0x27c25f0, live_childrels=0x27c4958) at allpaths.c:1700 #5 0x00000000007d3392 in apply_scanjoin_target_to_paths (root=0x27a5930, rel=0x27c25f0, scanjoin_targets=0x27c4558, scanjoin_targets_contain_srfs=0x0, scanjoin_target_parallel_safe=false, tlist_same_exprs=true) at planner.c:6962 #6 0x00000000007cb218 in grouping_planner (root=0x27a5930, inheritance_update=false, tuple_fraction=0) at planner.c:2014 #7 0x00000000007c943a in subquery_planner (glob=0x27855e0, parse=0x26c7250, parent_root=0x0, hasRecursion=false, tuple_fraction=0) at planner.c:966 #8 0x00000000007c7ff7 in standard_planner (parse=0x26c7250, cursorOptions=256, boundParams=0x0) at planner.c:405 #9 0x00000000007c7d1f in planner (parse=0x26c7250, cursorOptions=256, boundParams=0x0) at planner.c:263 #10 0x00000000008c461e in pg_plan_query (querytree=0x26c7250, cursorOptions=256, boundParams=0x0) at postgres.c:809 #11 0x00000000008c4751 in pg_plan_queries (querytrees=0x27a58f8, cursorOptions=256, boundParams=0x0) at postgres.c:875 #12 0x00000000008c4a26 in exec_simple_query (query_string=0x26c5798 "select (select max((select t1.c2 from test t1 where t1.c1 = t2.c1))) from test t2;") at postgres.c:1050 #13 0x00000000008c8e67 in PostgresMain (argc=1, argv=0x26ef2a0, dbname=0x26ef100 "postgres", username=0x26c2298 "edb") at postgres.c:4153 #14 0x0000000000826657 in BackendRun (port=0x26e7060) at postmaster.c:4361 #15 0x0000000000825dc5 in BackendStartup (port=0x26e7060) at postmaster.c:4033 #16 0x00000000008221a7 in ServerLoop () at postmaster.c:1706 #17 0x0000000000821ad9 in PostmasterMain (argc=3, argv=0x26c01f0) at postmaster.c:1379 #18 0x0000000000748cb8 in main (argc=3, argv=0x26c01f0) at main.c:228 Thanks & Regards, Rajkumar Raghuwanshi QMG, EnterpriseDB Corporation