作者:huo斌_340 | 来源:互联网 | 2023-10-13 16:32
早在1月份,发现gp的master上conn占用内存太高了,只是方式没有一起足够的重视,才导致了这次事故的发生。我们如何得知某个conn被哪些PPID执行过?通过该命令可以得知p
早在1月份,发现gp的master上conn占用内存太高了,只是方式没有一起足够的重视,才导致了这次事故的发生。
我们如何得知某个conn被哪些PPID 执行过?
通过该命令可以得知posgrePID一共fork了多少个PPID。
pstree -up| grep "{postgres}"|wc -l
这个有什么意义呢?并发大的时候、sql复杂的时候 ......PPID的数量就多?
下面是postgre主进程fork一个 PPID:26984,该PPID又fork了很多PPID。
可以看到这个PPID是在执行一个insert的sql在使用这个conn。
~]# ps -ef|grep 26948
root 21845 27996 0 17:30 pts/5 00:00:00 grep 26948
gpadmin 26948 7289 0 May20 ? 01:26:05 postgres: port 5432, etl qmsprd 10.50.10.46(22070) con1823 10.50.10.46(22070