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 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281
|
Apache TomcatApache Logo
----------------------------------------------------------------------
The Apache Tomcat Connector
Changelog
Preface
This is the Changelog for Tomcat Connectors. This changelog does not
contain all updates and fixes to the Tomcat connectors (yet). It should
contain fixes made only after November 10th 2004, when the new
documentation project for JK was started.
Changes from the released JK 1.2.18
Native
fix Using socklen_t in getsockopt. Also introducing jk_sock_t.
(mturk)
update Allow recovery wait time below 60 seconds (new minimum is 1
second). (mturk)
Changes from the released JK 1.2.17
Native
fix Fix hanging jk status worker when certain attributes are being
updated due to double locking. (rjung)
update Allow JkMount to behave like uriworkermap.properties by
parsing pipe symbol as two directive marker. (mturk)
Changes from the JK 1.2.16
Native
update Added simple rewrite capability for IIS. Although simple it
will fulfill most needs. (mturk)
update Added RECOVER_ABORT_IF_CLIENTERROR recovery_option that closes
the connection if client connection is broken during the
request. (mturk)
update Renamed cache_timeout directive to connection_pool_timeout.
(mturk)
update Added connection_pool_minsize directive. (mturk)
update Deprecate recycle_timeout directive. (mturk)
update Corrected some HTML syntax bugs in output of status worker.
(rjung)
update Added the refresh=n parameter to the status worker. It will
update the display every n seconds. (rjung)
update Balancer: Add attribute distance to balanced workers to
express preferences between workers. (rjung)
update Balancer: Add attribute jvm_route to balanced workers to be
able to use the same target in different balancers. (rjung)
update Status: Add lb_mult to status. (rjung)
update Balancer: Make different balancing strategies work in a
similar way (use lb_value, use decay during global
maintenance, use integer factors for weights. (rjung)
update Balancer: Improve locking. (rjung)
update Balancer: Workers start slower after recovering. (rjung)
update Balancer: Make different balancing strategies work in a
similar way (use lb_value, use decay during global
maintenance, use integer factors lb_mult for weights). (rjung)
update Balancer: Move recovery check to global maintenance. (rjung)
update Balancer: Add global maintenance method, that is called in
only one process. (rjung)
update Extend our use of autoconf to find a 32Bit and a 64Bit
unsigned type and their printf formats. (rjung)
update Logging: piped loggers for JkLogFile and Apache 1.3. (rjung)
update Logging: Add PID to log lines for each log level apart from
REQUEST. (rjung)
update Logging: flush buffered logs to keep lines in correct order.
Output final newline together with log message. (rjung)
update Reducing shm size. (rjung)
update Only log removing of old worker, when we actually do it.
(rjung)
fix 37469: Fix shared memory close for forked childs. The shared
memory will be closed by the parent process. (mturk)
fix 37332: Fix potential misuse of buffer length with snprintf
functions. (mturk)
fix 38859: Protect mod_jk against buggy or malicious AJP servers
in the backend. Patch provided by Ruediger Pluem. (mturk)
fix 38889: Use worker map sorting depending on the path elements,
to comply with Servlet spec. Patch provided by Steve Revilak.
(mturk)
update 36138: Added Busyness lb method. Patch provided by Chris
Lamprecht. (mturk)
fix Fix pessimistic locking mode. The patch correctly handles the
burst load, by syncing the access to the shared memory data.
(mturk)
fix 38806: Reclycle worker even if it is disabled. This fixes
hot-standby workers in error state. (mturk)
fix 37167: Allow building with BSD-ish like make. (mturk)
fix ISAPI plugin (isapi_redirect.dll) did not provide correct
request data for IIS to include in the IIS log. (markt)
Changes from the released JK 1.2.15
Native
fix Fix AJP13 Cookie2 parsing. Cookie2 was always send as Cookie.
Patch provided by Andre Gebers. (mturk)
fix 35862: NSAPI plugin attempts to read freed memory and attempts to
dereference a null pointer. Patch provided by Brian Kavanagh.
(markt)
Changes from the released JK 1.2.14
Native
fix Fix lb for worker mpm's with cachesize set to lower number then
ThreadsPerChild is. If retries is set to value larger then 3
sleep for 100 ms on each attempt. This enables to tune the
connection cache, and serialize incoming connections instead
returning busy if connection count is larger then cachesize.
(mturk)
fix 36525: Solaris core dump. (mturk)
fix 36102: Worker actions do not persist. (mturk)
fix 35864: Status worker doesn't list workers. Patch provided by
Martin Goldhahn. (mturk)
fix 35809: JkMountCopy don't work for Apache 2.0 Patch provided by
Christophe Dubach. (mturk)
fix 35298: Multiple JK/ISAPI redirectors on a single IIS site are not
supported Patch provided by Tim Whittington. (mturk)
Changes from the released JK 1.2.13
Native
fix 34397: Emergency was handled as Error. (jfclere)
fix 34474: // in URL were not handled correctly with Apache-1.3.
(jfclere)
fix Use 64 bits int for transferred/read bytes.
update Added JkOptions +FlushPackets used to optimize memory usage
when sending large data. (mturk)
update Added lock directive for load balancer that allows more
acurate load balancing in case of burst load. (mturk)
update Added worker.maintain directive to allow customizing default
10 second timeout. On busy servers this value needs to be set
on higher value. (mturk)
fix Fix for NetWare compiler to deal with different types between
AP13 and AP2 SDKs. (fuankg)
update Emit much more legible user.dmp crash analysis output for
WIN32. (wrowe)
fix 34558: Fix first failover request. (mturk)
Changes from the released JK 1.2.12
Native
update Added ForwardLocallAddres JkOptions flag for passing local
instead remote address. Useful for remote addr valve. (mturk)
fix Fix that worker not used, when stopped flag is true. (pero)
update Add loadbalance default worker secret attribute to the
documentation (pero)
Changes from the released JK 1.2.11
Native
fix Backport SC_M_JK_STORED from JK2 for passing arbitrary methods
instead failing the request. (mturk)
fix Added missing SEARCH and ACL http methods. (mturk)
update Add worker secret attribute to the documentation (pero)
update Add a stopped flag to worker configuration. Set flag True and
complete traffic to worker is stopped. Also update the Ant
JkStatusUpdateTask at Tomcat 5.5.10 release. Only usefull in a
replicated session cluster.(pero)
update Added worker maintain function that will maintain all the
workers instead just the current one. This enables to recycle
the connections on all workers. (mturk)
update Use shutdown when recycling connections instead hard breaking
the socket. (mturk)
update Add unique directives checking. The directives if unique are
now overwritten instead concatenated. (mturk)
update Allow multiple worker.list directives. (mturk)
fix 34577: For IIS log original request instead loging the request
for ISAPI extension. (mturk)
fix 34558: Make sure the returned status codes are the same for
ajp and lb workers. (mturk)
fix 34423: Use APR_USE_FLOCK_SERIALIZE for setting log lock on
platforms like FreeBSD. Patch provided by Allan Saddi. (mturk)
fix 33843: Fix obtaining LDFLAGS that were used for building
Apache HTTPD. Patch provided by Beat Kneubuehl. (mturk)
fix 34358: Enable load balancer method configuration. (glenn)
fix 34357: In some situations Apache 2 mod_jk could segfault when
the JkAutoAlias directive is used. (glenn)
update Add --enable-prefork to the documentation (pero)
Changes from the released JK 1.2.10
Native
update Set default shared memory to 64K instead 1M. (mturk)
fix Do not mark the worker in error state if headers are larger
then AJP13 limit. (mturk)
update On Series you should use the latest PTF for Apache 2.0 (which
is now 2.0.52) and ad minima SI17402/SI17061 or cumulative
including them. (hgomez)
update Change the xml status format to xml attribute syntax (pero)
fix 33248: Fix builds where apxs defines multiple directories for
APR includes. (mturk)
fix 32696: Return 404 instead 403 when WEB-INF is requested to
comply with Servlet spec. (mturk)
update Added ANT task for managing jkstatus. (pero)
update If socket_timeout is set, check if socket is alive before
sending any request to Tomcat. (mturk)
update Added JkMountFile for Apache web servers. This file can
contain uri mappings in the form (/url=worker), and is checked
for updates at regular 60 second interval. (mturk)
update Added status worker for managing worker runtime data using web
page. (mturk)
update Added load balancer method directive that is used for setting
the algorithm used for balancing workers. Method can be either
Request (default) or Traffic. (mturk)
update Added shared memory to allow dynamic configuration. Shared
memory is needed only for unix platform and web servers having
multiple child processes. For Apache web server two new
directives has been added (JkShmFile and JkShmSize). (mturk)
update Added textupdate mode to status worker to handle remote
updates from ant tasks.(pero)
fix 33562: Fix Reply_timeout when recovery_options is larger than
1. Patch provided by Takashi Satou. (mturk)
fix 33308: Fix segfaults when ForwardDirectories is enabled with
Apache 1.3
Changes from the released JK 1.2.8
Native
update Allow anyone to debug and diagnose stack dumps using windbg or
any other debugging tool, and (if they add the .pdb files to
their installation) to make sense of dr watson logs. Patch
provided by William A. Rowe (wrowe)
fix Fix in_addr_t usage by using the real struct ignoring typedef.
Patch provided by William A. Rowe (wrowe)
fix Fix url rewriting by restoring the in place uri from which the
jsessionid was removed. (mturk)
update Make load balancer algorithm thread safe by introducing mutex
to the load balancer worker. (mturk)
fix Fix sending error pages for IIS to client by adding
Content-Type header using correct api function call. (mturk)
fix 32696: Prevent IIS from crushing when web-inf url was
requested. (mturk)
update Use default cachesize for servers that support discovering the
number of threads per child process. (mturk).
fix Fix Apache content-length header parsing using case
insensitive compare. (billbarker)
fix Fix parsing AJP headers using case insensitive compare.
(mturk)
fix Use infinite socket timeout if socket_timeout is set to zero
or less then zero. (mturk)
update Change balanced_workers to balance_workers but keep backward
compatibility preserving the old directive. (mturk).
fix Fix ajp initialization for workers with cache_size set to
zero. (mturk)
update 32317: Making mod_jk replication aware (Clustering Support).
Patch provided by Rainer Jung. (mturk).
fix 31132: Core dump when JkLogFile is missing from conf. (mturk)
Changes from the released JK 1.2.6
Native
update Added new property named recover_time that can be used to
change the default 60 second recover time. (mturk)
update Added custom retries for worker, so we don't depend on default
setting. If set to a number grater then 3, it will sleep for
100ms on retry greater then 3 and then try again. (mturk)
update Added JkWorkerProperty directive that enables omiting
workers.properties file. For example: JkWorkerProperty
worker.ajp13a.port=8009. (mturk)
fix Check all JSESSIONID cookies for a valid jvmRoute. If you have
multiple Tomcats with overlapping domains, then you can get
multiple cookies without a defined order. This will route
correctly as long as the different domains don't have any
Tomcats in common. (billbarker)
update Added JkUnMount directive for negative mappings that works as
opposite to JkMount directives. It is used for blocking of
particular URL or content type. (mturk)
update Added wildchar match uri mappings. One can now use JkMount to
map /app/*/servlet/* or /app?/*/*.jsp. (mturk)
update Rewrite the logging by adding Trace options. (mturk)
update Added socket_timeout property that sets the timeout for the
socket itself. (mturk)
fix Changed socket_timeout property to recycle_timeout. This
better explains what the directive actually does. (mturk)
fix Changed the load balancer algorithm. The idea behind this new
scheduler is the following: lbfactor is how much we expect
this worker to work, or the worker's work quota. lbstatus is
how urgent this worker has to work to fulfill its quota of
work. We distribute each worker's work quota to the worker,
and then look which of them needs to work most urgently
(biggest lbstatus). This worker is then selected for work, and
its lbstatus reduced by the total work quota we distributed to
all workers. Thus the sum of all lbstatus does not change.(*)
If some workers are disabled, the others will still be
scheduled correctly. (mturk)
JK 2
JK2 has been put in maintainer mode and no further development will
take place. The reason for shutting down JK2 development was the lack
of developers interest. Other reason was lack of users interest in
adopting JK2, caused by configuration complexity when compared to JK.
----------------------------------------------------------------------
Copyright (c) 1999-2005, Apache Software Foundation
|