X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;ds=inline;f=doc%2Fref-connect.xml;h=1e299b949321ef412353e93ab91ed540090218c7;hb=fd9939b70a3471dc26dff486d76dab5d2420fdaf;hp=56dd15a2392c1e925500ba66a758870eb5483fd0;hpb=c41d81c0d1233372012a1de93fcdfd6b2a6e5618;p=clsql.git
diff --git a/doc/ref-connect.xml b/doc/ref-connect.xml
index 56dd15a..1e299b9 100644
--- a/doc/ref-connect.xml
+++ b/doc/ref-connect.xml
@@ -125,6 +125,61 @@
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. NIL for
+ no limit. 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
+
+
+
+
+
+
@@ -379,8 +434,14 @@
connection-spec
- A vendor specific connection specification supplied
- as a list or as a string.
+ A SQL backend specific connection specification
+ supplied as a list or as a string.
+ For the MySQL backend, this list includes an
+ optional associative list of connection options. The
+ options list is parsed and supplied to the MySQL API
+ using mysql_options in between the
+ calls to mysql_init
+ and mysql_real_connect.
@@ -544,8 +605,16 @@
Affected by
- *default-database-type*
- *connect-if-exists*
+
+
+ *default-database-type*
+
+
+
+
+ *connect-if-exists*
+
+
@@ -1066,24 +1135,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*
+
+
@@ -1120,7 +1211,7 @@
Syntax
- disconnect-pooled => t
+ disconnect-pooled &optional clear => tDescription
@@ -1129,6 +1220,8 @@
linkend="connect">connect with
:pool &t;.
+ If optional argument clear is non-&nil;
+ then the connection-pool objects are also removed.Examples
@@ -1139,8 +1232,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
@@ -1825,7 +1920,7 @@ error: 'Access denied for user: 'root@localhost' (Using password: YES)'
=>
Error: While trying to access database localhost/test2/root
using database-type POSTGRESQL:
- Error database-destory failed: dropdb: database removal failed: ERROR: database "test2" does not exist
+ Error database-destroy failed: dropdb: database removal failed: ERROR: database "test2" does not exist
has occurred.
[condition type: CLSQL-ACCESS-ERROR]