## E.258. Release 8.1.1

Release date: 2005-12-12

This release contains a variety of fixes from 8.1.0. For information about new features in the 8.1 major release, see Section E.259.

### E.258.1. Migration to Version 8.1.1

A dump/restore is not required for those running 8.1.X.

### E.258.2. Changes

- Fix incorrect optimizations of outer-join conditions (Tom)

- Fix problems with wrong reported column names in cases involving sub-selects flattened by the optimizer (Tom)

- Fix update failures in scenarios involving CHECK constraints, toasted columns, and indexes (Tom)

- Fix bgwriter problems after recovering from errors (Tom)

  The background writer was found to leak buffer pins after write errors. While not fatal in itself, this might lead to mysterious blockages of later VACUUM commands.

- Prevent failure if client sends Bind protocol message when current transaction is already aborted

- `/contrib/tsearch2` and `/contrib/ltree` fixes (Teodor)

- Fix problems with translated error messages in languages that require word reordering, such as Turkish; also problems with unexpected truncation of output strings and wrong display of the smallest possible bigint value (Andrew, Tom)

  These problems only appeared on platforms that were using our `port/snprintf.c` code, which includes BSD variants if `--enable-nls` was given, and perhaps others. In addition, a different form of the translated-error-message problem could appear on Windows depending on which version of `libintl` was used.

- Re-allow `AM`/`PM`, `HH`, `HH12`, and `D` format specifiers for `to_char(time)` and `to_char(interval)`. (`to_char(interval)` should probably use `HH24`.) (Bruce)

- AIX, HPUX, and MSVC compile fixes (Tom, Hiroshi Saito)

- Optimizer improvements (Tom)

- Retry file reads and writes after Windows NO_SYSTEM_RESOURCES error (Qingqing Zhou)

- Prevent autovacuum from crashing during ANALYZE of expression index (Alvaro)

- Fix problems with ON COMMIT DELETE ROWS temp tables

- Fix problems when a trigger alters the output of a SELECT DISTINCT query

- Add 8.1.0 release note item on how to migrate invalid `UTF-8` byte sequences (Paul Lindner)