== PostgreSQL Weekly News - February 25 2007 == - Mailing list pgsql-announce

From David Fetter
Subject == PostgreSQL Weekly News - February 25 2007 ==
Date
Msg-id 20070226064035.GA8429@fetter.org
Whole thread Raw
List pgsql-announce
== PostgreSQL Weekly News - February 25 2007 ==

The PostgreSQL fund at SPI this month funded David Fetter's travel to
Consili in Brazil where he delivered a conference keynote, and Neil
Conway's next two months of patch review work for PostgreSQL 8.3.

A Lively Discussion(TM) is going on on -hackers on the subject of
source code management.

The Seventh Framework Programme (FP7) is open for proposals.  EU
PostgreSQL organizations, consider sending in a proposal :)
http://cordis.europa.eu/fp7/home_en.html

You can now use search.postgresql.org as a firefox search box plugin.
http://www.gunduz.org/postgresql/searchpostgresqlorg.html

== PostgreSQL Product News ==

Cybertek of Austria has announced a synchronous multi-master
replication product for PostgreSQL.
http://www.cybertec.at/en/ctools.html

PGCluster-1.5.0rc15 and 1.7.0rc4 released.
http://pgfoundry.org/projects/pgcluster/

== PostgreSQL Jobs for February ==

http://archives.postgresql.org/pgsql-jobs/2007-02/threads.php

== PostgreSQL Local ==

There will be a PostgreSQL booth at CLT on March 3 and 4 in Chemnitz,
Germany.  Some of the usual suspects from the German-speaking PostgreSQL
communities will be there.  Contact info@pgug.de to participate.
http://chemnitzer.linux-tage.de/2007/info/

The Italian PostgreSQL community is looking for sponsors for its
PostgreSQL day in Prato, Italy this summer.  Check the link below
to participate.
http://www.pgday.it

== PostgreSQL in the News ==

Microsoft Technet publishes PostgreSQL HOWTO:
http://port25.technet.com/archive/2007/02/22/postgresql-on-windows-a-primer.aspx

OmniTI case study published:
http://www.arnnet.com.au/index.php/id;413111662;fp;4194304;fpid;1

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,
Josh Berkus and Devrim GUNDUZ.

To get your submission into the upcoming issue, get it to
david@fetter.org by Sunday at 3:00pm Pacific Time.

== Applied Patches ==

Andrew Dunstan committed:

- Allow pltcl args to spi_prepare and plpython args to plpy.prepare to
  be standard type aliases as well as those known in pg_type. Similar
  to recent change in plperl.

Peter Eisentraut committed:

- Bernd Helmle's patch which identifies the schema of inherited tables
  in psql \d when necessary.

- Add missing OIDs from xml support to pg_proc, bump catversion.

Bruce Momjian committed:

- Move test for BLCKSZ < 1024 to guc.c.

- Spelling fix in Solaris FAQ.

- Update Solaris FAQ per Peter Eisentraut.

- Updated FAQ on upgrading.

- Zdenek Kotala's patch to the Solaris FAQ.

- Chad Wagner's patch to psql which adds \prompt capability.

- Remove extra tab from pgsql/doc/src/sgml/ref/psql-ref.sgml.

- Remove tabs from SGML reference files so their addition can be
  detected in the future.

- Update message wording in FAQ.

- Update new optional VACUUM FULL hint for translations, per Alvaro
  Herrera.

- Simon Riggs's patch which moves increase FSM warning to after
  lazy_truncate_heap() because the function might reduce the number of
  free pages in the table.  Recommend VACUUM FULL only if 20% free.

- Heikki Linnakangas's patch to clean up the btree source code.

- Update FAQ about minor updates.

- Jun Kuwamura's update to the Japanese FAQ.

- Update URL in German FAQ for bug form, per Schima, Fabian

- Daojing Zhou's update of the Chinese FAQs to have two versions, a
  traditional Chinese version (Taiwan) and a Simplified version (China
  (PRC)).  Backpatch to 8.2.X.

- Update minor release text in FAQ.

- Add configure --enable-profiling to enable GCC profiling.  Patches
  from Korry Douglas and Nikhil S

- Update upgrade text in FAQ.

- Update URL for set-returning functions in FAQ.

- Add URL for "Allow row and record variables to be set to NULL
  constants, and allow NULL tests on such variables" in the TODO list.

- Prevent BLCKSZ < 1024, and have initdb test shared buffers based on
  the BLCKSZ value.

- Add to TODO: "Consider decreasing the amount of memory used by
  PrivateRefCount."

- Fix markup in pgsql/doc/src/sgml/information_schema.sgml.

- Change $(CC) to $(COMPILER) on Solaris gcc so -m64 is passed into
  the shared link line.

- Add to TODO: "Increase locking when DROPing objects so dependent
  objects cannot get dropped while the DROP operation is happening."

- Add URL for "Allow UPDATE/DELETE WHERE CURRENT OF cursor" in TODO
  list.

- Add to TODO: "Add missing operators for geometric data types.  Some
  geometric types do not have the full suite of geometric operators,
  e.g. box @> point."

- Update "encode" documentation to mention that 'escape' only changes
  null bytes and backslashes, remove "ASCII" mention.  Backpatch to
  8.2.X.

- Update pgpass Win32 wording.

- Update information_schema documentation to match system tables.
  Backpatch to 8.2.X.

- Improve wording on Julian dates in pgsql/doc/src/sgml/func.sgml.

- More clearly document that most PostgreSQL utilities support libpq
  environment variables.  Backpatch to 8.2.X.

- Remove from TODO for Win32: "Check .pgpass file permissions."  It is
  not needed.

- In pgsql/src/interfaces/libpq/fe-connect.c, add comment that on
  Win32, we don't need to check the .pgpass file permission, per
  Magnus Hagander.

- Add to TODO for Win32: "Check .pgpass file permissions."

- Update array slice documentation to be clearer.

- Add to TODO: "Fix IS OF so it matches the ISO specification, and add
  documentation."

- Comment-out documentation for IS OF because it doesn't conform to
  the ISO SQL behavior. Backpatch removal to 8.2.X.

- Remove TODO item: "ARRAY[[1,2],[3,4]])[1] should return the same
  values as ARRAY[[1,2],[3,4]])[1:1]."  It actually shouldn't.

- Add text about Makefile.custom to FAQ_DEV.

- Document that to_char('J'/Julian) is midnight-based, per report that
  Julian technically is noon to noon.

- Improve wording in isodow documentation.

- Update PQfree() documentation to be clearer, backpatch to 8.2.X.

- Add to TODO: "Allow user configuration of TOAST thresholds."

- Add newlines to TODO.

- Add to TODO: "Allow UPDATEs on only non-referential integrity
  columns not to conflict with referential integrity locks."

- Add to TODO: "Allow INSERT/UPDATE ... RETURNING inside a SELECT
  'FROM' clause."

- Clarify documentation that initdb -A or editing pg_hba.conf is
  required if you do not trust local users.

- Clarify documentation for "day of the week" handling for to_char()
  and EXTRACT().

- Mark TODO as done: "Add ISO day of week format 'ID' to to_char()
  where Monday = 1."

- Add "isodow" option to EXTRACT() and date_part() where Sunday = 7.

- Mark TODO as done: "Add a field 'isoyear' to extract(), based on the
  ISO week."

- Mark TODO as done: "Add long file support for binary pg_dump
  output."

Magnus Hagander committed:

- In pgsql/src/tools/msvc/Solution.pm, revert changes to process
  pg_proc.h entries without OIDs. We're not supposed to have such
  entries, and want to be notified when we do...  Leave the plain
  bug fix in genbki.

- Fix pg_dump on Win32 so that it properly dumps files larger than 2GB
  when using binary dump formats.

- Parse pg_proc.h with entries without OIDs for the MSVC build.

Tom Lane committed:

- Update 7.x variant horology files to match the new US DST rules.  It
  seems likely that anyone wanting to run the regression tests in the
  future will have up-to-date system timezone files, so this is more
  likely to work than the old contents.

- Put back copyObject() call I removed in a fit of brain fade.  This
  one is still needed despite cleanups in setrefs.c, because the point
  is to let the inserted Result node compute a different tlist than
  its input node does.  Per example from Jeremy Drake.

- Now that plans have flat rangetable lists, it's a lot easier to get
  EXPLAIN to drill down into subplan targetlists to print the referent
  expression for an OUTER or INNER var in an upper plan node.  Hence,
  make it do that always, and banish the old hack of showing
  "?columnN?" when things got too complicated.  Along the way, fix an
  EXPLAIN bug I introduced by suppressing subqueries from
  execution-time range tables: get_name_for_var_field() assumed it
  could look at rte->subquery to find out the real type of a RECORD
  var.  That doesn't work anymore, but instead we can look at the
  input plan of the SubqueryScan plan node.

- Change Agg and Group nodes so that Vars contained in their
  targetlists and quals have varno OUTER, rather than zero, to
  indicate a reference to an output of their lefttree subplan.  This
  is consistent with the way that every other upper-level node type
  does it, and allows some simplifications in setrefs.c and EXPLAIN.

- Fix bug I introduced in recent patch to make hash joins discard null
  tuples immediately: ExecHashGetHashValue failed to restore the
  caller's memory context before taking the failure exit.

- Turn the rangetable used by the executor into a flat list, and avoid
  storing useless substructure for its RangeTblEntry nodes.  (I chose
  to keep using the same struct node type and just zero out the link
  fields for unneeded info, rather than making a separate
  ExecRangeTblEntry type --- it seemed too fragile to have two
  different rangetable representations.) Along the way, put subplans
  into a list in the toplevel PlannedStmt node, and have SubPlan nodes
  refer to them by list index instead of direct pointers.  Vadim
  wanted to do that years ago, but I never understood what he was on
  about until now.  It makes things a *whole* lot more robust, because
  we can stop worrying about duplicate processing of subplans during
  expression tree traversals.  That's been a constant source of bugs,
  and it's finally gone.  There are some consequent simplifications
  yet to be made, like not using a separate EState for subplans in the
  executor, but I'll tackle that later.

- Adjust user-facing documentation to explain why we don't check
  pgpass file permissions on Windows.

- Remove the Query structure from the executor's API.  This allows us
  to stop storing mostly-redundant Query trees in prepared statements,
  portals, etc.  To replace Query, a new node type called PlannedStmt
  is inserted by the planner at the top of a completed plan tree; this
  carries just the fields of Query that are still needed at runtime.
  The statement lists kept in portals etc. now consist of intermixed
  PlannedStmt and bare utility-statement nodes --- no Query.  This
  incidentally allows us to remove some fields from Query and Plan
  nodes that shouldn't have been there in the first place.  Still to
  do: simplify the execution-time range table; at the moment the range
  table passed to the executor still contains Query trees for
  subqueries.  initdb forced due to change of stored rules.

- Get rid of some old and crufty global variables in the planner.
  When this code was last gone over, there wasn't really any
  alternative to globals because we didn't have the PlannerInfo struct
  being passed all through the planner code.  Now that we do, we can
  restructure things to avoid non-reentrancy.  I'm fooling with this
  because otherwise I'd have had to add another global variable for
  the planned compact range table list.

== Rejected Patches (for now) ==

Mateo Beccati's patch which gets PostgreSQL to compile on Irix 6.5,
but the patch would break most Linux machines.

== Pending Patches ==

Zoltan Boszormenyi sent in two more iterations of his
IDENTITY/GENERATED patch.

Pavan Deolasee sent in two more versions of his work-in-progress HOT
patch.

Gregory Stark sent in a patch to shorten varlena headers.

Guillaume Smet sent in a first implementation of GIN for pg_trgm.

Nikolay Samokhvalov sent in a patch to implement xpath_array with
namespaces support.

Darcy Buskermolen sent in a patch which provides for logging in the
event that -k is unable to clean up an old WAL file and makes the
"failed to remove file" error message consistent for the trigger file.

Greg Sabino Mullane sent in a documentation patch which warns about
some strange behavior in LISTEN/NOTIFY.

Pavel Stehule sent in a patch to add timestamp support for XSD-type
timestamps.

Simon Riggs sent in another version of his patch to avoid deadlocks in
pg_dump.

Joachim Wieland sent in a patch which makes GUC values fall back to
their default values when they got removed (or commented) from the
configuration file.

Kris Jurka sent in a patch which implements lo_truncate for truncating
large objects to a given length.  This is required for implementing
Blob.truncate in the JDBC driver and rounds out filesystem like
functionality for large objects.

Simon Riggs sent a bug fix for his recent optimization of
COPY-after-truncate.



pgsql-announce by date:

Previous
From: Hans-Juergen Schoenig
Date:
Subject: Multimaster Replication for Windows released
Next
From: David Fetter
Date:
Subject: == PostgreSQL Weekly News - March 04 2007 ==