+2008-07-xx - PgBouncer 1.2 - ""
+
+ = Features =
+
+ * Cmdline option (-u) and config param (user=) to support user switching
+ at startup. Also now pgbouncer refuses to run as root. (Jacob Coby)
+ * More descriptive usage text (-h). (Jacob Coby)
+ * New database option: connect_query to allow run a query on new
+ connections before they are taken into use. (Teodor Sigaev)
+ * New config var 'ignore_startup_parameters' to allow and ignore
+ extra paramenters in startup packet. By default only 'database'
+ and 'user' are allowed, all others raise error. This is needed
+ to tolerate overenthusiastic JDBC wanting to unconditionally
+ set 'extra_float_digits=2' in startup packet.
+ * Logging to syslog: new parameters syslog=0/1 and
+ syslog_facility=daemon/user/local0.
+ * Less scary online restart (-R)
+ - Move FD loading before fork, so it logs to console and can be canceled by ^C
+ - Keep SHUTDOWN after fork, so ^C would be safe
+ - A connect() is attempted to unix socket to see if anyone is listening.
+ Now -R can be used even when no previous process was running. If there
+ is previous process, but -R is not used, startup fails.
+ * New console commands:
+ - SHOW TOTALS that shows stats summary (as goes to log) plus mem usage.
+ - SHOW ACTIVE_SOCKETS - like show sockets; but filter only active ones.
+
+ = Less visible features =
+
+ * suspend_timeout - drop stalled conns and long logins. This brings
+ additional safety to reboot.
+ * When remote database throws error on logging in, notify clients.
+ * Removing a database from config and reloading works - all connections
+ are killed and the database is removed.
+ * Fake some parameters on console SHOW/SET commands to be more Postgres-like.
+ That was needed to allow psycopg to connect to console.
+ (client_encoding/default_transaction_isolation/datestyle/timezone)
+ * Make server_lifetime=0 disconnect server connection immidiately
+ after first use. Previously "0" made PgBouncer ignore server age.
+ As this behaviour was undocumented, there should not be any users
+ depending on it.
+ * Internal improvements:
+ - Packet buffers are allocated lazily and reused. This should bring
+ huge decrease in memory usage. This also makes realistic to use
+ big pktbuf with lot of connections.
+ - Lot's of error handling improvements, PgBouncer should now
+ survive OOM situtations gracefully.
+ - Use slab allocator for memory management.
+ - Lots of code cleanups.
+
+ = Fixes =
+
+ * Only single accept() was issued per event loop which could
+ cause connecton backlog when having high amount of connection
+ attempts. Now the listening socket is always drained fully,
+ which should fix this.
+ * Handle EINTR from connect().
+ * Make configure.ac compatible with autoconf 2.59.
+ * Solaris compatibility fixes (Magne Mæhre)
+
+2007-12-10 - PgBouncer 1.1.2 - "The Hammer"
+
+ = Features =
+
+ * Disconnects because of server_lifetime are now separated by
+ (server_lifetime / pool_size) seconds. This avoids pgbouncer
+ causing reconnect floods.
+
+ = Fixes =
+
+ * Online upgrade 1.0 -> 1.1 problems:
+ - 1.0 does not track server parameters, so they stay NULL
+ but 1.1 did not expect it and crashed.
+ - If server params are unknown, but client ones are set,
+ then issue a SET for them, instead complaining.
+ * Remove temp debug statements that were accidentally left
+ in code on INFO level, so they polluted logs.
+ * Unbroke debian/changelog
+
+ = Cleanup =
+
+ * reorder struct SBuf fields to get better alignment for buffer.
+
+2007-10-26 - PgBouncer 1.1.1 - "Breakdancing Bee"
+
+ = Fixes =
+
+ * Server parameter cache could stay uninitialized, which caused
+ unnecessary SET of them. This caused problem on 8.1 which
+ does not allow touching standard_conforming_strings.
+ (Thanks to Dimitri Fontaine for report & testing.)
+
+ * Some doc fixes.
+ * Include doc/fixman.py in .tgz.
+
2007-10-09 - PgBouncer 1.1 - "Mad-Hat Toolbox"
= Features =