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