Panics on the master with the following backtrace:
(gdb) bt #0 0x00007fe19be2b4fb in raise () from /data/logs/307902/packcore-postgres.330113.181669.core/lib64/libpthread.so.0 #1 0x0000000000bfb5e0 in StandardHandlerForSigillSigsegvSigbus_OnMainThread (processName=<optimized out>, postgres_signal_arg=11) at elog.c:5581 #2 <signal handler called> #3 0x0000000000ef729d in gpopt::CScalarSortGroupClause::Matches (this=0xaa73f50, other=<optimized out>) at CScalarSortGroupClause.cpp:59 #4 0x0000000000f094ea in gpopt::CGroupExpression::Matches (this=0xaa10e68, pgexpr=0xaa13398) at CGroupExpression.cpp:909 #5 0x0000000000f159c9 in gpos::CSyncHashtableAccessByKey<gpopt::CGroupExpression, gpopt::CGroupExpression>::NextMatch (value=<optimized out>, this=0x7ffc50d74270) at ../../../../../../src/backend/gporca/libgpos/include/gpos/common/CSyncHashtableAccessByKey.h:52 #6 gpos::CSyncHashtableAccessByKey<gpopt::CGroupExpression, gpopt::CGroupExpression>::Find (this=0x7ffc50d74270) at ../../../../../../src/backend/gporca/libgpos/include/gpos/common/CSyncHashtableAccessByKey.h:89 #7 gpopt::CMemo::PgroupInsert (this=0xaa69120, pgroupTarget=pgroupTarget@entry=0x0, pexprOrigin=pexprOrigin@entry=0xaa67b30, pgexpr=pgexpr@entry=0xaa10e68) at CMemo.cpp:245 #8 0x0000000000e52c09 in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xaa67b30, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=<optimized out>, fIntermediate=<optimized out>) at CEngine.cpp:334 #9 0x0000000000e52d68 in gpopt::CEngine::InsertExpressionChildren (this=this@entry=0x7ffc50d747c0, pexpr=pexpr@entry=0xaa2b5a8, pdrgpgroupChildren=pdrgpgroupChildren@entry=0xa982798, exfidOrigin=exfidOrigin@entry=gpopt::CXform::ExfInvalid, pgexprOrigin=pgexprOrigin@entry=0x0) at CEngine.cpp:275 #10 0x0000000000e52b9e in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xaa2b5a8, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=0x0, fIntermediate=<optimized out>) at CEngine.cpp:324 #11 0x0000000000e52d68 in gpopt::CEngine::InsertExpressionChildren (this=this@entry=0x7ffc50d747c0, pexpr=pexpr@entry=0xaa35328, pdrgpgroupChildren=pdrgpgroupChildren@entry=0x4954218, exfidOrigin=exfidOrigin@entry=gpopt::CXform::ExfInvalid, pgexprOrigin=pgexprOrigin@entry=0x0) at CEngine.cpp:275 #12 0x0000000000e52b9e in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xaa35328, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=0x0, fIntermediate=<optimized out>) at CEngine.cpp:324 #13 0x0000000000e52d68 in gpopt::CEngine::InsertExpressionChildren (this=this@entry=0x7ffc50d747c0, pexpr=pexpr@entry=0xaa229a8, pdrgpgroupChildren=pdrgpgroupChildren@entry=0x4999550, exfidOrigin=exfidOrigin@entry=gpopt::CXform::ExfInvalid, pgexprOrigin=pgexprOrigin@entry=0x0) at CEngine.cpp:275 #14 0x0000000000e52b9e in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xaa229a8, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=0x0, fIntermediate=<optimized out>) at CEngine.cpp:324 #15 0x0000000000e52d68 in gpopt::CEngine::InsertExpressionChildren (this=this@entry=0x7ffc50d747c0, pexpr=pexpr@entry=0xaa0a8a8, pdrgpgroupChildren=pdrgpgroupChildren@entry=0x5736f48, exfidOrigin=exfidOrigin@entry=gpopt::CXform::ExfInvalid, pgexprOrigin=pgexprOrigin@entry=0x0) at CEngine.cpp:275 #16 0x0000000000e52b9e in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xaa0a8a8, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=0x0, fIntermediate=<optimized out>) at CEngine.cpp:324 #17 0x0000000000e52d68 in gpopt::CEngine::InsertExpressionChildren (this=this@entry=0x7ffc50d747c0, pexpr=pexpr@entry=0xa9de6e8, pdrgpgroupChildren=pdrgpgroupChildren@entry=0xaa701a0, exfidOrigin=exfidOrigin@entry=gpopt::CXform::ExfInvalid, pgexprOrigin=pgexprOrigin@entry=0x0) at CEngine.cpp:275 #18 0x0000000000e52b9e in gpopt::CEngine::PgroupInsert (this=0x7ffc50d747c0, pgroupTarget=0x0, pexpr=0xa9de6e8, exfidOrigin=gpopt::CXform::ExfInvalid, pgexprOrigin=0x0, fIntermediate=<optimized out>) at CEngine.cpp:324 #19 0x0000000000e5369f in gpopt::CEngine::InitLogicalExpression (pexpr=<optimized out>, this=0x7ffc50d747c0) at CEngine.cpp:143 #20 gpopt::CEngine::Init (this=this@entry=0x7ffc50d747c0, pqc=pqc@entry=0x4938408, search_stage_array=search_stage_array@entry=0x0) at CEngine.cpp:201 #21 0x0000000000efb311 in gpopt::COptimizer::PexprOptimize (mp=mp@entry=0xa593418, pqc=pqc@entry=0x4938408, search_stage_array=search_stage_array@entry=0x0) at COptimizer.cpp:420 #22 0x0000000000efbae8 in gpopt::COptimizer::PdxlnOptimize (mp=mp@entry=0xa593418, md_accessor=md_accessor@entry=0x7ffc50d75840, query=query@entry=0x4940f18, query_output_dxlnode_array=query_output_dxlnode_array@entry=0x6143a18, cte_producers=cte_producers@entry=0x572cf38, pceeval=pceeval@entry=0x5732238, ulHosts=160, ulSessionId=45, ulCmdId=2417, search_stage_array=0x0, optimizer_config=0x57321e8, szMinidumpFileName=0x0) at COptimizer.cpp:317 #23 0x000000000100e86a in COptTasks::OptimizeTask (ptr=0x7ffc50d76360) at COptTasks.cpp:582 #24 0x0000000000cfa076 in gpos::CTask::Execute (this=this@entry=0x385f998) at CTask.cpp:130 #25 0x0000000000cfb008 in gpos::CWorker::Execute (this=0x7ffc50d76210, task=task@entry=0x385f998) at CWorker.cpp:81 #26 0x0000000000cf953d in gpos::CAutoTaskProxy::Execute (this=this@entry=0x7ffc50d76240, task=task@entry=0x385f998) at CAutoTaskProxy.cpp:286 #27 0x0000000000cfbc01 in gpos_exec (params=params@entry=0x7ffc50d762d0) at _api.cpp:247 #28 0x000000000100c951 in COptTasks::Execute (func=func@entry=0x100e580 <COptTasks::OptimizeTask(void*)>, func_arg=func_arg@entry=0x7ffc50d76360) at COptTasks.cpp:247 #29 0x000000000100db8e in COptTasks::GPOPTOptimizedPlan (query=query@entry=0x35d7ab0, gpopt_context=gpopt_context@entry=0x7ffc50d76360) at COptTasks.cpp:775 #30 0x000000000100fe61 in CGPOptimizer::GPOPTOptimizedPlan (had_unexpected_failure=0x7ffc50d763df, query=0x35d7ab0) at CGPOptimizer.cpp:58 #31 GPOPTOptimizedPlan (query=query@entry=0x35d7ab0, had_unexpected_failure=had_unexpected_failure@entry=0x7ffc50d763df) at CGPOptimizer.cpp:214 #32 0x00000000009d5398 in optimize_query (parse=parse@entry=0x42ad668, boundParams=boundParams@entry=0x42ab7c8) at orca.c:138 #33 0x00000000009c6606 in standard_planner (parse=0x42ad668, cursorOptions=0, boundParams=0x42ab7c8) at planner.c:241 #34 0x00000000009c6955 in planner (parse=parse@entry=0x42ad668, cursorOptions=cursorOptions@entry=0, boundParams=boundParams@entry=0x42ab7c8) at planner.c:200 #35 0x0000000000a8d38a in pg_plan_query (boundParams=0x42ab7c8, cursorOptions=0, querytree=0x42ad668) at postgres.c:970 #36 pg_plan_queries (querytrees=querytrees@entry=0x35c05b8, cursorOptions=0, boundParams=boundParams@entry=0x42ab7c8) at postgres.c:1029 #37 0x0000000000bcebd2 in BuildCachedPlan (plansource=plansource@entry=0x42ad3d8, qlist=0x35c05b8, boundParams=boundParams@entry=0x42ab7c8, intoClause=intoClause@entry=0x0) at plancache.c:942 #38 0x0000000000bcf525 in GetCachedPlan (plansource=plansource@entry=0x42ad3d8, boundParams=boundParams@entry=0x42ab7c8, useResOwner=<optimized out>, intoClause=intoClause@entry=0x0) at plancache.c:1263 #39 0x00000000008fdfb0 in _SPI_execute_plan (plan=plan@entry=0x7ffc50d76760, paramLI=paramLI@entry=0x42ab7c8, snapshot=snapshot@entry=0x0, crosscheck_snapshot=crosscheck_snapshot@entry=0x0, read_only=read_only@entry=0 '\000', fire_triggers=fire_triggers@entry=1 '\001', tcount=0) at spi.c:2208 #40 0x00000000008fef93 in SPI_execute_with_args ( src=0x5be3ab0 ".......\n"..., nargs=<optimized out>, argtypes=<optimized out>, Values=<optimized out>, Nulls=0x5bddeb8 " ", read_only=<optimized out>, tcount=0) at spi.c:596 #41 0x00007fe173ded31e in ?? () #42 0x0000000000000000 in ?? ()
The issue is fixed in 6.20.1.