PostgreSQL源码1:select 1

/opt/pg18d/bin/psql -p 5435

postgres=# select pg_backend_pid();

pg_backend_pid


2543087

(1 row)

postgres=#

gdb postgres 2543087

gdb postgres 2543087

GNU gdb (Red Hat Enterprise Linux) 16.3-2.0.1.el9

Copyright (C) 2024 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html\>

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.

Type "show copying" and "show warranty" for details.

This GDB was configured as "x86_64-redhat-linux-gnu".

Type "show configuration" for configuration details.

For bug reporting instructions, please see:

<https://www.gnu.org/software/gdb/bugs/\>.

Find the GDB manual and other documentation resources online at:

<http://www.gnu.org/software/gdb/documentation/\>.

For help, type "help".

Type "apropos word" to search for commands related to "word"...

postgres: No such file or directory.

Attaching to process 2543087

Reading symbols from /opt/pg18d/bin/postgres...

Reading symbols from /lib64/libz.so.1...

Reading symbols from /usr/lib/debug/usr/lib64/libz.so.1.2.11-1.2.11-40.el9.x86_64.debug...

Reading symbols from /lib64/libm.so.6...

Reading symbols from /usr/lib/debug/usr/lib64/libm.so.6-2.34-275.0.1.el9_8.x86_64.debug...

Reading symbols from /lib64/libicui18n.so.67...

Reading symbols from /usr/lib/debug/usr/lib64/libicui18n.so.67.1-67.1-10.el9_6.x86_64.debug...

Reading symbols from /lib64/libicuuc.so.67...

Reading symbols from /usr/lib/debug/usr/lib64/libicuuc.so.67.1-67.1-10.el9_6.x86_64.debug...

Reading symbols from /lib64/libc.so.6...

Reading symbols from /usr/lib/debug/usr/lib64/libc.so.6-2.34-275.0.1.el9_8.x86_64.debug...

Reading symbols from /lib64/ld-linux-x86-64.so.2...

Reading symbols from /lib64/libstdc++.so.6...

Reading symbols from /usr/lib/debug/usr/lib64/libstdc++.so.6.0.29-11.5.0-14.0.1.el9.x86_64.debug...

Reading symbols from /lib64/libgcc_s.so.1...

Reading symbols from /usr/lib/debug/usr/lib64/libgcc_s-11-20240719.so.1-11.5.0-14.0.1.el9.x86_64.debug...

Reading symbols from /lib64/libicudata.so.67...

Reading symbols from /usr/lib/debug/usr/lib64/libicudata.so.67.1-67.1-10.el9_6.x86_64.debug...

(No debugging symbols found in /usr/lib/debug/usr/lib64/libicudata.so.67.1-67.1-10.el9_6.x86_64.debug)

Thread debugging using libthread_db enabled

Using host libthread_db library "/lib64/libthread_db.so.1".

0x00007fef2410fdda in epoll_wait (epfd=6, events=0x2ef6990, maxevents=1, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30

30 return SYSCALL_CANCEL (epoll_wait, epfd, events, maxevents, timeout);

(gdb)

设置断点:

(gdb) b ExecResult

Breakpoint 1 at 0x7c6677: file nodeResult.c, line 69.

(gdb)

psql执行select 1;

postgres=# select 1;

gdb输入c

(gdb) c

Continuing.

Breakpoint 1, ExecResult (pstate=0x2fd3768) at nodeResult.c:69

69 ResultState *node = castNode(ResultState, pstate);

(gdb)

gdb输入bt

gdb输入list可以查看当前

gdb输入up,down

相关推荐
考虑考虑1 小时前
瀚高数据库
数据库·后端·postgresql
IvorySQL3 小时前
开源数据库进校园| 11 月 3 日,IvorySQL 校园行走进浙大宁波校区:从 PostgreSQL 扩展生态到 AI 实战
数据库·postgresql·开源
瀚高PG实验室6 小时前
瀚高数据库创建新数据库卡住问题排查
数据库·postgresql·瀚高数据库
瀚高PG实验室1 天前
HGDB V9.0.5 .pgpass 免密登录提示 IsEncryptNon-base64 encoding 警告处理
数据库·postgresql·瀚高数据库
IvorySQL1 天前
PostgreSQL 日报|Anonymizer 3.3 修复高危漏洞(10 月 29 日)
数据库·postgresql
geovindu1 天前
SQL Data Sampling and Approximation Techniques using postgreSQL 18
大数据·数据库·数据仓库·sql·postgresql·数据库开发·数据库架构
小手cool1 天前
PostgreSQL 基础入门:从安装到核心概念
数据库·postgresql
代码派1 天前
PostgreSQL 同构迁移上云方案|NineData 数据复制、实时增量与一致性校验
数据库·postgresql·上云·ninedata·迁移·数据库迁移·版本升级
Jack N1 天前
【Strapi 系列之八】二次开发 + 生产部署,Docker + PostgreSQL + Nginx 一把梭
nginx·docker·postgresql·strapi
瀚高PG实验室1 天前
瀚高数据库提交数据后,是否需要COMMIT
数据库·postgresql·瀚高数据库