Обсуждение: == PostgreSQL Weekly News - April 08 2007 ==

Поиск
Список
Период
Сортировка

== PostgreSQL Weekly News - April 08 2007 ==

От
David Fetter
Дата:
== PostgreSQL Weekly News - April 08 2007 ==

Now that feature freeze has frozen, new revisions are getting
discussed in a lively fashion.

Kudos to Tom Dunstan for the new enum types.

== PostgreSQL Product News ==

Another PostgreSQL Diff Tool 1.0.0_beta20 released.
http://pgfoundry.org/projects/apgdiff/

GNUmed 0.2.5 released
http://wiki.gnumed.de

LedgerSMB 1.2.0 released.
http://www.ledgersmb.org/

pgAdmin packages for Solaris available
http://www.pgadmin.org/download/solaris.php

== PostgreSQL Local ==

Get on the Road to PgDay!
http://www.pgday.it/en/node/95

Registration is open for PGCon 2007
http://www.pgcon.org/2007/registration.php

== PostgreSQL in the News ==

Josh Berkus, David Fetter, Euler Taveira de Oliveira, Fernando Ike de
Olivera, and Fabio Telles will be speaking at FISL 8.0 in Porto
Alegre, RS, Brazil April 12-14

Planet PostgreSQL: http://www.planetpostgresql.org/

General Bits, Archives and occasional new articles:
http://www.varlena.com/GeneralBits/

PostgreSQL Weekly News is brought to you this week by David Fetter

To get your submission into the upcoming issue, make sure it arrives
at david@fetter.org or in German at pwn@pgug.de by Sunday at 3:00pm
Pacific Time.

== Applied Patches ==

Neil Conway committed:

- Fix a few typos in the docs.

Tatsuo Ishii committed:

- Add -F option to set fillfactor for tellers, accounts and branches.
  Patch contributed by Pavan Deolasee. Along with Japanese doc
  modification by Tatsuo Ishii.

- Greg Smith's patch which adds an -l option to add timestamp to
  pgbench.  Japanese doc updates by Tasuo Ishii.

- ITAGAKI Takahiro's patch which enhances pgbench in various ways.

Andrew Dunstan committed:

- In pgsql/src/tools/msvc/vcregress.bat, only run contrib check if
  there is a Makefile.

- In pgsql/src/tools/msvc/vcregress.bat, improve test headings.

- In pgsql/src/tools/msvc/Install.pm, don't install files for xml2
  when building without libxml.

- Check length of enum literals on definition and input to make sure
  they will fit in a name field and not cause syscache errors.

Bruce Momjian committed:

- Mark TODO as done: "-Make CLUSTER preserve recently-dead tuples per
  MVCC requirements."

- Mark TODO as done: "Add more logical syntax CLUSTER table USING
  index"

- Holger Schurig's patch to add support for the "CLUSTER table USING
  index" syntax, which is more logical than the legacy version.

- Greg Smith's patch which adds the usage count statistics to the
  information available in contrib/pgbuffercache.

- Slight wording improvement in REVOKE documentation.

- Remove example of SQL-standard syntax for GRANT/REVOKE --- was
  causing confusion.

- Mark Fuhr's doc patch correcting the spelling of, "symmetric."
  Backpatched to 8.2.
- Mark TODO as done: "Allow use of indexes to search for NULLs."

- Mark TODO as done: "Support a smaller header for short
  variable-length fields."
- Fix some now-obsolete comments about the space used by various data
  types.

- Update XML error message text for missing libxml; update regression
  output to match.

- Add URL for TODO: "Reduce WAL traffic so only modified values are
  written rather than entire rows."

- Improve documentation/warning when --with-libxml is not used in the
  installation.

- Re-add FAQ item 3.7 lost in previous commit.

- Marko Kreen's patch which removes last remaining casts inside struct
  definitions for PL/PythonU.  Such usage is bad practice, as it hides
  problems from compiler.  The cast is popular practice in some
  circles to define functions as foo(MyObj *) instead of foo(PyObject
  *) thus avoiding a local variable inside functions and make direct
  calling easier.  As PL/PythonU does not use this style, the casts
  were unnecessary from the start.

- Gregory Stark's patch which documents how to identify an invalid
  index after a failed CREATE INDEX CONCURRENTLY.

- Mark TODO as done: "Allow PL/PythonU to return boolean rather than
  1/0.

- Marko Kreen's patch to allow PL/pythonU >= version 2.3 to return
  boolean, rather than 1/0.

- Marko Kreen's patch to allow PL/PythonU to compile on Python 2.5.
  Change needed because of API changes in Python.

- In pgsql/src/port/thread.c, update comment for new thread_test
  location.

- Update TODO: "Add idle_in_transaction_timeout GUC so locks are not
  held for long periods of time."

- Add to TODO: "Allow all data types to cast to and from TEXT."

- Add to TODO: "Add idle_timeout GUC so locks are not held for log
  periods of time."

- Add URL for TODO: "Allow UPDATE tab SET ROW (col, ...) = (SELECT...)."

- Add URL for TODO: "Allow commenting of variables in postgresql.conf
  to restore them to defaults."

- Add URL for TODO: "Allow a warm standby system to also allow
  read-only."

- Add URL for TODO: "Improve speed with indexes"

- Add to TODO: "Have timestamp subtraction not call justify_hours()?"

- Add to TODO: "Allow NOTIFY/LISTEN/UNLISTEN to only take relation
  names, not schema.relation, because the notify code only honors the
  relation name.  schema.relation will now generate a syntax error."

- Add to TODO: "Fix to_date()-related functions to issue errors
  consistently"

- Add to TODO: "Allow PL/PythonU to return boolean rather than 1/0."

- Add to TODO: "Consider reducing memory used for shared buffer
  reference count."

- Add URL for TODO: "Allow RETURN to return row or record functions."

- Mark TODO as done: "Support a data type with specific enumerated
  values (ENUM)."

- Add to TODO: "Add PQexecf() that allows complex parameter
  substitution."

Magnus Hagander committed:

- In pgsql/src/tools/msvc/vcregress.bat, continue running contrib
  regression tests if one fails, and exit with errorlevel 1 is >= 1
  checks failed.

- In pgsql/src/tools/msvc/vcregress.bat, make sure list of tests is
  cleared out before getting the new list of tests. Per Andrew
  Dunstan.

- In pgsql/src/tools/msvc/Install.pm, don't install files for sslinfo
  when building without openssl.  Per Andrew Dunstan.

- In pgsql/src/tools/msvc/Install.pm, xcopy can only deal with
  forward-slashed paths when it's quoted - needed for "vcregress
  check" to work.  Per report from Dave Page.

Teodor Sigaev committed:

- Fix caching of unsuccessful initialization of parser or
  configuration per report from the folks at peufeu.com.  Backpatched
  to 7.4.

Tom Lane committed:

- Minor editorialization on CLUSTER reference page.

- Heikki Linnakangas' patch to make CLUSTER MVCC-safe.

- In pgsql/doc/src/sgml/ref/truncate.sgml, add note that TRUNCATE is
  not MVCC-safe.

- Don't remove the 'alias' field from flattened rangetable entries;
  there are some corner cases where this is needed by ruleutils.c for
  proper display of variables during EXPLAIN.

- Make 'col IS NULL' clauses be indexable conditions.  Teodor Sigaev,
  with some kibitzing from Tom Lane.

- Now that core functionality is depending on autoconf's
  AC_C_BIGENDIAN to be right, there seems precious little reason to
  have a pile of hand-maintained endianness definitions in
  src/include/port/*.h.  Get rid of those, and make the couple of
  places that used them depend on WORDS_BIGENDIAN instead.

- Support varlena fields with single-byte headers and unaligned
  storage.  This commit breaks any code that assumes that the mere act
  of forming a tuple (without writing it to disk) does not "toast" any
  fields.  While all available regression tests pass, I'm not totally
  sure that we've fixed every nook and cranny, especially in contrib.
  Greg Stark with some help from Tom Lane.

- Remove the CheckpointStartLock in favor of having backends show
  whether they are in their commit critical sections via flags in the
  ProcArray.  Checkpoint can watch the ProcArray to determine when
  it's safe to proceed.  This is a considerably better solution to the
  original problem of race conditions between checkpoint and
  transaction commit: it speeds up commit, since there's one less lock
  to fool with, and it prevents the problem of checkpoint being
  delayed indefinitely when there's a constant flow of commits.
  Heikki Linnakangas, with some kibitzing from Tom.

- Decouple the values of TOAST_TUPLE_THRESHOLD and
  TOAST_MAX_CHUNK_SIZE.  Add the latter to the values checked in
  pg_control, since it can't be changed without invalidating toast
  table content.  This commit in itself shouldn't change any behavior,
  but it lays some necessary groundwork for experimentation with these
  toast-control numbers.  Note: while TOAST_TUPLE_THRESHOLD can now be
  changed without initdb, some thought still needs to be given to
  needs_toast_table() in toasting.c before unleashing random changes.

- Fix check_sql_fn_retval to allow the case where a SQL function
  declared to return void ends with a SELECT, if that SELECT has a
  single result that is also of type void.  Without this, it's hard to
  write a void function that calls another void function.  Per gripe
  from Peter Eisentraut.  Back-patch as far as 8.0.

- Support enum data types.  Along the way, use macros for the values
  of pg_type.typtype whereever practical.  Tom Dunstan, with some
  kibitzing from Tom Lane.

Peter Eisentraut committed:

- Update catversion for new XML mapping functions.

- Update SQL conformance for SQL to XML mappings.

- Mapping schemas and databases to XML and XML Schema.  Refactor and
  document the remaining mapping code.

- In pgsql/src/interfaces/ecpg/preproc/Makefile, complete cleaning.

== Rejected Patches (for now) ==

Zdenek Kotala's patch to add large file support on grounds of lack of
use cases.

== Pending Patches ==

Greg Smith sent in a patch which puts entries in the log file around
some backend events that regularly cause client pauses, most of which
are visible only when running with log_min_messages = debug2.

Simon Riggs sent in another version of his "Deferred Transactions,
Transaction Guarantee and COMMIT without waiting" patch.

David Fetter sent in a patch to implement arrays of compound types.

Pavan Deolasee sent in versions 6.3 and 7.0 of his WIP HOT patch.

Marko Kreen sent in two more revisions of his RESET SESSION patch.

Heikki Linnakangas sent in two revisions of a patch intended to fix
the mdsync never-ending loop problem mentioned at
http://archives.postgresql.org/pgsql-hackers/2007-04/msg00259.php

Alvaro Herrera sent in another revision of his autovacuum multiworkers
patch.

Simon Riggs sent in a comprehensive Reviewers Guide to Deferred
Transactions/Transaction Guarantee, complete with the latest version
of the "grouped transactions" patch.

Simon Riggs sent in some changes to warm standby.