I mean pm_exit, not exit. gbjk++
[catagits/FCGI-ProcManager.git] / ChangeLog
CommitLineData
81d9a31b 10.21 2011-08-02 Tomas Doran <bobtfish@bobtfish.net>
2 * Ship a working dist.
3
8f6956a6 40.20 2011-08-02 Gareth Kirwan <gbjk@cpan.org>
3347bf0d 5 * ProcManager::Constrained: Add a new FCGI::ProcManager::Constrainted
6 subclass which will restart workers safely after a certain number of
7 requests, or at certain memory thresholds.
69817330 8 * ProcManager: Fix start_delay causing a permanent hang.
3347bf0d 9
356c720b 100.19 2009-07-22 Gareth Kirwan <gbjk@cpan.org>
11
12 * ProcManager.pm: Add a pm_title option to configure the process title
13 assigned to $0
14
150.18 2007-12-18 James Jurach <muaddib@erf.net>
16
17 * ProcManager.pm: Remove constraint that parent process cannot die.
18
9d643399 190.17
20
21 * ProcManager.pm: Remove constraint that process can't change pid.
22 This resolves the daemon exiting after first child dies
23 if the process id of the daemon has changed since starting.
24 This commonly happens when a script waits to check for the
25 socket being available and working before forking and exitting.
26 It can also happen in a race condition of fork && exit when
27 the exit is delayed until after the forked child has already
28 spawned the fastcgi handlers.
29
50f238cd 302001-04-23 18:12 James Jurach <muaddib@erf.net>
31
32 * ProcManager.pm: SIGHUP handler now issues SIGTERM to children but
33 then proceeds normally. added documentation blurb about signal
34 handling. we now use POSIX::sigaction() to avoid SA_RESTART during
35 certain regions. added re-usable POSIX::SigAction members to toggle
36 SA_RESTART. added sig_sub() -- necessary to pass name to
37 POSIX::SigAction creation.
38
39 * README: added small blurb to consult FCGI::ProcManager
40 documentation.
41
42 * t/exporter.t:
43 * t/procmanager.t: fixed pm_manage() test.
44
452001-03-13 18:12 James Jurach <muaddib@erf.net>
46
47 * ProcManager.pm: removed check for FCGI_ROLE. now more
48 transparent when undesired.
49
50 * ProcManager.pm: detect when no FastCGI environment exists.
51
52 * ProcManager.pm: only warn and sleep -- do not abort on fork
53 failure.
54
55 * ProcManager.pm: now, we give notification to which processes we
56 send a TERM signal.
57
c2bbadb3 582001-02-09 10:16 James Jurach <muaddib@erf.net>
59
60 * t/: exporter.t, procmanager.t: made it easier to manage
61 sample_request_loop() for testing.
62
63 * ProcManager.pm: modified some error messages. added immediate
64 notify of manager signal.
65
66 * ProcManager.pm: added more documentation. renamed
67 pm_reap_server() to pm_wait(). fixed problem when ! MANAGER_PID
68 that caused server to die immediately we now delete list of child
69 PIDs from each child. added mechanism to pm_exit() to send a
70 SIGKILL to any remaining children.
71
518709ed 722001-01-31 01:13 James Jurach <muaddib@erf.net>
73
74 * README: more documentation
75
76 * ProcManager.pm: re-organized method layout. separated manager
77 vs. server vs. common moved more intialization into managing_init()
78 and handling_init() created pm_die() to be called when manager
79 should die. cleaned up error messages and notifications.
80
81 * t/: exporter.t, procmanager.t: revised test messages
82
832001-01-30 16:35 James Jurach <muaddib@erf.net>
84
85 * t/: exporter.t, procmanager.t: removed call to pm_state()
86
87 * ProcManager.pm: removed sleep() call after testing
88 signal-during-fork-loop
89
902001-01-30 12:49 James Jurach <muaddib@erf.net>
91
92 * ProcManager.pm: Cleaned up pm_manage(). removed signal
93 registration routines. replaced by direct %SIG access. there is
94 now a manager signal handler and a handler signal handler. added
95 checks to die when getppid() changes.
96
972001-01-20 02:06 James Jurach <muaddib@erf.net>
98
99 * MANIFEST: removed Changes from MANIFEST
100
1012001-01-13 00:44 James Jurach <muaddib@erf.net>
102
103 * t/procmanager.t: corrected various recent method name changes.
104 removed calls to want_to_die(). added request loop hooks to
105 pm_pre_dispatch(), pm_post_dispatch(). renamed sample_handler() to
106 sample_request_loop().
107
108 * ProcManager.pm: renamed request loop hooks to pm_pre_dispatch(),
109 pm_post_dispatch(). when pm_manage() is called with
110 n_processes==0, return through goto. renamed pre_manage_init() to
111 managing_init(). renamed post_manage_init() to handling_init().
112 added received_signal() to remember that a signal was received.
113 signal handler simpler: now only notes signal and propagates
114 signal.
115
116 * t/exporter.t: this uses non-OO calling mode.
117
118 * MANIFEST: added t/exporter.t.
119
120 * Changes: ChangeLog is where per-file changes are listed.
121
1222000-12-22 05:58 James Jurach <muaddib@erf.net>
123
124 * ProcManager.pm: corrected logic error in self_or_default().
125 changed all occurances of write_pid_file() to pm_write_pid_file().
126 changed all occurances of remove_pid_file() to
127 pm_remove_pid_file().
128
1292000-12-14 17:54 James Jurach <muaddib@erf.net>
130
131 * ProcManager.pm: corrected state() -> pm_state() method call.
132
1332000-12-10 17:25 James Jurach <muaddib@erf.net>
134
135 * ProcManager.pm: corrected some method renaming issues.
136
1372000-12-09 19:48 James Jurach <muaddib@erf.net>
138
139 * t/procmanager.t: effected the changes to these subroutine names.
140
141 * ProcManager.pm: made this module OO/Exporter hybrid. removed
142 treatment of $ENV{PROCMANAGER_PROCESSES} from constructor. changed
143 several subroutine names.
144
1452000-12-05 22:23 James Jurach <muaddib@erf.net>
146
147 * ProcManager.pm: made SIGHUP's do what SIGTERM's do
148
1492000-11-20 James Jurach <muaddib@erf.net>
150
151 * Released first public version.