RE: FW: query pg_stat_ssl hang 100%cpu - Mailing list pgsql-bugs

From James Pang (chaolpan)
Subject RE: FW: query pg_stat_ssl hang 100%cpu
Date
Msg-id PH0PR11MB519119F13421060474C222CDD6EEA@PH0PR11MB5191.namprd11.prod.outlook.com
Whole thread Raw
In response to Re: FW: query pg_stat_ssl hang 100%cpu  (Thomas Munro <thomas.munro@gmail.com>)
List pgsql-bugs
#0  ensure_record_cache_typmod_slot_exists (typmod=0) at typcache.c:1714
#1  0x000000000091185b in assign_record_type_typmod (tupDesc=<optimized out>, tupDesc@entry=0x27bc738) at
typcache.c:2001
#2  0x000000000091df03 in internal_get_result_type (funcid=<optimized out>, call_expr=<optimized out>,
rsinfo=<optimizedout>,
 
    resultTypeId=<optimized out>, resultTupleDesc=0x7ffc9dff8cd0) at funcapi.c:393
#3  0x000000000091e263 in get_expr_result_type (expr=expr@entry=0x2792798,
resultTypeId=resultTypeId@entry=0x7ffc9dff8ccc,
    resultTupleDesc=resultTupleDesc@entry=0x7ffc9dff8cd0) at funcapi.c:230
#4  0x00000000006a2fa5 in ExecInitFunctionScan (node=node@entry=0x273afa8, estate=estate@entry=0x269e948,
eflags=eflags@entry=16)at nodeFunctionscan.c:370
 
#5  0x000000000069084e in ExecInitNode (node=node@entry=0x273afa8, estate=estate@entry=0x269e948,
eflags=eflags@entry=16)at execProcnode.c:255
 
#6  0x000000000068a96d in InitPlan (eflags=16, queryDesc=0x273b2d8) at execMain.c:936
#7  standard_ExecutorStart (queryDesc=0x273b2d8, eflags=16) at execMain.c:263
#8  0x00007f67c2821d5d in pgss_ExecutorStart (queryDesc=0x273b2d8, eflags=<optimized out>) at pg_stat_statements.c:965
#9  0x00000000007fc226 in PortalStart (portal=portal@entry=0x26848b8, params=params@entry=0x0, eflags=eflags@entry=0,
snapshot=snapshot@entry=0x0)
    at pquery.c:514
#10 0x00000000007fa27f in exec_bind_message (input_message=0x7ffc9dff90d0) at postgres.c:1995
#11 PostgresMain (argc=argc@entry=1, argv=argv@entry=0x7ffc9dff9370, dbname=<optimized out>, username=<optimized out>)
atpostgres.c:4552
 
#12 0x000000000077a4ea in BackendRun (port=<optimized out>, port=<optimized out>) at postmaster.c:4537
#13 BackendStartup (port=<optimized out>) at postmaster.c:4259
#14 ServerLoop () at postmaster.c:1745
#15 0x000000000077b363 in PostmasterMain (argc=argc@entry=5, argv=argv@entry=0x256abc0) at postmaster.c:1417
#16 0x00000000004fec63 in main (argc=5, argv=0x256abc0) at main.c:209
(gdb) p  RecordCacheArrayLen
$1 = 0
(gdb) p  RecordCacheArrayLen
$2 = 0
(gdb) p  RecordCacheArrayLen
$3 = 0
-----Original Message-----
From: Thomas Munro <thomas.munro@gmail.com> 
Sent: Thursday, September 7, 2023 5:31 PM
To: James Pang (chaolpan) <chaolpan@cisco.com>
Cc: Michael Paquier <michael@paquier.xyz>; PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Subject: Re: FW: query pg_stat_ssl hang 100%cpu

> #0  ensure_record_cache_typmod_slot_exists (typmod=0) at 
> typcache.c:1714

Are you able to print out the value of global variable RecordCacheArrayLen?  I wonder if this loop in
ensure_record_cache_typmod_slot_exists() is not terminating:

        int32       newlen = RecordCacheArrayLen * 2;

        while (typmod >= newlen)
            newlen *= 2;

pgsql-bugs by date:

Previous
From: Michael Paquier
Date:
Subject: Re: BUG #18077: PostgreSQL server subprocess crashed by a SELECT statement with WITH clause
Next
From: Thomas Munro
Date:
Subject: Re: FW: query pg_stat_ssl hang 100%cpu