View Issue Details

IDProjectCategoryView StatusLast Update
0000235Pgpool-IIBugpublic2016-08-29 16:44
Reporterhavetobeunknown Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionopen 
PlatformLinuxOSCentOSOS Version7.2.1511
Product Version3.5.3 
Summary0000235: Forking new child process every 60 seconds
DescriptionHi,

I'm using pgpool with streaming replication. I'm not sure if it's really a bug but every 60 seconds the following events occur (sorry for the long output):

.../....

Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 162545 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164342
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 161801 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164343
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 158989 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164344
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 160774 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164345
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 160873 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164346
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 162141 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164347
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: child process with pid: 161452 exits with status 256
Aug 25 08:47:31 my-hostname pgpool: 2016-08-25 08:47:31: pid 194396: LOG: fork a new child process with pid: 164348
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162679 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164877
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162459 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164878
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162456 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164879
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162797 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164880
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162140 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164881
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162142 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164882
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: child process with pid: 162552 exits with status 256
Aug 25 08:48:31 my-hostname pgpool: 2016-08-25 08:48:31: pid 194396: LOG: fork a new child process with pid: 164883
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 161244 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165085
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 160642 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165086
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162550 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165087
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162997 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165088
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162994 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165089
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162458 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165090
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162457 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165091
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: child process with pid: 162798 exits with status 256
Aug 25 08:49:31 my-hostname pgpool: 2016-08-25 08:49:31: pid 194396: LOG: fork a new child process with pid: 165092
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: child process with pid: 163517 exits with status 256
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: fork a new child process with pid: 165168
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: child process with pid: 161546 exits with status 256
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: fork a new child process with pid: 165169
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: child process with pid: 162455 exits with status 256
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: fork a new child process with pid: 165170
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: child process with pid: 163286 exits with status 256
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: fork a new child process with pid: 165171
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: child process with pid: 163183 exits with status 256
Aug 25 08:50:31 my-hostname pgpool: 2016-08-25 08:50:31: pid 194396: LOG: fork a new child process with pid: 165172
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 162544 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165259
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 161393 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165260
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 160641 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165261
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 163076 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165262
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 163426 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165263
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 161118 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165264
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 162678 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165265
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 163672 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165266
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 161797 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165267
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: child process with pid: 161888 exits with status 256
Aug 25 08:51:31 my-hostname pgpool: 2016-08-25 08:51:31: pid 194396: LOG: fork a new child process with pid: 165268
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163287 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165367
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163079 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165368
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163182 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165369
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 162795 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165370
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163514 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165371
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163082 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165372
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: child process with pid: 163751 exits with status 256
Aug 25 08:52:31 my-hostname pgpool: 2016-08-25 08:52:31: pid 194396: LOG: fork a new child process with pid: 165373
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 162139 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165562
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 164342 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165563
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 162546 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165564
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 158581 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165565
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 163184 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165566
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 162548 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165567
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 160464 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165568
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 161116 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165569
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 162684 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165570
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 163749 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165571
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: child process with pid: 162681 exits with status 256
Aug 25 08:53:31 my-hostname pgpool: 2016-08-25 08:53:31: pid 194396: LOG: fork a new child process with pid: 165572

.../...

I must say that pgpool still works fine as well as postgresql streaming replication (VIP failover is OK, master/slave failover is ok too). It simply that forking this much children every minute seems like a strange behavior. I couldn't find a configuration directive that could explain this.

Also, what bothers me is that the current pid_max value on my system is 196608. I don't know what will happen when pgpool will try to fork a process with a PID higher than this value (surely something bad). Of course, I can increase this limit but I don't think this should be the way to go ;)

The other thing I'd like to know is about the exit status 256 displayed in the logs. Does it reflect an error as it's not equal to 0 ?

Maybe, I'm just missing something here or a wrong configuration (see attachment) is responsible for this. Any help appreciated.
Steps To ReproduceConfigure pgpool with streaming replication. You can find the configuration I'm using in the attachment.
TagsNo tags attached.

Activities

havetobeunknown

2016-08-25 16:26

reporter  

pgpool.conf (2,790 bytes)

havetobeunknown

2016-08-25 17:18

reporter   ~0001022

Regarding the pid_max concern, the kernel should wrap around and find the first available pid when reaching the pid_max value. Sorry for the dumb question ;)

Muhammad Usama

2016-08-25 23:54

developer   ~0001025

Your pgpool.conf has child_life_time = 300 and num_init_children = 120. That means the pgpool-II will spawn 120 child processes and each child will restart itself if it is idle for 300 seconds(5 minutes). So apparently what's happening is after each minute the idle timer for some of the child processes gets expired and those child processes get restarted. If you set the child_life_time = 0 (disabled) then no child process will be restarted by pgpool because of idle timer.

And regarding the exit status 256. It is just normal.

havetobeunknown

2016-08-26 00:23

reporter   ~0001026

This perfectly makes sense. Sorry for bothering you with non-issues. I'm just starting to use PGPool - which seems to be a great piece of software btw - so I needed to know if I wasn't missing something.

Anyway, thanks for your time

t-ishii

2016-08-29 16:43

developer   ~0001028

Not a bug. Closed.

Issue History

Date Modified Username Field Change
2016-08-25 16:26 havetobeunknown New Issue
2016-08-25 16:26 havetobeunknown File Added: pgpool.conf
2016-08-25 17:18 havetobeunknown Note Added: 0001022
2016-08-25 23:54 Muhammad Usama Note Added: 0001025
2016-08-26 00:23 havetobeunknown Note Added: 0001026
2016-08-29 16:43 t-ishii Note Added: 0001028
2016-08-29 16:44 t-ishii Status new => closed