~mm-yuhu/gearmand/server-funcs

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
0.13
 * Fixed bug where memory loss occured if data was too large.
 * Added gearman_strerror().
 * Fixed bug where setting an option off in mass would not trip any 
   triggers on the option (for both worker and client).
 * Options that are internal can no longer be set by external
   callers.
 * Deprecated gearman_client_set_event_watch_fn() and
   gearman_worker_set_event_watch_fn.  
   
 * gearman_job_handle() and gearman_job_function_name() now return const char* pointers 

 * gearman_worker_unregister now returns GEARMAN_NO_REGISTERED_FUNCTION if the function does not exist (or is being removed)

 * Added gearman_worker_function_exist()

 * Trying to send too large of a piece of data will result in GEARMAN_ARGUMENT_TOO_LARGE.

 * Added support for gearmand command client to daemonize and create a pid file.

0.12 - 2010-01-??
 * Fixed job handle comparison bug with WORK_FAIL responses.
 * Fixed disable assert configure option.
 * Build system updates.

0.11 - 2009-11-30
 * Added max wakeup-worker option to gearmand. Default is still to wakeup all.
 * API and documentation cleanup.
 * Fixed bug where task context free function was getting called for do()
   functions. This was PECL/Gearman bug #16899 as well.
 * Fixed bug #458912, not flushing with multiple gearmands in client.
 * Fixed PECL/Gearman bug #16847, was actually in C library and not in PHP.
 * Fixed C++ build/test/ issue, updated pandora build system.
 * Removed packet varargs function.

0.10 - 2009-09-28
 * Added timeout option.
 * Separated libgearman client/worker library from the server/gearmand code.
 * Added server option for max job retry.
 * Changed queue_libdrizzle to overwrite the password string to hide in ps.
 * Worker unregister bug fixed. Bug #372074
 * Added memory ownership functions so applications can pass control with
   tasks, jobs, and packets.
 * Changed gearmand to remap stdio to /dev/null for detaching. Bug #407242
 * Fixed bug that now allows workers to run concurrent jobs.
 * Changed behavior of sending NOOPs to one per PRESLEEP, rather than only
   having one in the outgoing queue at any time.
 * API cleanup to make the code more consistent and object-oriented.
 * Added more documentation for base classes, client, and worker.
 * Build system updates.

0.9 - 2009-07-20
 * Added libsqlite3 persistent queue support (Cory Bennett).
 * Added libpq (PostgreSQL) persistent queue support.
 * Updated autoconf build system.
 * Doxygen documentation cleanup.
 * Bug fix in HTTP protocol module.

0.8 - 2009-06-30
 * Added pluggable protocol support.
 * Added basic HTTP protocol support.
 * Updated autoconf build system.
 * Renamed modconf to gearman_conf.
 * Improved logging messages for gearmand.
 * Removed all struct memsets and packed structs for better memory usage.
 * Fixed client connect bug with multiple job servers.
 * Fixed server spinning bug with long running jobs and large workloads.

0.7 - 2009-05-31
 * Added libmodconf for config option processing. Eventually this will be split
   into a separate library. Updated gearmand and tests to use libmodconf.
 * Fixed persistent queue bug where jobs were not removed after replay.
 * Fix for bug #379198.
 * Changed done() function for queue, function_name is now passed to it as
   well as unique.
 * Fixed text protocol command response to be dynamic length.
 * Fixed libevent usage to support libevent 1.1 (still used in CentOS and Suse).
 * Added gearman_*_add_servers to client/worker interfaces for taking
   server lists.

0.6 - 2009-05-19
 * Changed behavior so forground jobs are not run when their connected clients
   disconnect. This is how the Perl server behaves.
 * Changed to named logging macros, making it easier for module writers to use.
 * Added persistent queue support with a libdrizzle module. This allows queue
   storage for both Drizzle and MySQL.
 * Added Solaris service scripts (Trond Norbye).
 * Fixed rpm building (make rpm).
 * Removed AI_V4MAPPED for client/worker connect lookup, not fully
   supported in all operating systems (like FreeBSD, bug #373060).
 * Support for gearmand to bind to multiple addresses.
 * Protocol document updates and fixes (Eric Day, Eric Herman).
 * Bind to specific hostname in gearmand (Brian Moon).
 * Minor cleanup and fixes.

0.5 - 2009-04-22
 * Threaded Gearman job server (gearmand).
 * More options to gearmand.
 * OSX bug fixes related to poll().
 * Fix for bug #357881.
 * Man page rework.

0.4 - 2009-03-30
 * New protocol additions such as UNIQ grab and assign for workers.
 * Support for high priority background jobs (Brian Moon).
 * Support for low priority jobs.
 * New priority queue in server to support new protocol options.
 * Reworked the unique ID checking in server.
 * Added hooks to aid in client memory cleanup.
 * Added gearman command line utility to allow you to use clients and
   workers from the shell.
 * Build fixes (Monty Taylor).
 * Basic init script added.
 * Fixed getopt bugs with variable type and EOF.

0.3 - 2009-02-05
 * Fixed I/O wait bug in packet parse.
 * Switched to different autoconf library detection method.
 * Added detach option to gearmand, can now run in background.
 * Reworked much of the client code for better concurrency and efficiency.
 * Added benchmark utilities.
 * Added man pages.
 * Changed port to new IANA assigned port, 4730.

0.2 - 2009-01-16
 * Improved gearmand efficiency by tracking events and reducing syscalls.
 * Reworked most of the worker code, it now reconnects to the job server.
 * Added version/bugreport options to gearmand (Brian Moon).
 * Fixed bug #315652, libevent usage.

0.1 - 2009-01-08
 * First release.