EllisLab/CodeIgniter — pull request #981 by narfbg (2012-01-26 14:50:23+00:00)
Title: Improve the PostgreSQL database driver

Changes include:

- Method/property visibility declarations
- Added `_pg_dsn` property to hold a DSN string instead of calling a custom method to create it each time (this should probably be replaced by a global DSN string at some point)
- Replaced `_connect_string()` with a constructor to initiate the DSN
- Replaced use of `pg_exec()` (legacy alias) in favor of `pg_query()`
- Added better `version()` support - we now override the base `version()` method and only call it if `pg_version()` doesn't return a server version value (PostgreSQL < 7.4 doesn't)
- Added `_optimize_table()` support in DB forge
- Speed improvements
- General clean up