Heikki Linnakangas 08612f45a0 Extend cube on-disk format to pack points more tightly.
If the lower left and upper right corners of a cube are the same, set a
flag in the cube header, and only store one copy of the coordinates. That
cuts the on-disk size into half for the common case that the cube datatype
is used to represent points rather than boxes.

The new format is backwards-compatible with the old one, so pg_upgrade
still works. However, to get the space savings, the data needs to be
rewritten. A simple VACUUM FULL or REINDEX is not enough, as the old
Datums will just be moved to the new heap/index as is. A pg_dump and
reload, or something similar like casting to text and back, will do the
trick.

This patch deliberately doesn't update all the alternative expected output
files, as I don't have access to machines that produce those outputs. I'm
not sure if they are still relevant, but if they are, the buildfarm will
tell us and produce the diff required to fix it. If none of the buildfarm
animals need them, they should be removed altogether.

Patch by Stas Kelvich.
2013-10-21 22:00:15 +03:00
..
2013-10-13 00:09:18 -04:00
2013-01-01 17:15:01 -05:00
2013-05-29 16:58:43 -04:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-05-29 16:58:43 -04:00
2013-01-01 17:15:01 -05:00
2013-10-13 00:09:18 -04:00
2013-01-01 17:15:01 -05:00
2013-05-29 16:58:43 -04:00
2013-10-13 00:09:18 -04:00
2013-05-29 16:58:43 -04:00
2013-10-13 00:09:18 -04:00
2012-04-23 22:43:09 -04:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-01-01 17:15:01 -05:00
2013-02-22 18:56:42 -03:00
2012-04-14 09:29:54 +03:00

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "gmake all" and "gmake
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.