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 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Language" content="en-gb">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="Expires" content="-1">
<meta http-equiv="Pragma" content="no-cache">
<title>Proxool 0.9.0RC3</title>
<link href="proxool.css" type="text/css" rel="stylesheet">
</head>
<body>
<div style="max-width: 1200px;">
<table border="0" style="min-height: 100%;" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td valign="bottom" width="150">
</td>
<td colspan="2" height="50">
<div class="bannerFinal">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td height="50">
<span class="titleCaption" style="font-size: 110%; padding: 4px;">
Properties
</span>
</td>
<td valign="middle" height="50">
<div>
<div style="float: right; margin-right: 8px;">
<img src="images/dots.gif" width="80" height="20" border="0" alt="...">
<a href="http://sourceforge.net/projects/proxool"><img src="images/sflogo.png" width="88" height="31" border="0" alt="SourceForge.net Logo"></a>
</div>
</div>
</td>
</tr>
</table>
</div>
<td width="10"> </td>
</tr>
<tr>
<td valign="top" width="150">
<br/>
<br/>
<table
cellpadding="0"
cellspacing="0"
border="0"
width="100%"
>
<tbody>
<tr>
<td valign="top">
<div class="menuBox" >
<div class="menu-inactive"><a class="menu-inactive" href="index.html">Home</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="news.html">News</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="faq.html">FAQ</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="tips.html">Tips</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="changelog.html">Changes</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="future.html">The Future</a></div>
<div class="menu-active"><a class="menu-active" href="user.html">User Guide</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="dev.html">Developer Guide</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="licence.html">Licence</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="credits.html">Credits</a></div>
<div class="menu-separater">User Guide:</div>
<div style="margin-left: 8px">
<div class="menu-inactive"><a class="menu-inactive" href="user.html">Introduction</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="quickStart.html">Quick start</a></div>
<div class="menu-active"><a class="menu-active" href="properties.html">Properties</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="configure.html">Configuration</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="logging.html">Logging</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="admin.html">Admin</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="adminServlet.html">AdminServlet</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="listen.html">Events</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="servlets.html">Servlets</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="api/index.html">Simple API</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="howitworks.html">How it works</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="datasource.html">DataSource</a></div>
<div class="menu-inactive"><a class="menu-inactive" href="injectableInterfaces.html">Injectable Interfaces</a></div>
</div>
</div>
</td>
<td> </td>
</tr>
<tr>
<td>
<table cellpadding="0" cellspacing="0" border="0" summary="">
<tbody>
<tr><td>
<div class="rightItem">
<div class="rightItemHeader">Version 0.9.0RC3</div>
<div class="rightItemContent">
The latest version of this documentation and software is available on our web site:
<br/><a href="http://proxool.sf.net">proxool.sf.net</a>
</div>
</div>
<div class="rightItem">
<div class="rightItemHeader">Donations</div>
<div class="rightItemContent">
You can donate to Proxool in the usual way:
<br/><a href="http://sourceforge.net/project/project_donations.php?group_id=53958">sourceforge.net</a>
</div>
</div>
</td></tr>
<tr>
<td>
<div class="footer">
last updated: 10-Jan-2007
</div>
</td>
</tr>
</tbody>
</table>
</td>
<td> </td>
</tr>
</tbody>
</table>
</td>
<td valign="top" colspan="2">
<table cellpadding="0" cellspacing="0" border="0" width="100%" summary="">
<tbody>
<tr>
<td class="contents" valign="top">
<p>This is the full list of all the properties:</p>
<a name="fatal-sql-exception"></a>
<div class="property">
<b>fatal-sql-exception</b>:
<blockquote>
A comma separated list of message fragments. When an SQLException occurs
its message is compared to each of these fragments. If it contains any
of them (case sensitive) then it is detected as a Fatal SQL Exception.
This causes that connection to be discarded. Regardless of what happens,
the exception is thrown again so that the user knows what has happened.
You can optionally configure a different exception to be thrown (see
<a href="">fatal-sql-exception-wrapper-class</a> property)
<FONT COLOR="#800080">Default is null.</FONT></blockquote>
</div>
<a name="fatal-sql-exception-wrapper-class"></a>
<div class="property">
<b>fatal-sql-exception-wrapper-class</b>:
<blockquote>
If you have configured <a href="#fatal-sql-exception">fatal-sql-exception</a> then the
default behaviour is to discard the exception that causes the fatal
SQLException and then just throw the original exception to the user.
Using this property you can wrap the SQLException up inside another
exception. This exception can be anything you want as long as it either
extends SQLException or RuntimeException. Proxool provides two classes
which you can use if you don't want to build your own:
<a href="api/org/logicalcobwebs/proxool/FatalSQLException.html">FatalSQLException</a>
and <a href="api/org/logicalcobwebs/proxool/FatalRuntimeException.html">FatalRuntimeException</a>.
To make use of those you should set this property to either
'org.logicalcobwebs.proxool.FatalSQLException' or 'org.logicalcobwebs.proxool.FatalRuntimeException'
as appropriate.
<FONT COLOR="#800080">Default is null (fatal SQLExceptions are not wrapped).</FONT>
<FONT COLOR="#800080">Default is null.</FONT></blockquote>
</div>
<a name="house-keeping-sleep-time"></a>
<div class="property">
<b>house-keeping-sleep-time</b>:
<blockquote>How long the house keeping thread sleeps for (milliseconds). The house keeper is responsible
for checking the state of all the connections and tests whether any need to be destroyed or created.
<FONT COLOR="#800080">Default is 30 seconds.</FONT></blockquote>
</div>
<a name="house-keeping-test-sql"></a>
<div class="property">
<b>house-keeping-test-sql</b>:
<blockquote>If the house keeping thread finds and idle connections it will
test them with this SQL statement. It should be <i>very</i> quick to
execute. Something like checking the current date or something.
If not defined then this test is omitted.</blockquote>
</div>
<a name="injectable-connection-interface"></a>
<div class="property">
<b>injectable-connection-interface</b>:
<blockquote>Allows Proxool to implement methods defined in the delegate Connection object.
See <a href="injectableInterfaces.html">Injectable Interfaces</a>.</blockquote>
</div>
<a name="injectable-statement-interface"></a>
<div class="property">
<b>injectable-statement-interface</b>:
<blockquote>Allows Proxool to implement methods defined in the delegate Statement object.
See <a href="injectableInterfaces.html">Injectable Interfaces</a>.</blockquote>
</div>
<a name="injectable-prepared-statement-interface"></a>
<div class="property">
<b>injectable-prepared-statement-interface</b>:
<blockquote>Allows Proxool to implement methods defined in the delegate PreparedStatement object.
See <a href="injectableInterfaces.html">Injectable Interfaces</a>.</blockquote>
</div>
<a name="injectable-callable-statement-interface"></a>
<div class="property">
<b>injectable-callable-statement-interface</b>:
<blockquote>Allows Proxool to implement methods defined in the delegate CallableStatement object.
See <a href="injectableInterfaces.html">Injectable Interfaces</a>.</blockquote>
</div>
<a name="jmx"></a>
<div class="property">
<b>jmx</b>:
<blockquote>
If true the pool will be registered as an MBean to a JMX server with the following
object name: "Proxool:type=Pool, name=<alias>".
<FONT COLOR="#800080">Default is false.</FONT></blockquote>
</div>
<a name="jmx-agent-id"></a>
<div class="property">
<b>jmx-agent-id</b>:
<blockquote>
A comma separated list of JMX agent ids (as used by MBeanServerFactory.findMBeanServer(String agentId) ) to register
the pool to. This property is only used if the "jmx" property is set to "true". All registered JMX servers will be
used if this property is not set.</blockquote>
</div>
<a name="jndi-name"></a>
<div class="property">
<b>jndi-name</b>:
<blockquote>
See <a href="datasource.html">DataSource</a>.</blockquote>
</div>
<a name="maximum-active-time"></a>
<div class="property">
<b>maximum-active-time</b>:
<blockquote>If the housekeeper comes across a thread that has been active
for longer than this then it will kill it. So make sure you set
this to a number bigger than your slowest expected response!
<FONT COLOR="#800080">Default is 5 minutes.</FONT></blockquote>
</div>
<a name="maximum-connection-count"></a>
<div class="property">
<b>maximum-connection-count</b>:
<blockquote>The maximum number of connections to the database. <FONT COLOR="#800080">Default
is 15.</FONT></blockquote>
</div>
<a name="maximum-connection-lifetime"></a>
<div class="property">
<b>maximum-connection-lifetime</b>:
<blockquote>The maximum amount of time that a connection exists for before
it is killed (milliseconds). <FONT COLOR="#800080">Default is 4
hours.</FONT></blockquote>
</div>
<a name="maximum-new-connections"></a>
<div class="property">
<b><strike>maximum-new-connections</strike></b>:
<blockquote>Deprecated. Use <a href="#simultaneous-build-throttle">simultaneous-build-throttle</a> instead.</blockquote>
</div>
<a name="minimum-connection-count"></a>
<div class="property">
<b>minimum-connection-count</b>:
<blockquote>The minimum number of connections we will keep open,
regardless of whether anyone needs them or not. <FONT COLOR="#800080">Default
is 5.</FONT></blockquote>
</div>
<a name="overload-without-refusal-lifetime"></a>
<div class="property">
<b>overload-without-refusal-lifetime</b>:
<blockquote>This helps us determine the pool status. If we have refused a
connection within this threshold (milliseconds) then we are
overloaded. <FONT COLOR="#800080">Default is 60 seconds.</FONT></blockquote>
</div>
<a name="prototype-count"></a>
<div class="property">
<b>prototype-count</b>:
<blockquote>If there are fewer than this number of connections available
then we will build some more (assuming the
maximum-connection-count is not exceeded). For example. Of we
have 3 active connections and 2 available, but our
prototype-count is 4 then it will attempt to build another 2.
<i>This differs from minimum-connection-count because it takes into account
the number of active connections. minimum-connection-count is absolute and
doesn't care how many are in use. prototype-count is the number of spare
connections it strives to keep over and above the ones that are currently active.</i>
<FONT COLOR="#800080">Default is 0.</FONT></blockquote>
</div>
<a name="recently-started-threshold"></a>
<div class="property">
<b>recently-started-threshold</b>:
<blockquote>This helps us determine whether the pool status is up, down
or overloaded. As long as at
least one connection was started within this threshold
(milliseconds) or there are some spare connections available then
we assume the pool is up. <FONT COLOR="#800080">Default is 60
seconds.</FONT></blockquote>
</div>
<a name="simultaneous-build-throttle"></a>
<div class="property">
<b>simultaneous-build-throttle</b>:
<blockquote>This is the maximum number of connections we can be building
at any one time. That is, the number of new connections that have
been requested but aren't yet available for use. Because connections can be
built using more than one thread (for instance, when they are built on demand)
and it takes a finite time between deciding to build the connection and it becoming
available we need some way of ensuring that a lot of threads don't all decide to build
a connection at once. (We could solve this in a smarter way - and indeed we will one day)
<FONT COLOR="#800080">Default is 10.</FONT></blockquote>
</div>
<a name="statistics"></a>
<div class="property">
<b>statistics</b>:
<blockquote>The sample length when taking statistical information, comma-delimited.
For example: '10s,15m' would mean take samples every 10 seconds and
every 15 minutes. Valid units are s(econds), m(inutes), h(ours) and d(ays).
<FONT COLOR="#800080">Default is null (no statistics).</FONT></blockquote>
</div>
<a name="statistics-log-level"></a>
<div class="property">
<b>statistics-log-level</b>:
<blockquote>Whether statistics are logged as they are produced. Range: DEBUG, INFO,
WARN, ERROR, FATAL. Not to be confused with the level used with the general log.
You have to <a href="logging.html">configure</a> that separately.
<FONT COLOR="#800080">Default is null (no logging).</FONT></blockquote>
</div>
<a name="test-before-use"></a>
<div class="property">
<b>test-before-use</b>:
<blockquote>
If you set this to true then each connection is tested (with whatever is
defined in house-keeping-test-sql) before being served. If a connection
fails then it is discarded and another one is picked. If all connections
fail a new one is built. If that one fails then you get an SQLException
saying so.
</blockquote>
</div>
<a name="test-after-use"></a>
<div class="property">
<b>test-after-use</b>:
<blockquote>
If you set this to true then each connection is tested (with whatever is
defined in house-keeping-test-sql) after it is closed (that is, returned
to the connection pool). If a connection fails then it is discarded.
</blockquote>
</div>
<a name="trace"></a>
<div class="property">
<b>trace</b>:
<blockquote>If true then each SQL call gets logged (DEBUG level) along with the execution
time. You can also get this information by registering a ConnectionListener (see ProxoolFacade).
<FONT COLOR="#800080">Default is false.</FONT></blockquote>
</div>
<a name="verbose"></a>
<div class="property">
<b>verbose</b>:
<blockquote>Either false (quiet) or true (loud). <FONT COLOR="#800080">Default is
false.</FONT></blockquote>
</div>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
<head>
<meta http-equiv="Expires" content="-1">
<meta http-equiv="Pragma" content="no-cache">
</head>
</html>
|