1 Apache TomcatApache Logo
2 ---------------------------------------------------------------------------
3 The Apache Tomcat Connector - Miscellaneous Documentation
8 This is the Changelog for Tomcat Connectors. This changelog does not
9 contain all updates and fixes to the Tomcat connectors (yet). It should
10 contain fixes made only after November 10th 2004, when the new
11 documentation project for JK was started.
13 Changes between 1.2.31 and 1.2.32
15 fix 51417: Fix worker busy detection by querying the worker
16 endpoint. Abandoned connections can leave a worker in busy
17 state without decrementing busy counter. (mturk)
18 fix 50339: Fix whitespace trimming when parsing attribute lists.
20 fix 41263: Support Servlet API getRemotePort(). Works for Tomcat
21 5.5.28, 6.0.20 and 7.0.0 and Apache and ISAPI plugins. (rjung)
22 fix 41923: AJP: Close AJP connection to Tomcat on client write
23 error when recovery_options 4 is specified, aborting the
24 response write on the Tomcat side. (timw)
25 update AJP: Cap the lingering bytes that will be read when shutting
26 down an AJP socket at 32k to prevent CPU spikes in the web
27 server when a client aborts on a large response body. Also
28 reduce total linger time to 2s. (timw)
29 fix 50839: AJP: Fix 30sec CPU spike due to incorrect counting of
30 lingering bytes causing a busy loop when a client aborts
31 connection during a response write. Fixes regression in
33 add LB: Forward worker activation state as request attribute
34 "JK_LB_ACTIVATION". Possible values are "ACT" (active), "DIS"
35 (disabled) and "STP" (stopped). (rjung)
36 fix HTTPD: Forward WWW-Authenticate from backend when status is
37 401 and server generated error pages are used. (rjung)
38 fix 50363: IIS: Prevent chunk encoding of empty message bodies for
39 204, 205 and 304 responses. (timw)
40 fix 50975: IIS: Fix hanging of Transfer-Encoding: chunked requests
41 when Content-Length header is present in request as well. Also
42 addresses situation where IIS appears to create a
43 Content-Length header for a small chunk encoded request when
44 none was present in the original request. (timw)
45 fix 47679: IIS: stop truncation of request headers when ISAPI
46 redirector used as an extension without the corresponding
47 filter installed. (timw)
48 fix NSAPI: Use lower case header names for responses. Otherwise
49 the web server might add chunked transfer encoding header in
50 addition to our content length header.
51 update Docs: Improve load balancer documentation. (rjung)
53 Changes between 1.2.30 and 1.2.31
55 fix 49413: AJP13: Drop flush packets send by the backend after the
56 response has been finished. (rjung)
57 update AJP: Log the local and remote socket address. (mturk)
58 update Watchdog: Move the maintain workers outside the critical
59 section allowing other threads to use the connection pool
60 during maintenance. (mturk)
61 update Common: Add svn revision to init log message. (rjung)
62 fix Common: Don't destroy errno during trace logging. (rjung)
63 update Apache: Add support for Apache 2.3/2.4. (rjung)
64 update Apache: Added version number resource for mod_jk.so on
66 update 48501: IIS: Added rotatelogs style log rotation to ISAPI
68 fix 38895: IIS: Use RAW headers instead of CGI headers by default
69 to prevent conversion of underscores '_' to hyphens '-' in
70 header names. Old behaviour can be enabled by defining
71 USE_CGI_HEADERS. (timw)
72 fix 49511: IIS: Do not override IIS log information when
73 subsequent requests on a keep-alive connection are not mapped
74 into the ISAPI Redirector. (timw)
75 fix Docs: Document SSLOptions needed for SSL information
77 update Docs: Grammar and style improvements and clarification about
78 serving static content by IIS. Patch provided by André
80 fix Docs: Update subversion paths used in docs. (rjung)
82 Changes between 1.2.28 and 1.2.30
84 update Apache: Improve compatibility with Apache 2.3. (rjung)
85 fix 46632: Apache: Do not register child cleanup for our pools.
87 fix 46893: Apache: Log warning only if JkShmSize was actually set
88 in the configuration. (mturk)
89 update IIS: Include optional chunking support. Off by default.
91 fix 48763: IIS: Do not send Content-Length when using chunked
92 encoding or length larger 4GB. (mturk)
93 fix 48223: IIS: Propagate correct backend error code to IIS.
95 fix 47867: IIS: crash during startup, when compiled with VS2008
96 and workers.properties contains unsupported properties. Patch
97 provided by Indrek Juhani (rjung)
98 fix 47628: IIS: Fix deadlock when restarting the Application Pool
99 caused by not releasing the critical section lock. Patch
100 provided by Bret Prucha. (mturk)
101 fix IIS/NSAPI: Correct log file flushing after each line. (mturk)
102 add NSAPI: Add Microsoft Visual C++ Makefile. (mturk)
103 update AJP: Improve socket shutdown handling. (mturk)
104 update AJP: Ensure we never reuse a non reusable socket. (mturk)
105 update AJP: Tolerate a single excess packet when waiting for cpong.
107 update AJP: Check protocol correctness more strictly. (mturk)
108 update 48410: AJP: Use poll instead select so we can work with more
109 then 1024 sockets. (mturk)
110 fix 46503: AJP/Status: Garbage data in worker domain and route.
112 fix 48276: AJP: When worker contact cannot be resolved mark the
113 worker as disabled instead failing to start the server.
115 fix 48169: AJP: Improve CGI interoperability by closing all
116 sockets during EXEC. (mturk)
117 add Status: Add number of open backend connections to status
118 worker. This feature is experimental, the displayed value
119 might not be accurate. (mturk)
120 update 47224: Status: When address gets changed invalidate all opened
121 sockets in the endpoint cache. This will cause new backend
122 connections to get opened using new address. (mturk)
123 fix 48305: Status: Do not show "secret" property when doing dump.
125 fix 45610: Status: Don't accept requests with empty value for sub
126 worker parameter. (rjung)
127 fix 45610: Status: Fix erroneous unsetting of sticky_session and
128 sticky_session_force when updating other load balancer
129 attributes via the status worker. (rjung)
130 fix 47222: Status: Add ping_timeout to the shared memory and allow
131 dynamic configuration. (mturk)
132 fix Status: Remove duplicate "errors" line in property view of
133 AJP13 workers that are part of a load balancer. (rjung)
134 fix LB: Fix route logging. (rjung)
135 update Logging: Automatically detect size of thread id for logging.
137 update Logging: Add optional log file locking for Windows when
138 defining JK_LOG_LOCKING. (mturk)
139 update Configuration: Update example configuration. (rjung)
140 update Docs: Update information about tools needed to create a
142 fix 47983: Docs: Fix typo in example config which breaks startup.
144 update Build: Force copy of automake files. (rjung)
145 update Build: Tomcat code repository structure cleanup reflected in
146 documentation and build script. (rjung, mturk)
148 Changes between 1.2.27 and 1.2.28
150 add Apache: Add more environment variables to overwrite request
151 information. Useful in case a proxy is in front of Apache and
152 sends us original request information e.g. via custom headers.
154 update Apache: No longer preallocate entries for JK request log.
156 fix 46352: Apache: Fix crash when using SetHandler jakarta-servlet
157 in VHost without any JkMount. Crash due to incorrect
158 initialization of mount extensions. (rjung)
159 fix Apache: JkWatchdogInterval had wrong interval calculation
160 causing a 10 times higher watchdog interval then configured.
162 fix Apache: Activate forwarding of SSL key size by default.
164 fix 46169: Apache 1.3: Backport use_server_errors mount extension.
166 fix 46763: Apache 2.0: Survive the log mutex during graceful
167 restart. Patch provided by Eiji Takahashi. (mturk)
168 fix 46416: Apache 2.0 on Windows: Include mstcipip.h even if the
169 apr doesn't include it. (mturk)
170 update IIS: Update uriworkermap.properties file on a regular
171 interval. This requires both worker_mount_reload and
172 watchdog_interval to be defined. (mturk)
173 update IIS: Remove obsolete entries from registry file. (mturk)
174 fix 46579: IIS: Use local environment table instead environment
175 variables for setting the JKISAPI_PATH and JKISAPI_NAME.
177 update LB: Add new property error_escalation_time to fine tune
178 escalation of local errors to global errors. (rjung)
179 update LB: If the sticky session affinity mark contains a dot, treat
180 the part before the dot as the domain name. This allows to
181 have full node session affinity with domain failover. (mturk)
182 fix LB: make forced recovery work with local error states. (rjung)
183 fix LB: Only update error state and error time, if we actually
184 have a new state. (rjung)
185 fix LB: Set global worker state to error when we reach
186 max_reply_timeouts, or fail_on_status triggered hard error.
188 update AJP: Add a new error type JK_AJP_PROTOCOL_ERROR. (mturk)
189 update AJP: Allow worker ports lower or equal to 1024. (rjung)
190 update AJP: Improve some AJP error log messages. (mturk)
191 update Status: Allow changing worker address and port of AJP workers.
192 The address is resolved on next request for that worker.
194 update Status: Allow update actions to show error messages in the
196 update Status: Refactor update actions. (rjung)
197 update Status: Do not redirect to the show or list page, if an error
198 occured during an action. (rjung)
199 update Status: Include error time in display. (rjung)
200 update Status: Remove redundant port information from worker display.
201 Rename address column and remove its explanation from the
203 update Status: Optimize forced uriworkermap.properties reload.
205 fix Status: Fix crash in text display. (rjung)
206 fix Status: Show - Edit - Show always ends in single lb member
207 show, even when started from all members lb show. (rjung)
208 fix Status: Wildcards in sub worker names were broken for update
210 fix Status: Add use_server_errors to map display. (rjung)
211 update SHM: Move locking into the data pull and push methods. (rjung)
212 update JNI: Deprecate JNI workers. (rjung)
213 fix Netware: Missing define for MAX_PATH. Patch by Guenter Knauf.
215 update Docs: Add a new HowTo page about reverse proxies. (rjung)
216 update Docs: Add an explanation of local error states to the timeouts
217 documentation. (rjung)
218 update Docs: Clarify relation between socket_timeout and
219 socket_connect_timeout. (rjung)
220 update Docs: Clarify IIS URL rewrite feature. (rjung)
221 fix 46834,46734: Docs: Fix a couple of missing or broken links.
223 fix Docs: Add 2008 news to main page and menues. (mturk, rjung)
225 Changes between 1.2.26 and 1.2.27
227 fix 46109: Decay reply_timeouts even when lb method is busyness.
228 Also reset reply_timeouts during forced recovery. (rjung)
229 update AJP13: Recycle connection if previous request didn't complete.
231 update Maintain should not run multiple times in parallel. (mturk)
232 fix Apache: Fix small memory leak during restart. (mturk)
233 update Improve signal handling during socket shutdown. (mturk)
234 add URI Map: Add debug dump function for uri worker map. (rjung)
235 update Add revision number to version info for non-release builds.
237 add IIS: Optionally allow chunked encoding for responses. At the
238 moment only usable, if build with ISAPI_ALLOW_CHUNKING
239 defined. Based on patch by Tim Whittington. (rjung)
240 update IIS: Optionally use raw headers instead of CGI headers. Fixes
241 problem "underscore=dash" problem in header names. At the
242 moment only available, if build with USE_RAW_HEADERS defined.
244 update IIS: Optionally improve IIS 5.1 compatibility. At the moment
245 only available, if build with AUTOMATIC_AUTH_NOTIFICATION
246 defined. Based on patch by Tim Whittington. (rjung)
247 fix IIS: Fix memory corruption due to parallel initialization by
248 multiple threads. (rjung)
249 update Windows: Use non-default socket keepalive interval. (mturk)
250 add IIS: Add environment variables JKISAPI_PATH and JKISAPI_NAME.
252 add Added socket_connect_timeout directive for setting the connect
253 timeout for the socket. This enables to have low connection
254 timeout but higher operational timeouts. (mturk)
255 fix AJP13: [CVE-2008-5519] Always send initial POST packet even if
256 the client disconnected after sending request but before
257 providing POST data. In that case or in case the client broke
258 the connection in a middle of read send an zero size packet
259 informing container about broken client connection. (mturk)
260 add AJP13: Added connection_acquire_timeout directive for setting
261 the absolute timeout the worker will wait for a free endpoint.
263 update Apache: Allow to set path parameter used when doing
264 JkStripSession. (mturk)
265 update Refactor retries implementation and change semantics of
266 retries attributes. (mturk)
267 update Status: Allow showing only a single member for a load
269 update Status: Add display of seconds since last statistics reset and
270 access and transfer rates. (rjung)
271 add AJP13: Add a configurable retry_interval time. (rjung)
272 update Documentation: Enhance description of connection_pool_size.
274 update IIS: Refactor error page generation. (mturk)
275 fix IIS: SERVER_NAME variable can be the same for multiple
276 different server instances if requests are handled according
277 to the ip:port combination. Use INSTANCE_ID variable to which
278 the request belongs instead. (mturk)
279 add Allow forwarding server error pages. This can be done on
280 per-uri basis using new use_server_errors extension. (mturk)
281 add Added session_cookie and session_path for configuring default
282 session identifiers. (mturk)
283 update Use max_packet_size also as TCP send and receive buffer size.
285 update Apache: Do not allow Apache to start in multi-threaded mode if
286 mod_jk was only build for single threaded server (prefork).
288 fix 45812: Add done() service method that causes sending EOS
289 bucket for Apache httpd 2.x. This allows filter chain to work
291 add Added connection_ping_interval, ping_timeout and ping_mode
293 fix Apache: Use correct ld flags provided by apxs when building
294 module. Prevents some crashes on AIX for httpd 1.3 module.
296 fix Documentation: "val" attribute numbering in status worker
297 needs to start with 0 instead of 1. (rjung)
298 update Documentation: Remove JNI parameters from sample configuration
299 in the workers generic howto. (rjung)
300 fix 45026: For Apache httpd 2.x add "Unknown Reason" as the reason
301 phrase, if we get an empty one from the backend. Otherwise
302 httpd 2.x returns status 500. (rjung)
303 fix Build: Fix Cygwin build. (rjung)
304 update Documentation: Add info to docs, that variables sent via
305 JkEnvVar are not listed in request.getAttributeNames().
307 add Add watchdog background thread for Apache 2.x and IIS doing
308 internal maintenance (idle connection checks, backend
309 probing). See JkWatchdogInternal (Apache) and
310 watchdog_interval (IIS). (mturk)
311 update Change log level of some messages from error to info. (mturk)
312 fix Documentation: Fix docs for worker attribute "secret". (rjung)
313 update Detect correct plugin name for various web servers via
314 additional preprocessor defines. (rjung)
315 fix LB: Do not put loadbalancer node in error state if there is
316 opened channel. This fixes the bug when new connection fails
317 due to busyness, causing opened connections fail stickyness.
318 This brings back per-node busy counter and private state array
319 for each request. We can mark the state as error for failover
320 to work while still operating and reporting node as OK if
321 there are opened working connections. (mturk)
322 fix 44738: Fix merging of JkOption ForwardURI* between virtual
323 hosts. Patch contributed by Toshihiro Sasajima. (rjung)
324 add URI Map: Add extension attributes to uri worker map. Allowed
325 are reply_timeout, active/disabled/stopped and fail_on_status.
326 Usage currently only implemented for httpd and IIS.
328 fix URI Map: Make dynamic reloading atomic and free memory not
329 needed any longer. (rjung)
330 add Configure: Don't use post httpd 2.2.0 API functions when
331 building with new --enable-api-compatibility configure switch.
333 fix Apache: JkAutoAlias does not work in combination with
334 JkMountCopy if there are no JkMount in virtual host. (rjung)
335 update LB: Optimize state macros to improve performance. (rjung)
336 add Apache: Allow dynamic setting of reply timeout using the
337 environment variable JK_REPLY_TIMEOUT. (rjung)
338 add Status: Add manageability for ajp parameters of ajp workers
339 and ajp lb members. (rjung)
340 update Status: Change parameter names of update action to make them
341 more easily distinguishable from other parameters. (rjung)
342 add Status: Add ajp worker statistics also for workers, that are
343 not lb members. (rjung)
344 update AJP: Refactor factories, move ajp13/ajp14 common parts into
346 update Status: Only sync shm worker config values of the workers for
347 which we changed values. (rjung)
348 fix Status: Set lb_factor instead of distance. (rjung)
349 update Status: Minor layout changes, use drop down instead of
350 multiple text links. (rjung)
351 update SHM: Use local copies of read mostly attributes of lb sub
352 workers in lb and status worker. (rjung)
353 update Status: Add "dump" action to dump our initial configuration.
355 update Status: Use property table to decide which cmd action uses
356 which output elements. (rjung)
357 update Common: Include original configuration map in worker_env to
358 make it available for workers, e.g. the status worker. (rjung)
359 update LB: Refactor "route" return for httpd note. Don't use a member
360 of the worker_record, because that's not thread safe. (rjung)
361 update Common: Refactor "retries", remove from service and jk_worker,
362 move into ajp worker instead. (rjung)
363 update SHM: Use distinct structs for lb and ajp13 in shm. Improves
364 type safety and saves a few bytes. (rjung)
365 update SHM: Remove unused attributes. (rjung)
366 update SHM: Automatically determine shm size for all web servers.
368 update SHM: Make open/attach logging consistent for all web servers.
370 update Status: Include server local time in output. (rjung)
371 fix 44116: Fix handling of multiple JSESSIONID cookies. (rjung)
372 fix 37850: Use thread safe localtime_r where appropriate. (rjung)
373 fix Use thread safe strtok_r on more platforms, especially AIX.
375 update Status: Improve XSS hardening. (rjung)
376 update 35303: Move initialization of service members with defaults
377 from web server specific code to our generic
378 jk_init_ws_service() function. (rjung)
379 fix 36385: Add missing prepost CPing/CPong directly after connect
380 in case prepost CPing is used, but no connect CPing. (rjung)
381 update 37322: Apache: Enhance robustness of message formating in
382 jk_error_exit(). (rjung)
383 fix 44147: Multiple load balancing workers problem. (rjung)
385 Changes between 1.2.25 and 1.2.26
387 fix 42003: Allocate memory instead using fixed size from the
389 fix 43229: Load balancer does not do fail over after reply
391 fix JKStatus: Repair detailed Apache httpd version display. This
392 was broken for httpd version 2.2.4+. (rjung)
393 update LB/AJP: Refactoring of jk_connect.c, jk_ajp_common.c,
394 jk_lb_worker.c (rjung)
395 fix Configure: Repair broken apxs auto-detection. (rjung)
396 update Configure: Remove trace logging from compiled code via new
397 --disable-trace configure switch. (rjung)
398 update Common: Maintain idle connections in decreasing (LRU) slot
400 update Apache: Create JK_WORKER_ROUTE and JK_REQUEST_DURATION notes
401 for access log even if no JkRequestLogFormat is set. (rjung)
402 update JKStatus: Enhance URI to worker map listing for Apache httpd.
403 We now list maps for all virtual servers and not only the one,
404 in which JKStatus itself was called. (rjung)
405 update JKStatus: Enhance URI to worker map listing. Update stale
406 uriworkermap.properties immediately. (rjung)
407 fix 43873: Fix small memory leak occuring during httpd restart.
409 update Common: Allow '*' for the worker name in exclusion rules
410 (resp. JkUnMount) which will override all workers. (rjung)
411 fix 42038: Correct overlay of mounts and unmounts for IIS. (rjung)
412 fix 43684: Replace JkMountFile by JkMountFileReload in
413 uriworkermap.properties docs. (rjung)
414 update Apache: Add new value "All" for JkMountCopy. (rjung)
415 fix 43516: Memory leak for Apache httpd module of size 8KB for
416 every virtual host without JK directive after each restart.
418 update Apache: Cleanup init and destroy of server configuration.
420 update Apache: Remove global configuration items from per server
421 configuration. (rjung)
422 update Apache: Remove unused attributes secret_key and
423 automount/JkAutoMount. (rjung)
424 update Cleanup of jk_uri_worker_map. (rjung)
425 update Documentation: Small additions to JkShmFile documentation.
426 Contributed by Gerhardus Geldenhuis. (rjung)
427 fix AJP13: Ignore flush packets before we received the response
429 fix Fix crash during startup when using worker configuration
430 inheritance (attribute "reference") and log level debug.
432 fix AJP13: Match header names exactly against pre defined
433 constants. Avoid possible confusion with custom header names
434 using a standard header name as a prefix. (rjung)
435 fix jkstatus: Fix correct parameter validation at
436 JkStatusUpdateTask and JkStatusUpdateLoadbalancerTask ant
437 tasks. Reported by Christian Mittendorf. (pero)
439 Changes between 1.2.24 and 1.2.25
441 update IIS: Fix shm shutdown behaviour. (rjung)
442 update General: fail_on_status used in a load balancer can optionally
443 do fail over without putting the failed worker in error state.
445 update NSAPI: Improve build description for Unix. (rjung)
446 update NSAPI: Add initialization startup message containing JK
448 fix General: Declare static functions as static. (jim)
449 update Documentation: Clarify fail_on_status behaviour. (rjung)
450 fix General: Do fail_on_status before returning the response
452 update NSAPI: Fix shm shutdown behaviour. (rjung)
453 update NSAPI: Set return status even if request ended with an error.
455 update NSAPI: Allow using without shm_file on WIN32 and Netware.
457 fix NSAPI: Fix Crash of nsapi for log level debug and unset
458 refect_unsafe. (rjung)
459 update NSAPI: Improve Solaris and Linux Makefiles for nsapi build.
461 fix Build: Improve pid_t type detection during configure on
463 update Build: Experimental build support for gcc on WIN32 and
465 update Build: Makefile optimizations for Apache httpd 1.3/Netware .
467 fix General: Fix missing flush bug introduced in 1.2.24. (rjung)
469 Changes between 1.2.23 and 1.2.24
471 update Documentation: Improved workers.properties description in the
472 reference guide. (rjung)
473 update Documentation: Add a HowTo about the various timeouts. rjung)
474 update Logging: add milliseconds to the default timestamp format, if
475 we have gettimeofday(). (rjung)
476 update Apache: add milliseconds (%Q) and microseconds (%q) as
477 possible JkLogStampFormat conversion specifiers. This does not
478 use strftime(), but needs gettimeofday(). (rjung)
479 update IIS & Sun: Log service failures also, if return code is
481 fix 42849: Abort startup of Apache httpd 1.3 in case mod_jk
482 initialization failed. We already do the same for Apache httpd
484 fix 42849: Refuse to operate with IIS in case the initialization
485 failed. Instead requesting isapi_redirect.dll 500 will be
486 returned to the user. This is as closest as it can get to
487 Apache Httpd where we refuse to start the server in case of
488 fatal initialization errors. (mturk)
489 fix Load Balancer: Fix a deadlock in lb worker, which was exposed
490 on Solaris for threaded Apache MPMs. (rjung)
491 update Logging: handle LWP IDs as 32 Bit unsigned. Try to make it
492 work, although pthread IDs are opaque. (rjung)
493 update JkStatus: Added manipulation of max_reply_timeouts. (rjung)
494 update LB, Status: Add feature max_reply_timeouts, to make lb
495 tolerant against occasional long running requests. (rjung)
496 update JkStatus: Added OK/IDLE as the successor of N/A. (rjung)
497 update Status worker: Renamed runtime states. All states have a major
498 state (OK or ERR) and a substate. Changed the name N/A to
499 OK/IDLE. Added docs about the meaning of the states to the
500 status worker page in the reference guide. No new states have
501 been added to code. (rjung)
502 update Common: Add recovery options for recovering idempotent http
503 methods HEAD and GET. (rjung)
504 fix Correct documentation for worker attributes retries and
505 recovery_options. (rjung)
506 fix Make writing log lines and line endings more atomic. (rjung)
507 update Common: Refactored and unified jk_map_read_prop* and
508 jk_map_load_prop* for all use cases. (rjung)
509 update Common/Apache/IIS/Netscape: Add an option to check decoded
510 URLs for potentially malicious constructions. (rjung)
511 update IIS: Document auth_complete and uri_select. (rjung)
512 update Apache/IIS/Netscape: Change the default forwarding encoding to
513 the new proxy method. (jfclere, rjung)
514 update Common: Optionally reencode URIs before forwarding to the
515 backend. Based on the URI reencoding done bei httpd mod_proxy.
517 update Common: auto-detect correct print format for pid_t. This fixes
518 at least compiler warnings on Solaris. (rjung)
519 fix 42608: Handle Content-length as unsigned 64Bit to allow for
520 huge up- and downloads. (rjung)
521 update Apache: Add forwarding uri to debug log. (rjung)
522 update Docs: Clarify relation between worker names and jvmRoute for
523 load balancing. (rjung)
524 fix Use initial zero timeout for jk_is_socket_connected. The
525 resulting detection is the same but offers a huge performance
526 increase with mod_jk. In most cases the Operating System does
527 not favor the 1 microsecond timeout, but it rather rounds that
528 up to much higher value (frequency of interrupt timer which on
529 most systems defaults to 100Hz). Patch provided by David
531 update NSAPI: Check correct log file and shm file configuration
532 during startup. (rjung)
533 fix NSAPI: Add support for the general options concerning retries,
534 flushing and connection persistance. (rjung)
535 fix NSAPI: fix crashes due to use of mount attribute in
536 workers.properties. Changed initialization order. (rjung)
537 fix Improved handling of libtool and discrepancies between CC env
538 variable and CC used during apache build by configure script.
540 fix Always build with thread support, unless flag --enable-prefork
541 is set during for configure. (rjung)
542 update Use snprintf/vsnprintf from ap_snprintf.c for platforms other
543 than Windows, which might lack snprintf/vsnprintf
544 implementations when NOT build for Apache httpd 2.x/APR (e.g.
545 Sub Web Server) or without using configure. (fuankg)
546 update Imported ap_snprintf() from Apache 1.3. (fuankg)
547 fix Fix incorrect log object cleanup during statup, leading to
548 crashes at least on iSeries. (rjung)
549 update Add jk_stat() and jk_file_exists() as wrapper functions. i5/OS
550 V5R4 expects filename in ASCII for fopen but requires them in
551 EBCDIC for stat(). (hgomez)
552 update i5/OS (AS/400) V5R4 port where Apache 2.0 modules should now
554 update Docs: Add comments on i5/OS build for V5R4 and previous
557 Changes between 1.2.22 and 1.2.23
559 update [CVE-2007-0450] and [CVE-2007-1860]: Change the default value
560 of JkOptions to ForwardURICompatUnparsed. The old default
561 value was ForwardURICompat. This should make URL
562 interpretation between Apache httpd and Tomcat consistent
563 (prevent double decoding problems). (rjung)
565 Changes between 1.2.21 and 1.2.22
567 fix Refactor line endings logging to make it correct for all
568 platforms and webservers. (mturk)
569 update Added command line windows make files. (mturk)
570 update Allow fail_on_status directive to be multi line. (mturk)
571 fix 42076: Fix name of new option from ForwardCertChain to
572 ForwardSSLCertChain as documented. (rjung)
573 fix Docs: Fix a couple of typos, change format of a few tables,
574 fix links to news pages. (rjung)
575 fix Fix correct URL for TC 6 examples in new IIS
576 rewrite.properties configuration example file. (rjung)
577 fix Add svn properties to several files. (rjung)
578 update Add TC 6 examples to uriworkermap.properties in config
580 update Allow multiple status codes for fail_on_status directive. The
581 status codes can be delimited by space or comma characters.
583 update IIS. Added pcre like regular expressions for url rewrite
585 fix 41922: Apache 1.3. Enable JkEnvVar. (mturk)
586 update Apache. Add --enable-flock configure parameter for explicit
587 compilation of faster flock() system calls for OS supporting
588 those calls. By default the fcntl system call for locking will
589 be used that is a little bit slower but it can work on NFS
590 mounted volumes as well. (mturk)
591 fix 41562: Add Debug logging for read from client in ISAPI
592 Redirector. Contributed by Tim Whittington. (mturk)
593 update Apache. Add ForwardSSLCertChain JkOption. Contributed by
594 Patrik Schnellmann. (mturk)
595 fix IIS. Do not forbid access to web-inf or meta-inf if there is
596 no mapped worker. This allows to have resource with those
597 names that are outside mapped contexts. (mturk)
598 update Apache. Use process id for creating shared memory name and
599 delete shared memory and shared memory lock files on exit.
601 fix IIS. Fix Keep-Alive regression introduced in 1.2.21. (mturk)
602 update Delete unused check for empty init_map during startup. (rjung)
603 fix 41770: Fix startup error if no JkWorkersFile is used. (rjung)
604 update Use JK_TRUE/JK_FALSE instead of OK/!OK as return values in
606 update Minor adjustments to apache startup log messages (when to use
607 STDERR, remove deprecated NOERRNO flag, shm warning and
608 warnings for usage of default files). (rjung)
609 update Replace APR precompiler directive by httpd mpm_query to detect
610 MPM threading. Add a debug log message about auto-detected
612 fix Make MMN check easier to understand and a little more precise
613 (for new ap_get_server_banner()/ap_get_server_description()).
614 We use the new API only for Apache httpd 2.3. This way our
615 binaries are not tightly coupled to a minor 2.0 version, and
616 we don't use ap_get_server_banner() any way. (rjung)
617 fix Use the full description string ap_get_server_description()
618 instead of the truncated info from ap_get_server_banner(),
619 because this info gets used internally (status worker display
620 and ajp14 backend communication) and is not send back to the
622 fix 41757: Document the "--enable-prefork" flag of configure.
624 update Enhance log messages for failures when parsing attribute maps.
626 fix Correct log message during worker initialization, in case
627 remote host could not be resolved. We logged the default host
628 name "localhost" instead of the configured one. (rjung)
629 fix 41770: Fix the second part of the bug: local_worker and
630 local_worker_only is missing from the list of deprecated
631 attributes (and not supported either), so prevents the web
632 server from startup. (rjung)
634 Changes between 1.2.20 and 1.2.21
636 fix [CVE-2007-0774]: A denial of service and critical remote code
637 execution vulnerability. Caused by buffer overflow in
638 map_uri_to_worker() when URL were longer that 4095 bytes.
639 Reported by ZDI (www.zerodayintiative.com). Please note this
640 issue only affected versions 1.2.19 and 1.2.20 of the Apache
641 Tomcat JK Web Server Connector and not previous versions. Tomcat
642 5.5.20 and Tomcat 4.1.34 included a vulnerable version in their
643 source packages. Other versions of Tomcat were not affected.
644 add Check the worker. parameters and don't start if the parameter is
645 not a valid one. (jfclere)
646 add 41439: Allow session IDs to get stripped off URLs of static
647 content in Apache by adding JkStripSession directive
648 (configurable per vhost). (mturk)
649 add Change semantics of empty defaults for JkEnvVar variables. Until
650 1.2.19: not allowed. In 1.2.20: send variables as empty strings,
651 if neither set to non empty in config, nor during runtime.
652 Starting with 1.2.21: If config has no second argument only send
653 variable if set (even when set to empty string) during runtime.
654 Allows good combination with condition attribute in tomcat access
656 fix 41610: Fix incorrect detection of missing Content-Length header
657 leading to duplicate headers. Contributed by Boris Maras. (rjung)
658 fix Better build support for SunONE (Netscape/iPlanet) webservers.
660 add Add warning if duplicate map keys are read and are not allowed,
661 e.g. when parsing uriworkermap.properties. (rjung)
662 fix Don't concat worker names, if uriworkermap.properties has a
663 duplicate pattern, instead overwrite the worker. (rjung)
664 fix Log deprecation message even in duplication case. (rjung)
665 fix uriworkermap.properties: Fix off-by-one problem when deleting URL
666 mapping during reloading of uriworkermap.properties. (rjung)
667 add 41439: Allow session IDs to get stripped off URLs of static
668 content in IIS (configurable). (rjung)
669 add 41333: Refactoring isapi_plugin configuration reading. (rjung)
670 add 41332: Add some more errno logging and unify the format. (rjung)
671 add JkStatus: Improved logging by adding status worker name to
672 messages. Added messages to the recover worker action. (rjung)
673 add JkStatus: Refactoring searching for workers and sub workers.
675 add 41318: Add configuration to make status worker user name checks
676 case insensitive. (rjung)
677 add JkStatus: Add estimated time until next global maintenance to
678 other mime types and adopt jkstatus ant task. (rjung)
679 add JkStatus: Show estimated time until next global maintenance.
680 Change displayed time until next recovery to a min/max pair.
682 add JkStatus: Allow a user of a read/write status worker to switch it
683 to and from read_only mode temporarily. (rjung)
684 fix JkStatus: Do not show read/write commands in a read_only status
686 add JkStatus: Allow lb sub workers in error state to be marked for
687 recovery administratively from the status worker. (rjung)
688 add Load Balancer: Do not try to recover multiple times in parallel.
689 Use additional runtime states "PROBE" and "FORCED". (rjung)
690 fix JkStatus: Improve data synchronization between different
692 fix 41381: Fix segfault in feature fail_on_status (wrong order of log
693 arguments). Patch by Juri Haberland. (rjung)
694 fix Use correct windows line endings for log file on WIN32 platform.
697 Changes between 1.2.19 and 1.2.20
699 add JkStatus Ant Task documentation page. (pero/rjung)
700 add JkStatus Ant Tasks: Add new tasks for update and reset. (pero)
701 update JkStatus Ant Tasks: Update for new xml status format. (pero)
702 update Allow integer and string values when setting
703 enumeration/boolean attributes via status worker update
705 add Docs: New reference guide page for status worker. (rjung)
706 update Docs: Renaming the config dir to reference and using the title
707 Reference Guide in the docs. (rjung)
708 update Added retry_on_status for workers directive. (mturk)
709 update Status Worker: Add directive to make property prefix and
710 good/bad rule configurable. (rjung)
711 update Status Worker: Omit lb members when att=nosw. (rjung)
712 update Status Worker: New command cmd=version for a short version
714 update Status Worker: New output stype mime=prop produces property
716 fix Apache: Fix incorrect handling of JkEnvVar when Vars are set
717 multiple times. (rjung)
718 update Renamed jvm_route to route. Deprecated jvm_route, but still
719 use it as fallback when parsing the worker configuration.
721 update IIS: Make uriworkermap file reload check interval
722 configurable. (mturk)
723 update Apache: Make uriworkermap file reload check interval
724 configurable. (rjung)
725 update Status Worker: Add directives for customizing the XML output
726 (ns, xmlns, doctype). (mturk)
727 add Docs: New page with description of uriworkermap. (rjung)
728 update Docs: Added short description of max_packet_size to worker
730 update Status Worker: All functions accessible also for xml and txt
731 mime types (list, show, update, reset). (rjung)
732 update Status Worker: New global health indicators for load balancers
733 named bad (error, recovering or stopped), degraded (busy or
734 disabled) and good (the rest, active and OK or N/A). (rjung)
735 update Status Worker: New edit page, to change one attribute for all
736 members of a load balancer. (rjung)
737 update Status Worker: Standard logging for status worker. (rjung)
738 update Status Worker: code refactoring. (rjung)
739 update Status Worker: New attribute user (list) denies access, if the
740 request user in the sense of remote_user is not in this list.
741 Empty list = no deny (rjung)
742 update Status Worker: New attribute read_only disables the parts of
743 the status worker, that change states and configurations.
745 fix 36121: Don't change main uri when mod_jk serves included uri.
747 update Apache VHosts: Merge JkOptions +base - -base + +vhost -
749 update Apache Docs: Adding requirements, context information, default
750 values and inheritance rules to the Apache config
751 documentation. (rjung)
752 update Status Worker: Add source type to status worker, remove the
753 redundant "context" column in the map listing (context=uri).
755 update uriworkermap: On reload of the file, all old entries from the
756 previous file version get deleted, before the new ones are
758 fix Keep normal maps and exclusion maps internally separate. Don't
759 treat them as the same when adding a rule. (rjung)
760 update Status Worker: Display mapping rules also for non-lb workers
761 and in global view. (rjung)
762 update Apache VHosts: Use the vhost log files instead of the main
764 update Apache VHosts: Allow individual timestamp formats by
765 refactoring the formatting method. (rjung)
766 update Apache VHosts: Adding all missing config items to the virtual
767 host level. Don't overwrite the settings from the global
768 server, but inherit them in case they are not set in the
769 virtual host. (rjung)
770 update Apache: remove unnecessary function names from log messages.
772 update Apache: add a default log file location and a message, if the
773 default gets used. (rjung)
774 update Apache: add missing JK_IS_DEBUG_LEVEL() (rjung)
775 update Apache VHosts: Allow JkWorkersFile, JKWorkerProperty,
776 JkShmFile and JkShmFileSize only in global virtual server.
778 update Add some more jk_close_socket() and reduce log level for some
779 info messages. (rjung)
780 update Load Balancer: Added the Sessions strategy. Contributed by
781 Takayuki Kaneko. (rjung)
782 update Docs: Minor enhancements and syncing with more recent
784 fix 40997: Separate uri mappings from their '!' counterpart when
785 checking for duplicates in uriworkermap reloading. (rjung)
786 fix 40877: Make sure the shared memory is reset on attach for
787 multiple web server child processes. (mturk)
788 update IIS: Added shm_size property to be able to deal with over 64
789 workers configurations. (mturk)
790 update IIS: Increase default thread count to 250, so its the same as
791 Apache Httpd default configuration. (mturk)
792 fix 40966: Fix socket descriptor checks on windows. (mturk)
793 fix 40965: Initialize missing service parameters. (mturk)
794 fix 40938: Fix releasing of rewrite map. Thanks to Chris Adams for
795 spotting that. (mturk)
796 update Apache: Added +FlushHeader JkOptions. (mturk)
797 update Added explicit flush when AJP body packet size is zero.
799 fix 40856: Fixing case sensitivity bug in URL mapping. (rjung)
800 fix 40793: Documentation: Improvements to Apache HowTo provided by
801 Paul Charles Leddy. (markt)
802 fix 40774: Fixing wrong recursion termination. This one restricted
803 the "reference" feature unintentionally to 20 workers. (rjung)
804 fix 40716: Adding "reference" feature to IIS and Netscape. (rjung)
805 fix Documentation: Corrected SetEnvIf syntax in JK_WORKER_NAME
807 fix Documentation: Added forgotten STATE and ACTIVATION notes for
808 load balancer logging in Apache. (rjung)
809 update Apache: Use instdso.sh instead libtool: libtool does not work
810 on HP-UX for example. (jfclere)
812 Changes between 1.2.18 and 1.2.19
814 update Docs: Add SetHandler and new env var to Apache config docs.
816 update Apache 1.3: Backport "no-jk" feature. (rjung)
817 update Apache: Add an environment variable to make SetHandler
818 "jakarta-servlet" more useful. The variable is JK_WORKER_NAME,
819 but can be changed by the new directive JkWorkerIndicator.
821 fix LB: Don't use single worker shortcut, if the single worker is
822 being diabled. (rjung)
823 fix Status worker: Add short explanation of activation and error
824 states to legend. (rjung)
825 fix Docs: Add meaning of zero timeout values for various timeouts
826 in workers.properties. (rjung)
827 fix LB: Cleanup of Mladens forced recovery. (rjung)
828 fix LB: Do not change lb_value for recovering workers to max, if
829 we are using BUSYNESS method. (rjung)
830 fix Apache: Since 1.2.14 mod_jk failed to detect client abort.
832 fix Docs: Corrected description of JkEnvVar. (rjung)
833 fix Solaris: Detect filio.h in configure to make the new
834 connection detection build on solaris (r432825). (rjung)
835 update Add feature to force the recovery of workers that are member
836 of loadbalancer if all the members are in error state. This
837 fixes the time gap where 503 was returned caused by
838 recovery_timeout although the backend was ready to handle the
840 update Docs: Seperate deprecated directives in their own table.
842 update Docs: Allow "-" and "_" in worker names. (rjung)
843 update Allow multiple lines with attributes "balance_workers" and
845 fix Make jk_is_some_property match more precisely. (rjung)
846 update JkStatus: Make refresh interval changeable. (rjung)
847 fix JkStatus: Adjust display of recover time wrt. global
849 update LB: Resetting worker state from OK to NA, if worker has been
850 idle too long. (rjung)
851 fix Avoid compiler warnings concerning the use of lb_*_type
852 arrays. Use functions instead. (rjung)
853 update Added %R JkRequestLogFormat option for Apache 1 and Apache 2.
855 update Allow changing jvm Route from status manager. (mturk)
856 fix Do not retun 400 if Tomcat fails in the midle of the post
857 request. Return 500 insted. (mturk)
858 update LB: Combine ok/error/recovering/busy runtime states into a
859 single scalar. (rjung)
860 update LB: Combine active/disabled/stopped configuration states into
861 a single scalar. (rjung)
862 update LB: Add several Apache notes to enable standard logging for
863 load balancer results. (rjung)
864 update LB: Reorganisation of the main load balancer service loop.
866 update Implement hierarchical worker configuration via attribute
868 update Log deprecated properties. (rjung)
869 fix IIS: Fix simple_rewrite for the cases where the rewritten url
870 is larger then the original one. (mturk)
871 update New JkOption "DisableReuse" to disable connection persistence.
873 update LB: Move sessionid retrieval out of get_most_suitable_worker
874 into service. (rjung)
875 update Code cleanup for all service methods (use TRACE,
876 JK_LOG_NULL_PARAMS, null pointer checks). (rjung)
877 update JKSTATUS: add refresh link. No refresh for updates. Redirect
878 to list view after update. (rjung)
879 update Add new hook add_log_items into servers. (rjung)
880 update APACHE httpd: Rename apache logging notes. (rjung)
881 update LB: Rename lock and method constants. Add constants for
883 fix Default log level should be INFO and not DEBUG. Default log
884 level should be the same for all server types. (rjung)
885 fix Make rewrite_rule_map and log_level as non mandatory
886 directives for isapi_redirect. (mturk)
887 fix 40107: Rewrite is_socket_connected function. Non blocking
888 socket is not used any more. (mturk)
889 update Allow building with VS2005 without too many warnings. (mturk)
890 fix Decide by MMN, which piped log API we should use. mod_jk
891 1.2.18 broke compilation with Apache 1.3 pre 1.3.28. (rjung)
893 Changes between 1.2.17 and 1.2.18
895 fix Using socklen_t in getsockopt. Also introducing jk_sock_t.
897 update Allow recovery wait time below 60 seconds (new minimum is 1
900 Changes between 1.2.16 and JK 1.2.17
902 fix Fix hanging jk status worker when certain attributes are being
903 updated due to double locking. (rjung)
904 update Allow JkMount to behave like uriworkermap.properties by
905 parsing pipe symbol as two directive marker. (mturk)
907 Changes between 1.2.15 and JK 1.2.16
909 update Added simple rewrite capability for IIS. Although simple it
910 will fulfill most needs. (mturk)
911 update Added RECOVER_ABORT_IF_CLIENTERROR recovery_option that closes
912 the connection if client connection is broken during the
914 update Renamed cache_timeout directive to connection_pool_timeout.
916 update Added connection_pool_minsize directive. (mturk)
917 update Deprecate recycle_timeout directive. (mturk)
918 update Corrected some HTML syntax bugs in output of status worker.
920 update Added the refresh=n parameter to the status worker. It will
921 update the display every n seconds. (rjung)
922 update Balancer: Add attribute distance to balanced workers to
923 express preferences between workers. (rjung)
924 update Balancer: Add attribute jvm_route to balanced workers to be
925 able to use the same target in different balancers. (rjung)
926 update Status: Add lb_mult to status. (rjung)
927 update Balancer: Make different balancing strategies work in a
928 similar way (use lb_value, use decay during global
929 maintenance, use integer factors for weights. (rjung)
930 update Balancer: Improve locking. (rjung)
931 update Balancer: Workers start slower after recovering. (rjung)
932 update Balancer: Make different balancing strategies work in a
933 similar way (use lb_value, use decay during global
934 maintenance, use integer factors lb_mult for weights). (rjung)
935 update Balancer: Move recovery check to global maintenance. (rjung)
936 update Balancer: Add global maintenance method, that is called in
937 only one process. (rjung)
938 update Extend our use of autoconf to find a 32Bit and a 64Bit
939 unsigned type and their printf formats. (rjung)
940 update Logging: piped loggers for JkLogFile and Apache 1.3. (rjung)
941 update Logging: Add PID to log lines for each log level apart from
943 update Logging: flush buffered logs to keep lines in correct order.
944 Output final newline together with log message. (rjung)
945 update Reducing shm size. (rjung)
946 update Only log removing of old worker, when we actually do it.
948 fix 37469: Fix shared memory close for forked childs. The shared
949 memory will be closed by the parent process. (mturk)
950 fix 37332: Fix potential misuse of buffer length with snprintf
952 fix 38859: [CVE-2006-7197] Protect mod_jk against buggy or
953 malicious AJP servers in the backend. Patch provided by
954 Ruediger Pluem. (mturk)
955 fix 38889: Use worker map sorting depending on the path elements,
956 to comply with Servlet spec. Patch provided by Steve Revilak.
958 update 36138: Added Busyness lb method. Patch provided by Chris
960 fix Fix pessimistic locking mode. The patch correctly handles the
961 burst load, by syncing the access to the shared memory data.
963 fix 38806: Reclycle worker even if it is disabled. This fixes
964 hot-standby workers in error state. (mturk)
965 fix 37167: Allow building with BSD-ish like make. (mturk)
966 fix ISAPI plugin (isapi_redirect.dll) did not provide correct
967 request data for IIS to include in the IIS log. (markt)
969 Changes between 1.2.14 and 1.2.15
971 fix Fix AJP13 Cookie2 parsing. Cookie2 was always send as Cookie.
972 Patch provided by Andre Gebers. (mturk)
973 fix 35862: NSAPI plugin attempts to read freed memory and attempts to
974 dereference a null pointer. Patch provided by Brian Kavanagh.
977 Changes between 1.2.13 and 1.2.14
979 fix Fix lb for worker mpm's with cachesize set to lower number then
980 ThreadsPerChild is. If retries is set to value larger then 3
981 sleep for 100 ms on each attempt. This enables to tune the
982 connection cache, and serialize incoming connections instead
983 returning busy if connection count is larger then cachesize.
985 fix 36525: Solaris core dump. (mturk)
986 fix 36102: Worker actions do not persist. (mturk)
987 fix 35864: Status worker doesn't list workers. Patch provided by
988 Martin Goldhahn. (mturk)
989 fix 35809: JkMountCopy don't work for Apache 2.0 Patch provided by
990 Christophe Dubach. (mturk)
991 fix 35298: Multiple JK/ISAPI redirectors on a single IIS site are not
992 supported Patch provided by Tim Whittington. (mturk)
994 Changes between 1.2.12 and 1.2.13
996 fix 34397: Emergency was handled as Error. (jfclere)
997 fix 34474: // in URL were not handled correctly with Apache-1.3.
999 fix Use 64 bits int for transferred/read bytes.
1000 update Added JkOptions +FlushPackets used to optimize memory usage
1001 when sending large data. (mturk)
1002 update Added lock directive for load balancer that allows more
1003 acurate load balancing in case of burst load. (mturk)
1004 update Added worker.maintain directive to allow customizing default
1005 10 second timeout. On busy servers this value needs to be set
1006 on higher value. (mturk)
1007 fix Fix for NetWare compiler to deal with different types between
1008 AP13 and AP2 SDKs. (fuankg)
1009 update Emit much more legible user.dmp crash analysis output for
1011 fix 34558: Fix first failover request. (mturk)
1013 Changes between 1.2.11 and 1.2.12
1015 update Added ForwardLocallAddres JkOptions flag for passing local
1016 instead remote address. Useful for remote addr valve. (mturk)
1017 fix Fix that worker not used, when stopped flag is true. (pero)
1018 update Add loadbalance default worker secret attribute to the
1019 documentation (pero)
1021 Changes between 1.2.10 and 1.2.11
1023 fix Backport SC_M_JK_STORED from JK2 for passing arbitrary methods
1024 instead failing the request. (mturk)
1025 fix Added missing SEARCH and ACL http methods. (mturk)
1026 update Add worker secret attribute to the documentation (pero)
1027 update Add a stopped flag to worker configuration. Set flag True and
1028 complete traffic to worker is stopped. Also update the Ant
1029 JkStatusUpdateTask at Tomcat 5.5.10 release. Only usefull in a
1030 replicated session cluster.(pero)
1031 update Added worker maintain function that will maintain all the
1032 workers instead just the current one. This enables to recycle
1033 the connections on all workers. (mturk)
1034 update Use shutdown when recycling connections instead hard breaking
1036 update Add unique directives checking. The directives if unique are
1037 now overwritten instead concatenated. (mturk)
1038 update Allow multiple worker.list directives. (mturk)
1039 fix 34577: For IIS log original request instead loging the request
1040 for ISAPI extension. (mturk)
1041 fix 34558: Make sure the returned status codes are the same for
1042 ajp and lb workers. (mturk)
1043 fix 34423: Use APR_USE_FLOCK_SERIALIZE for setting log lock on
1044 platforms like FreeBSD. Patch provided by Allan Saddi. (mturk)
1045 fix 33843: Fix obtaining LDFLAGS that were used for building
1046 Apache HTTPD. Patch provided by Beat Kneubuehl. (mturk)
1047 fix 34358: Enable load balancer method configuration. (glenn)
1048 fix 34357: In some situations Apache 2 mod_jk could segfault when
1049 the JkAutoAlias directive is used. (glenn)
1050 update Add --enable-prefork to the documentation (pero)
1052 Changes between 1.2.9 and 1.2.10
1054 update Set default shared memory to 64K instead 1M. (mturk)
1055 fix Do not mark the worker in error state if headers are larger
1056 then AJP13 limit. (mturk)
1057 update On Series you should use the latest PTF for Apache 2.0 (which
1058 is now 2.0.52) and ad minima SI17402/SI17061 or cumulative
1059 including them. (hgomez)
1060 update Change the xml status format to xml attribute syntax (pero)
1061 fix 33248: Fix builds where apxs defines multiple directories for
1062 APR includes. (mturk)
1063 fix 32696: Return 404 instead 403 when WEB-INF is requested to
1064 comply with Servlet spec. (mturk)
1065 update Added ANT task for managing jkstatus. (pero)
1066 update If socket_timeout is set, check if socket is alive before
1067 sending any request to Tomcat. (mturk)
1068 update Added JkMountFile for Apache web servers. This file can
1069 contain uri mappings in the form (/url=worker), and is checked
1070 for updates at regular 60 second interval. (mturk)
1071 update Added status worker for managing worker runtime data using web
1073 update Added load balancer method directive that is used for setting
1074 the algorithm used for balancing workers. Method can be either
1075 Request (default) or Traffic. (mturk)
1076 update Added shared memory to allow dynamic configuration. Shared
1077 memory is needed only for unix platform and web servers having
1078 multiple child processes. For Apache web server two new
1079 directives has been added (JkShmFile and JkShmSize). (mturk)
1080 update Added textupdate mode to status worker to handle remote
1081 updates from ant tasks.(pero)
1082 fix 33562: Fix Reply_timeout when recovery_options is larger than
1083 1. Patch provided by Takashi Satou. (mturk)
1084 fix 33308: Fix segfaults when ForwardDirectories is enabled with
1087 Changes between 1.2.7 and 1.2.8
1089 update Allow anyone to debug and diagnose stack dumps using windbg or
1090 any other debugging tool, and (if they add the .pdb files to
1091 their installation) to make sense of dr watson logs. Patch
1092 provided by William A. Rowe (wrowe)
1093 fix Fix in_addr_t usage by using the real struct ignoring typedef.
1094 Patch provided by William A. Rowe (wrowe)
1095 fix Fix url rewriting by restoring the in place uri from which the
1096 jsessionid was removed. (mturk)
1097 update Make load balancer algorithm thread safe by introducing mutex
1098 to the load balancer worker. (mturk)
1099 fix Fix sending error pages for IIS to client by adding
1100 Content-Type header using correct api function call. (mturk)
1101 fix 32696: Prevent IIS from crushing when web-inf url was
1103 update Use default cachesize for servers that support discovering the
1104 number of threads per child process. (mturk).
1105 fix Fix Apache content-length header parsing using case
1106 insensitive compare. (billbarker)
1107 fix Fix parsing AJP headers using case insensitive compare.
1109 fix Use infinite socket timeout if socket_timeout is set to zero
1110 or less then zero. (mturk)
1111 update Change balanced_workers to balance_workers but keep backward
1112 compatibility preserving the old directive. (mturk).
1113 fix Fix ajp initialization for workers with cache_size set to
1115 update 32317: Making mod_jk replication aware (Clustering Support).
1116 Patch provided by Rainer Jung. (mturk).
1117 fix 31132: Core dump when JkLogFile is missing from conf. (mturk)
1119 Changes between 1.2.6 and 1.2.7
1121 update Added new property named recover_time that can be used to
1122 change the default 60 second recover time. (mturk)
1123 update Added custom retries for worker, so we don't depend on default
1124 setting. If set to a number grater then 3, it will sleep for
1125 100ms on retry greater then 3 and then try again. (mturk)
1126 update Added JkWorkerProperty directive that enables omiting
1127 workers.properties file. For example: JkWorkerProperty
1128 worker.ajp13a.port=8009. (mturk)
1129 fix Check all JSESSIONID cookies for a valid jvmRoute. If you have
1130 multiple Tomcats with overlapping domains, then you can get
1131 multiple cookies without a defined order. This will route
1132 correctly as long as the different domains don't have any
1133 Tomcats in common. (billbarker)
1134 update Added JkUnMount directive for negative mappings that works as
1135 opposite to JkMount directives. It is used for blocking of
1136 particular URL or content type. (mturk)
1137 update Added wildchar match uri mappings. One can now use JkMount to
1138 map /app/*/servlet/* or /app?/*/*.jsp. (mturk)
1139 update Rewrite the logging by adding Trace options. (mturk)
1140 update Added socket_timeout property that sets the timeout for the
1141 socket itself. (mturk)
1142 fix Changed socket_timeout property to recycle_timeout. This
1143 better explains what the directive actually does. (mturk)
1144 fix Changed the load balancer algorithm. The idea behind this new
1145 scheduler is the following: lbfactor is how much we expect
1146 this worker to work, or the worker's work quota. lbstatus is
1147 how urgent this worker has to work to fulfill its quota of
1148 work. We distribute each worker's work quota to the worker,
1149 and then look which of them needs to work most urgently
1150 (biggest lbstatus). This worker is then selected for work, and
1151 its lbstatus reduced by the total work quota we distributed to
1152 all workers. Thus the sum of all lbstatus does not change.(*)
1153 If some workers are disabled, the others will still be
1154 scheduled correctly. (mturk)
1157 JK2 has been put in maintainer mode and no further development will
1158 take place. The reason for shutting down JK2 development was the lack
1159 of developers interest. Other reason was lack of users interest in
1160 adopting JK2, caused by configuration complexity when compared to JK.
1161 ---------------------------------------------------------------------------
1162 Copyright © 1999-2011, Apache Software Foundation