RE: strange slow query - lost lot of time somewhere

Jakub Wartak <jakub.wartak@tomtom.com>

From: Jakub Wartak <Jakub.Wartak@tomtom.com>
To: Pavel Stehule <pavel.stehule@gmail.com>
Cc: David Rowley <dgrowleyml@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2022-05-05T06:51:35Z
Lists: pgsql-hackers
Hi Pavel,

> I have not debug symbols, so I have not more details now
> Breakpoint 1 at 0x7f557f0c16c0
> (gdb) c
> Continuing.

> Breakpoint 1, 0x00007f557f0c16c0 in mmap64 () from /lib64/libc.so.6
> (gdb) bt
> #0  0x00007f557f0c16c0 in mmap64 () from /lib64/libc.so.6
> #1  0x00007f557f04dd91 in sysmalloc () from /lib64/libc.so.6
> #2  0x00007f557f04eaa9 in _int_malloc () from /lib64/libc.so.6
> #3  0x00007f557f04fb1e in malloc () from /lib64/libc.so.6
> #4  0x0000000000932134 in AllocSetAlloc ()
> #5  0x00000000009376cf in MemoryContextAllocExtended ()
> #6  0x00000000006ad915 in ExecInitMemoize ()

Well the PGDG repo have the debuginfos (e.g. postgresql14-debuginfo) rpms / dpkgs(?) so I hope you are basically 1 command away of being able to debug it further what happens in ExecInitMemoize()
Those packages seem to be safe as they modify only /usr/lib/debug so should not have any impact on production workload.

-J.





Commits

  1. Correct Memoize's estimated cache hit ratio calculation

  2. Fix incorrect row estimates used for Memoize costing

  3. Allow Memoize to operate in binary comparison mode