From 58d42cc927d9166e29dea4a02378fffc910f3f23 Mon Sep 17 00:00:00 2001 From: Nathan Bird Date: Wed, 3 Mar 2010 12:26:05 -0500 Subject: [PATCH] Adding new doc section on db-pool-max-free-connections, improving other doc pages on connecting and disconnecting. --- doc/ref-connect.xml | 122 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 105 insertions(+), 17 deletions(-) diff --git a/doc/ref-connect.xml b/doc/ref-connect.xml index a30aaf1..c3879b2 100644 --- a/doc/ref-connect.xml +++ b/doc/ref-connect.xml @@ -125,6 +125,60 @@ None. + + + *DB-POOL-MAX-FREE-CONNECTIONS* + + + *DB-POOL-MAX-FREE-CONNECTIONS* + How many free connections should the connection pool try to keep. + Parameter + + + Value Type + Integer + + + Initial Value + 4 + + + Description + Threshold of free-connections in the pool before we disconnect a + database rather than returning it to the pool. This is really a heuristic +that should, on avg keep the free connections about this size. + + This is not a hard limit, the number of connections in + the pool may exceed this value. + + + + Examples + + (setf clsql-sys:*db-pool-max-free-connections* 2) + + + + Affected By + None + + + See Also + + + connect + disconnect + + + + + Notes + + + + + + @@ -550,8 +604,16 @@ Affected by - *default-database-type* - *connect-if-exists* + + + *default-database-type* + + + + + *connect-if-exists* + + @@ -1072,24 +1134,46 @@ Side Effects - The database connection is closed, and the database - object is removed from the list of connected databases as - returned by connected-databases. - The state of the database object is changed to - closed. + The database object is removed from the list of connected databases as + returned by connected-databases. If the database object passed is the same under - eq as the value of - *default-database*, then - *default-database* is set to the first - remaining database from - connected-databases or to &nil; if no - further active database exists. + eq as the value of + *default-database*, then + *default-database* is set to the first + remaining database from + connected-databases or to &nil; if no + further active database exists. + + Non-pooled + The database connection is closed and the state of the + database object is changed to closed. + + + Pooled + Unless there are already + *db-pool-max-free-connections* + free connections in the pool it is returned to the + pool, with the backend having an opportunity to run + generic cleanup on the connection first. If the max free + connections has already been reached then it is + disconnected as if it were not in the pool. + + Affected by - *default-database* + + + *default-database* + + + + + *db-pool-max-free-connections* + + @@ -1126,7 +1210,7 @@ Syntax - disconnect-pooled => t + disconnect-pooled &optional clear => t Description @@ -1135,6 +1219,8 @@ linkend="connect">connect with :pool &t;. + If optional argument clear is non-&nil; + then the connection-pool objects are also removed. Examples @@ -1145,8 +1231,10 @@ Side Effects - Database connections will be closed and entries in the pool are removed. - + Database connections will be closed and *all* entries in + the pool are removed. This is done with great prejudice and no + thought to thread safety or whether that connection is + currently in use. Affected by -- 2.34.1