forked from cpanelWade/cPanel-TaskQueue
-
Notifications
You must be signed in to change notification settings - Fork 10
/
Changes
146 lines (144 loc) · 7.26 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
Revision history for cPanel-TaskQueue
0.903
- Fix exception when serializing a TaskQueue object
- Fix race condition in test exposed by Perl v5.35 (#34)
- Simplify tests by using File::Temp
- Mass Tidy codebase
- Add GitHub CI workflow
0.902
- Revert: Use atomic filesystem operations for cPanel::StateFile.
"we have code that fails when the file is changed out from under it"
- Avoid giving up a lock when we are forking
- Reduce reconstitute overhead by 40%
- Try non-blocking flock before expensive alarm setup
- Auto generate META.json as suggested by CPANTS.
0.901
- Don't confuse callers by returning a failure if plugin already included
- Travis testing
- Track Makefile.PL for Travis
- Adjust tests to pass as a result of 3d8ad9b6de
- All tests run always now. CPANEL_SLOW_TESTS requirement was hiding bugs
- Merge POD with PM for better long term management.
- Perl Tidy
- README.mkdn for github
- Use atomic filesystem operations for cPanel::StateFile.
0.900
- ???
0.???
- Correct deferral logic to clear tags when a task completes
- Correct flawed load logic relating to resuming after pause.
0.700 2014-10-15 16:37:12 America/Chicago
- Add ability to flush all scheduled tasks to the waiting queue, whether
or not they have reached their scheduled time.
- Add the ability to delete all scheduled tasks.
- Add the ability to delete all unprocessed tasks.
- Corrected handling of optional --serial parameter in taskqueuectl.
- Added flush_scheduled_tasks to Ctrl logic to support the new
functionality.
- Added delete_unprocessed_tasks to Ctrl logic to support the new
functionality.
0.606 2014-02-20 12:56:10 America/Chicago
Only update state file if not already up to date.
0.605 2013-04-12 11:09:30 America/Chicago
Remove concurrency problem that could result in lost tasks. Weaken
reference to data object that causes a memory leak.
0.604 2012-11-29 12:41:58 America/Chicago
Correct scheduler code to use the new reconstitute method to restore
task objects loaded from disk.
0.603 2012-11-26 10:47:36 America/Chicago
Add flag to prevent YAML::Syck from reblessing objects from disk. This
turns out to be a security problem. Add c::TQ::Task::reconstitute class
method to recreate Task objects that have been serialized.
0.602 2012-10-26 16:06:06 America/Chicago
Correct importing of cPanel::TaskQueue::Scheduler in the module
cPanel::TaskQueue::ChildProcessor. Failed if configuration had been set
to non-defaults elsewhere in the code.
0.601 2011-09-15 16:19:13 America/Chicago
Better handling of conversion of state files in taskqueuectrl.
Add 'info' command that displays serialization information.
Corrected error is pause/resume handling.
Added a 'process' command to force the TaskQueue to execute a task.
0.600 2011-09-14 12:40:57 America/Chicago
Add support for serializing the queue and scheduler data in Storable
format as well as YAML.
Default the queue and scheduler to Storable for serialization.
Provide command in taskqueuectl to convert from one serialization format
to another.
Improve test coverage.
0.504 2011-07-28 12:14:24 America/Chicago
Testing had shown no more problems. Upgrading to an official release.
0.503_04 2011-07-15 13:26:37 America/Chicago
One more attempt to kill the race condition reported by CPANTESTERS.
0.503_03 2011-07-11 11:15:02 America/Chicago
Many CPANTESTERS machines apparently do not allow writing to /tmp, but
still have File::Spec->tmpdir() returning that directory. Modified temp
directory handlign in tests.
Modify test to reduce failure due to race condition.
0.503_02 2011-01-25 12:12:37 America/Chicago
More CPANTESTERS cleanup.
0.503_01 2011-01-04 15:55:34 America/Chicago
Clean up errors found by CPANTESTERS.
Correct t/taskqueue_processor_checked_system.t to allow it to pass on
a Solaris or Windows system.
Fixed the same test to correctly handle a missing Test::Exception module.
Attempt to make statefile_load_save test more robust.
Make task_scheduler test more robust.
0.503 2011-01-03 10:49:47 America/Chicago
Fix a Fork/exception interaction in cPanel::TaskQueue::ChildProcessor
that results in multiple server processes running.
0.502 2010-11-22 12:13:24 America/Chicago
Pass the logger object from the CacheFile to the process_task routine
on the processor. This way the processor can log properly.
Make certain that a task with no processor is removed from the queue.
Add checked_system utility method in Processor object.
0.501 2010-11-17 13:39:41 America/Chicago
Correct dependencies to remove local testing modules.
Remove other unnecessary dependencies.
0.500 2010-11-03 13:27:14 America/Chicago
Move exception handling toward best practice.
Rename the CacheFile concept to StateFile, which is more accurate.
Add ability to pause processing waiting tasks into the processing phase.
Add support deferral logic.
0.400 Tue Jul 13 13:00:00 2010
Change namespace to reside in cPanel modules.
Make taskqueued more robust as a daemon.
First external release.
0.306 Tue Jul 8 15:00:00 2010
Add the Ctrl code and the taskqueuectl script.
Add taskqueuerun program to perform one process step in the quue.
Add taskqueued program as a basic queue running daemon.
0.305 Thu May 13 10:00:00 2010
Extended testing.
Add support to PluginManager for loading particular plugins.
Protect ChildProcessor from SIGCHLD events.
0.302 Tue May 4 12:00:00 2010
Reduce aggressiveness of the file locking on the queue file in the
code checking for completed child processess.
0.301 Fri Apr 29 16:30:00 2010
Prevent scheduler from updating schedule file unnecessarily.
Reduce file locking for schedule and queue files that are not changing.
0.300 Wed Sep 9 10:30:00 2009
Added logic to recover from a corrupted cachefile on initial load.
Split POD out of source files to speed loading.
Add notify mechanism.
Bumped all version numbers for consistency.
0.2.2 Wed Aug 19 15:44:00 2009
Corrected error reporting in the case the cachefiles are corrupted.
0.2.0 Wed Apr 1 12:00:00 2009
Reducing memory footprint: remove warnings, Class::Std, List::Util,
File::Spec, File::Path, and Cwd.
0.1.2 Wed Mar 11 16:00:00 2009
Added find_command and extended test coverage.
Increased robustness thanks to more extensive testing. Corrected a
couple of errors on error-recovery paths.
Fixed a bad assumption in the file locking code.
Updated documentation on some of the classes.
Add the Cookbook documentation.
0.1.1 Not Released
Better queue and scheduling cachefile formats. Corrected typo in docs.
0.1.0 Wed Feb 18 15:00:00 2009
First release for use in the CPanel code.
0.0.5 Not Yet Released
Redo the logging and locking policy code to something more reasonable.
0.0.4 Tue Dec 2 12:27:27 2008
Initial internal release.