Commit 0844205f authored by Bas Couwenberg's avatar Bas Couwenberg

Imported Upstream version 2.3.1+dfsg

parent 5f67979a
# See http://readme.drone.io/0.5/usage/overview
env:
global:
- RUNTESTFLAGS=-v
# See https://git.osgeo.org/gogs/postgis/postgis-docker
test-image: &test-image docker.kbt.io/postgis/build-test:trisquel
pipeline:
clone:
image: git
image: plugins/git
depth: 20
recursive: false
build:
......@@ -19,3 +23,5 @@ pipeline:
commands:
- service postgresql start
- make check
- make install
- utils/check_all_upgrades.sh 2.4.0dev
2016-11-26 21:49 Regina Obe <lr@pcorp.us>
* [r15260] HOWTO_RELEASE: Add build badges, trunk vs. branch
release
closes #3671 for PostGIS 2.3
2016-11-26 19:54 Regina Obe <lr@pcorp.us>
* [r15256] NEWS, postgis/postgis.sql.in: Mark ST_Extent, ST_Mem*
aggregate functions parallel safe
closes #3650 for PostGIS 2.3.1
2016-11-26 16:39 Regina Obe <lr@pcorp.us>
* [r15253] doc/reference_raster.xml: ST_DumpAsPolygons
documentation confusing wrt no data value
closes #3512 for PostGIS 2.3.1
2016-11-26 15:19 Regina Obe <lr@pcorp.us>
* [r15250] doc/reference_measure.xml: ST_Equals documentation does
not describe current behavior
closes #3566 for 2.3.1
2016-11-26 14:55 Regina Obe <lr@pcorp.us>
* [r15246] doc/extras_topology.xml: Incorrect parameter name for
CreateTopology
references #3509 for 2.3.1
2016-11-25 01:05 Regina Obe <lr@pcorp.us>
* [r15245] NEWS, raster/rt_pg/rtpostgis.sql.in: add raster
constraint max extent exceeds array size limit
references #3501 for 2.3 (PostGIS 2.3.1)
2016-11-21 15:03 Paul Ramsey <pramsey@cleverelephant.ca>
* [r15238] configure.ac: Change MSG line
2016-11-17 08:01 Sandro Santilli <strk@kbt.io>
* [r15235] doc/extras_topology.xml: Backport trunk changes in
topology docs
2016-11-15 23:32 Paul Ramsey <pramsey@cleverelephant.ca>
* [r15231] configure.ac: OS guard 10.12 osx libxml fix
2016-11-11 19:51 Regina Obe <lr@pcorp.us>
* [r15228] NEWS: add missing bug fix to list
2016-11-11 19:42 Regina Obe <lr@pcorp.us>
* [r15227] NEWS, doc/using_postgis_dataman.xml,
libpgcommon/gserialized_gist.c, libpgcommon/gserialized_gist.h,
postgis/brin_2d.c, postgis/brin_nd.c,
postgis/gserialized_gist_2d.c, postgis/gserialized_gist_nd.c,
regress/regress_brin_index.sql,
regress/regress_brin_index_3d.sql,
regress/regress_brin_index_3d_expected,
regress/regress_brin_index_expected: index corruption and memory
leak in BRIN support
Patch from Julien Rouhaud (Dalibo)
closes #3665 for PostGIS 2.3.1
2016-11-10 00:11 Regina Obe <lr@pcorp.us>
* [r15222] NEWS, liblwgeom/lwgeodetic.c, regress/geography.sql,
regress/geography_expected: Bug in geography ST_Segmentize
References #3667 for PostGIS 2.3.1
Patch provided by Hugo Mercier (Oslandia)
2016-10-30 22:30 Regina Obe <lr@pcorp.us>
* [r15220] NEWS, postgis/postgis.sql.in: st_concavehull() returns
sometimes empty geometry collection
references #1973 for PostGIS 2.3
2016-10-28 15:41 Sandro Santilli <strk@kbt.io>
* [r15216] .drone.yml: Update drone yml to 0.5 version
See https://git.osgeo.org/gogs/sac/gogs-service/issues/14
2016-10-16 01:16 Regina Obe <lr@pcorp.us>
* [r15209] raster/rt_pg/rtpostgis.c: raster GUC -
boot_postgis_gdal_enabled_drivers should use TopMemoryContext
instead of CurrentMemoryContext
References #3659 for 2.3 (PostGIS 2.3.4) patch provided by
manaeem
2016-10-10 20:24 Sandro Santilli <strk@kbt.io>
* [r15202] liblwgeom/lwgeom_geos.c: Fix typo in error message about
ClipByBox availability
2016-10-10 19:46 Sandro Santilli <strk@kbt.io>
* [r15198] .drone.yml: Be verbose in running tests
2016-10-08 09:11 Sandro Santilli <strk@kbt.io>
* [r15194] README.md: Fix buildbot badges to point to 2.3 branch
See #3657
2016-10-07 20:17 Sandro Santilli <strk@kbt.io>
* [r15191] utils/check_all_upgrades.sh: Add missing upgrade checker
2016-10-07 20:05 Sandro Santilli <strk@kbt.io>
* [r15190] .drone.yml, NEWS, postgis/postgis.sql.in: Fix aggregates
upgrade
Fixes #3656 (aggregate upgrades)
Enables automated ugprade testing
2016-10-06 17:31 Sandro Santilli <strk@kbt.io>
* [r15179] doc/doxygen.cfg.in: Remove hard-coded version in Doxygen
project name
2016-10-03 20:21 Paul Ramsey <pramsey@cleverelephant.ca>
* [r15168] NEWS, liblwgeom/lwstroke.c: #3652, Crash on
collection(multicurve())
2016-09-27 22:55 Regina Obe <lr@pcorp.us>
* [r15160] README.postgis:
2016-09-27 08:12 Sandro Santilli <strk@kbt.io>
* [r15157] NEWS, postgis/postgis_module.c: Do not call printf from
interrupt handler, fixing deadlocks
Closes #3644 for 2.3 branch
2016-09-26 21:47 Regina Obe <lr@pcorp.us>
* [r15153] NEWS, configure.ac: PostGIS not building on latest OSX
XCode
References #3643 for PostGIS 2.3.1 (patch from pramsey)
2016-09-26 05:45 Regina Obe <lr@pcorp.us>
* [r15148] Version.config, extensions/upgradeable_versions.mk: bump
up version to 2.3.1dev
2016-09-26 05:15 Regina Obe <lr@pcorp.us>
* [r15145] doc/release_notes.xml: fix typo in release notes
2016-09-26 04:45 Regina Obe <lr@pcorp.us>
* [r15144] ChangeLog, NEWS, README.postgis, Version.config,
doc/release_notes.xml, extensions/upgradeable_versions.mk: Get
ready for PostGIS 2.3.0 launch
2016-09-26 03:26 Regina Obe <lr@pcorp.us>
* [r15143] .: Branch 2.3 (trunk will become 2.4 after we are done)
PostGIS 2.3.1
2016/11/28
* Bug Fixes
- #1973, st_concavehull() returns sometimes empty geometry collection
Fix from gde
- #3501, add raster constraint max extent exceeds array size limit
for large tables
- #3643, PostGIS not building on latest OSX XCode
- #3644, Deadlock on interrupt
- #3650, Mark ST_Extent, ST_3DExtent and ST_Mem*
agg functions as parallel safe so they can be parallelized
- #3652, Crash on Collection(MultiCurve())
- #3656, Fix upgrade of aggregates from 2.2 or lower version
- #3659, Crash caused by raster GUC define after CREATE EXTENSION
using wrong memory context. (manaeem)
- #3665, Index corruption and memory leak in BRIN indexes
patch from Julien Rouhaud (Dalibo)
- #3667, geography ST_Segmentize bug
patch from Hugo Mercier (Oslandia)
PostGIS 2.3.0
2016/09/26
......@@ -8,7 +29,7 @@ PostGIS 2.3.0
- #3604, pgcommon/Makefile.in orders CFLAGS incorrectly leading to
wrong liblwgeom.h (Greg Troxel)
- #3396, ST_EstimatedExtent, throw WARNING instead of ERROR
(Regina Obe)
......@@ -27,7 +48,7 @@ PostGIS 2.3.0
- #1758, ST_Normalize (Sandro Santilli)
- #2236, shp2pgsql -d now emits "DROP TABLE IF EXISTS"
- #2259, ST_VoronoiPolygons and ST_VoronoiLines (Dan Baston)
- #2841 and #2996, ST_MinimumBoundingRadius and new ST_MinimumBoundingCircle
- #2841 and #2996, ST_MinimumBoundingRadius and new ST_MinimumBoundingCircle
implementation using Welzl's algorithm (Dan Baston)
- #2991, Enable ST_Transform to use PROJ.4 text (Mike Toews)
- #3059, Allow passing per-dimension parameters in ST_Expand (Dan Baston)
......
Debbie:
[![Build Status](https://debbie.postgis.net/buildStatus/icon?job=PostGIS_trunk)]
(https://debbie.postgis.net/view/PostGIS/job/PostGIS_trunk/)
[![Build Status](https://debbie.postgis.net/buildStatus/icon?job=PostGIS_2.3)]
(https://debbie.postgis.net/view/PostGIS/job/PostGIS_2.3/)
Winnie:
[![Build Status](https://debbie.postgis.net:444/buildStatus/icon?job=PostGIS_trunk)]
(https://debbie.postgis.net:444/view/PostGIS/job/PostGIS_trunk/)
[![Build Status](https://debbie.postgis.net:444/buildStatus/icon?job=PostGIS_2.3)]
(https://debbie.postgis.net:444/view/PostGIS/job/PostGIS_2.3/)
Dronie:
[![Build Status](https://drone.osgeo.kbt.io/api/badges/postgis/postgis/status.svg?branch=svn-trunk)]
(https://drone.osgeo.kbt.io/postgis/postgis?branch=svn-trunk)
[![Build Status](https://drone.osgeo.kbt.io/api/badges/postgis/postgis/status.svg?branch=svn-2.3)]
(https://drone.osgeo.kbt.io/postgis/postgis?branch=svn-2.3)
Travis:
[![Build Status](https://secure.travis-ci.org/postgis/postgis.png)]
(http://travis-ci.org/postgis/postgis)
[![Build Status](https://secure.travis-ci.org/postgis/postgis.png?branch=svn-2.3)]
(http://travis-ci.org/postgis/postgis?branch=svn-2.3)
GitLab-CI:
[![Gitlab-CI](https://gitlab.com/postgis/postgis/badges/svn-trunk/build.svg)]
(https://gitlab.com/postgis/postgis/commits/svn-trunk)
[![Gitlab-CI](https://gitlab.com/postgis/postgis/badges/svn-2.3/build.svg)]
(https://gitlab.com/postgis/postgis/commits/svn-2.3)
This file is here to play nicely with modern code repository facilities.
Actual readme is [here](README.postgis).
......
PostGIS - Geographic Information Systems Extensions to PostgreSQL
=================================================================
:Version: 2.3.0
:Date: 2016-09-26
:Version: 2.3.1
:Date: 2016-11-28
:Website: http://postgis.net
This distribution contains a module which implements GIS simple features, ties
......@@ -31,7 +31,7 @@ Directory structure::
REQUIREMENTS
------------
PostGIS is compatible with PostgreSQL 9.1 and above.
PostGIS is compatible with PostgreSQL 9.2 and above.
You *must* have the full PostgreSQL - including server headers - installed for
this to work.
......
......@@ -5,7 +5,7 @@
POSTGIS_MAJOR_VERSION=2
POSTGIS_MINOR_VERSION=3
POSTGIS_MICRO_VERSION=0
POSTGIS_MICRO_VERSION=1
# Liblwgeom interface versioning, reset to 0:0:0 (cur:age:rev)
# when changing POSTGIS_MINOR_VERSION
......
......@@ -718,6 +718,7 @@ GEOS_CPPFLAGS
GEOS_LDFLAGS
GEOSCONFIG
POSTGIS_LIBXML2_VERSION
XCRUN
XML2CONFIG
HAVE_BRIN
POSTGIS_PGSQL_VERSION
......@@ -13637,6 +13638,67 @@ fi
XML2_LDFLAGS=`$XML2CONFIG --libs`
XML2_CPPFLAGS=`$XML2CONFIG --cflags`
case $host_os in
darwin*)
# Extract the first word of "xcrun", so it can be a program name with args.
set dummy xcrun; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_path_XCRUN+:} false; then :
$as_echo_n "(cached) " >&6
else
case $XCRUN in
[\\/]* | ?:[\\/]*)
ac_cv_path_XCRUN="$XCRUN" # Let the user override the test with a path.
;;
*)
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_XCRUN="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
;;
esac
fi
XCRUN=$ac_cv_path_XCRUN
if test -n "$XCRUN"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $XCRUN" >&5
$as_echo "$XCRUN" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
if test "x$XCRUN" = "x"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using OSX XCode... no" >&5
$as_echo "using OSX XCode... no" >&6; }
else
XCODE_VER=`$XCRUN --show-sdk-version`
if test $XCODE_VER = "10.12"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: applying OSX XCode 10.12 libxml special case... yes" >&5
$as_echo "applying OSX XCode 10.12 libxml special case... yes" >&6; }
XML2_LDFLAGS=`$XML2CONFIG --exec-prefix=/usr --libs`
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using OSX XCode $XCODE_VER... yes" >&5
$as_echo "using OSX XCode $XCODE_VER... yes" >&6; }
fi
fi
;;
esac
POSTGIS_LIBXML2_VERSION=`$XML2CONFIG --version`
CPPFLAGS_SAVE="$CPPFLAGS"
......
......@@ -564,6 +564,30 @@ dnl Extract the linker and include flags
XML2_LDFLAGS=`$XML2CONFIG --libs`
XML2_CPPFLAGS=`$XML2CONFIG --cflags`
dnl
dnl XCode in 10.12 supplies bad flags in xml2config resulting
dnl in compile errors. For that one version, we force the prefix
dnl to match where we know the libraries reside
dnl
case $host_os in
darwin*)
AC_PATH_PROG([XCRUN], [xcrun])
if test "x$XCRUN" = "x"; then
AC_MSG_RESULT([using OSX XCode... no])
else
XCODE_VER=`$XCRUN --show-sdk-version`
if test $XCODE_VER = "10.12"; then
AC_MSG_RESULT([applying OSX XCode 10.12 libxml special case... yes])
XML2_LDFLAGS=`$XML2CONFIG --exec-prefix=/usr --libs`
else
AC_MSG_RESULT([using OSX XCode $XCODE_VER... yes])
fi
fi
;;
esac
dnl Extract the version
POSTGIS_LIBXML2_VERSION=`$XML2CONFIG --version`
......
......@@ -17,7 +17,7 @@
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project.
PROJECT_NAME = "PostGIS Trunk Doxygen"
PROJECT_NAME = "PostGIS"
# The PROJECT_NUMBER tag can be used to enter a project or revision number.
# This could be handy for archiving the generated documentation or
......
......@@ -2,7 +2,7 @@
<chapter id="Topology">
<title>Topology</title>
<para>The PostGIS Topology types and functions are used to manage topological objects such as faces, edges and nodes. </para>
<para>Sandro Santilli's presentation at PostGIS Day Paris 2011 conference gives a good synopsis of PostGIS Topology and where it is headed <ulink url="http://strk.keybit.net/projects/postgis/Paris2011_TopologyWithPostGIS_2_0.pdf">Topology with PostGIS 2.0 slide deck</ulink>.</para>
<para>Sandro Santilli's presentation at PostGIS Day Paris 2011 conference gives a good synopsis of PostGIS Topology and where it is headed <ulink url="http://strk.kbt.io/projects/postgis/Paris2011_TopologyWithPostGIS_2_0.pdf">Topology with PostGIS 2.0 slide deck</ulink>.</para>
<para>Vincent Picavet provides a good synopsis and overview of what is Topology, how is it used, and various FOSS4G tools that support it in <ulink url="https://github.com/Oslandia/presentations/blob/master/pgconf_eu_2012/pgconfeu2012_vincent_picavet_postgis_topology.pdf?raw=true">PostGIS Topology PGConf EU 2012</ulink>.</para>
<para>An example of a topologically based GIS database is the <ulink url="https://www.census.gov/geo/maps-data/data/tiger.html">US Census Topologically Integrated Geographic Encoding and Referencing System (TIGER)</ulink> database. If you want to experiment with PostGIS topology and need some data, check out <xref linkend="Topology_Load_Tiger" />.</para>
<para>The PostGIS topology module has existed in prior versions of PostGIS but was never part of the Official PostGIS documentation.
......@@ -412,15 +412,15 @@ SELECT topology.AddTopoGeometryColumn('ri_topo', 'ri', 'roads', 'topo', 'LINE');
<para><xref linkend="AddTopoGeometryColumn"/></para>
</refsection>
</refentry>
<refentry id="Populate_Topology_Layer">
<refnamediv>
<refname>Populate_Topology_Layer</refname>
<refpurpose>Adds missing entries to topology.layer table by reading metadata from topo tables.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
......@@ -449,18 +449,18 @@ CREATE SCHEMA strk;
CREATE TABLE strk.parcels(gid serial, parcel_id varchar(20) PRIMARY KEY, address text);
SELECT topology.AddTopoGeometryColumn('strk_topo', 'strk', 'parcels', 'topo', 'POLYGON');
-- this will return no records because this feature is already registered
SELECT *
FROM topology.Populate_Topology_Layer();
SELECT *
FROM topology.Populate_Topology_Layer();
-- let's rebuild
TRUNCATE TABLE topology.layer;
SELECT *
FROM topology.Populate_Topology_Layer();
SELECT *
FROM topology.Populate_Topology_Layer();
SELECT topology_id,layer_id, schema_name As sn, table_name As tn, feature_column As fc
FROM topology.layer;
</programlisting>
<screen> schema_name | table_name | feature_column
-------------+------------+----------------
......@@ -668,14 +668,14 @@ face without edges | 0 |
<funcdef>integer <function>CreateTopology</function></funcdef>
<paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
<paramdef><type>integer </type> <parameter>srid</parameter></paramdef>
<paramdef><type>double precision </type> <parameter>tolerance</parameter></paramdef>
<paramdef><type>double precision </type> <parameter>prec</parameter></paramdef>
</funcprototype>
<funcprototype>
<funcdef>integer <function>CreateTopology</function></funcdef>
<paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
<paramdef><type>integer </type> <parameter>srid</parameter></paramdef>
<paramdef><type>double precision </type> <parameter>tolerance</parameter></paramdef>
<paramdef><type>double precision </type> <parameter>prec</parameter></paramdef>
<paramdef><type>boolean </type> <parameter>hasz</parameter></paramdef>
</funcprototype>
</funcsynopsis>
......@@ -686,7 +686,7 @@ face without edges | 0 |
<para>Creates a new schema with name <varname>topology_name</varname> consisting of tables (<varname>edge_data</varname>,<varname>face</varname>,<varname>node</varname>, <varname>relation</varname>
and registers this new topology in the topology.topology table. It returns the id of the topology in the topology table. The srid is the spatial reference identified as
defined in spatial_ref_sys table for that topology. Topologies must be uniquely named. The tolerance is measured in the units of the spatial reference system. If the tolerance is not specified defaults to 0.</para>
defined in spatial_ref_sys table for that topology. Topologies must be uniquely named. The tolerance is measured in the units of the spatial reference system. If the tolerance (<varname>prec</varname>) is not specified defaults to 0.</para>
<para>This is similar to the SQL/MM <xref linkend="ST_InitTopoGeo" /> but a bit more functional. <varname>hasz</varname> defaults to false if not specified.</para>
......@@ -2510,7 +2510,11 @@ edgeid
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
<para><xref linkend="CreateTopology"/>, <xref linkend="spatial_ref_sys"/></para>
<para>
<xref linkend="TopoGeo_AddLineString"/>,
<xref linkend="CreateTopology"/>,
<xref linkend="spatial_ref_sys"/>
</para>
</refsection>
</refentry>
......
......@@ -2983,15 +2983,12 @@ SELECT s.gid, s.school_name
points are the same).</para>
<important>
<para>This function will return false if either geometry is invalid even if they are binary equal.</para>
<para>This function will return false if either geometry is invalid except in the case where they are binary equal.</para>
</important>
<important>
<para>Do not call with a GEOMETRYCOLLECTION as an argument.</para>
</important>
<para>&sfs_compliant; s2.1.1.2</para>
<para>&sqlmm_compliant; SQL-MM 3: 5.1.24</para>
<para>Changed: 2.2.0 Returns true even for invalid geometries if they are binary equal</para>
</refsection>
<refsection>
......
......@@ -12811,7 +12811,7 @@ FROM (SELECT ST_SetRotation(rast, 0.1, 0.1) As rast
can be used to expand a single raster into multiple POLYGONS/MULTIPOLYGONS.</para>
<para>Availability: Requires GDAL 1.7 or higher.</para>
<note><para>If there is a no data value set for a band, pixels with that value will not be returned.</para></note>
<note><para>If there is a no data value set for a band, pixels with that value will not be returned except in the case of exclude_nodata_value=false.</para></note>
<note><para>If you only care about count of pixels with a given value in a raster, it is faster to use <xref linkend="RT_ST_ValueCount" />.</para></note>
<note>
<para>
......
This diff is collapsed.
......@@ -27,9 +27,9 @@ COMMENT ON FUNCTION topology.CreateTopology(varchar ) IS 'args: topology_schema_
COMMENT ON FUNCTION topology.CreateTopology(varchar , integer ) IS 'args: topology_schema_name, srid - Creates a new topology schema and registers this new schema in the topology.topology table.';
COMMENT ON FUNCTION topology.CreateTopology(varchar , integer , double precision ) IS 'args: topology_schema_name, srid, tolerance - Creates a new topology schema and registers this new schema in the topology.topology table.';
COMMENT ON FUNCTION topology.CreateTopology(varchar , integer , double precision ) IS 'args: topology_schema_name, srid, prec - Creates a new topology schema and registers this new schema in the topology.topology table.';
COMMENT ON FUNCTION topology.CreateTopology(varchar , integer , double precision , boolean ) IS 'args: topology_schema_name, srid, tolerance, hasz - Creates a new topology schema and registers this new schema in the topology.topology table.';
COMMENT ON FUNCTION topology.CreateTopology(varchar , integer , double precision , boolean ) IS 'args: topology_schema_name, srid, prec, hasz - Creates a new topology schema and registers this new schema in the topology.topology table.';
COMMENT ON FUNCTION topology.CopyTopology(varchar , varchar ) IS 'args: existing_topology_name, new_name - Makes a copy of a topology structure (nodes, edges, faces, layers and TopoGeometries).';
......
......@@ -2184,7 +2184,7 @@ SELECT UPDATE_GEOMETRY_STATS([table_name], [column_name]);</programlisting></par
<para>BRIN stands for "Block Range Index" and is a generic form of
indexing that has been introduced in PostgreSQL 9.5. BRIN is a lossy kind
of index, and its main usage is to provide a compromise for both read and
write performance. It's primary goal is to handle very large tables for
write performance. Its primary goal is to handle very large tables for
which some of the columns have some natural correlation with their
physical location within the table. In addition to GIS indexing, BRIN is
used to speed up searches on various kinds of regular or irregular data
......@@ -2221,13 +2221,22 @@ SELECT UPDATE_GEOMETRY_STATS([table_name], [column_name]);</programlisting></par
follows:</para>
<para><programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ( [geometryfield] ); </programlisting></para>
<para>The above syntax will always build a 2D-index. To get the 3d-dimensional index supported in PostGIS 2.0+ for the geometry type, you can create one using this syntax</para>
<para>The above syntax will always build a 2D-index. To get a 3d-dimensional index, you can create one using this syntax</para>
<programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ([geometryfield] brin_geometry_inclusion_ops_3d);</programlisting>
<para>These above syntaxes will use the default number or block in a range, which is 128. To specify the number of blocks you want to summarise in a range, you can create one using this syntax</para>
<para><programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ( [geometryfield] ) WITH (pages_per_range = [number]); </programlisting></para>
<para>You can also get a 4d-dimensional index using the 4d operator class</para>
<programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ([geometryfield] brin_geometry_inclusion_ops_4d);</programlisting>
<para>These above syntaxes will use the default number or block in a range, which is 128. To specify the number of blocks you want to summarise in a range, you can create one using this syntax</para>
<para><programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ( [geometryfield] ) WITH (pages_per_range = [number]); </programlisting></para>
<para>Also, keep in mind that a BRIN index will only store one index
value for a large number of rows. If your table stores geometries with
a mixed number of dimensions, it's likely that the resulting index will
have poor performance. You can avoid this drop of performance by
choosing the operator class whith the least number of dimensions of the
stored geometries
</para>
<para>Also the "geography" datatype is supported for BRIN indexing. The
syntax for building a BRIN index on a "geometry" column is as follows:</para>
syntax for building a BRIN index on a "geography" column is as follows:</para>
<para><programlisting>CREATE INDEX [indexname] ON [tablename] USING BRIN ( [geographyfield] ); </programlisting></para>
<para>The above syntax will always build a 2D-index for geospatial objetcs on the spheroid. </para>
......
......@@ -25,19 +25,19 @@ OBJS_test_main = \
standard.o \
tokenize.o
POSTGIS_PGSQL_VERSION=95
POSTGIS_PGSQL_VERSION=96
# SQL preprocessor
SQLPP = /usr/bin/cpp -traditional-cpp -w -P
GREP=/bin/grep
PERL=/usr/bin/perl
EXTVERSION = 2.3.0
EXTVERSION = 2.3.1
MINORVERSION = 2.3
MODULE_big = address_standardizer-2.3
EXTENSION = address_standardizer
DATA = address_standardizer_data_us.control sql/$(EXTENSION).sql sql/$(EXTENSION)_data_us.sql
all: sql/address_standardizer.sql sql/address_standardizer--1.0--$(EXTVERSION).sql sql/address_standardizer--$(EXTVERSION).sql sql/address_standardizer--$(EXTVERSION)--$(EXTVERSION)next.sql sql/address_standardizer--$(EXTVERSION)next--$(EXTVERSION).sql \
sql/$(EXTENSION)_data_us.sql sql/address_standardizer--2.3.0.sql sql/$(EXTENSION)_data_us--2.3.0.sql sql/$(EXTENSION)_data_us--$(EXTVERSION)--$(EXTVERSION)next.sql \
sql/$(EXTENSION)_data_us.sql sql/address_standardizer--2.3.1.sql sql/$(EXTENSION)_data_us--2.3.1.sql sql/$(EXTENSION)_data_us--$(EXTVERSION)--$(EXTVERSION)next.sql \
sql/$(EXTENSION)_data_us--$(EXTVERSION)next--$(EXTVERSION).sql \
sql/test-init-extensions.sql sql/test-parseaddress.sql sql/test-standardize_address_1.sql sql/test-standardize_address_2.sql
......@@ -46,14 +46,14 @@ EXTRA_CLEAN += sql/*.sql
DOCS = README.address_standardizer
PG_CPPFLAGS = -I/var/lib/jenkins/workspace/geos/rel-3.5.1devw64/include -I/usr/include/libxml2 -I/usr/include -DHAVE_SFCGAL -I/var/lib/jenkins/workspace/pg/rel/pg9.5w64/pg9.5/include -g -O0
PG_CPPFLAGS = -I/var/lib/jenkins/workspace/geos/rel-3.6.1devw64/include -I/usr/include/libxml2 -I/usr/include -DHAVE_SFCGAL -I/var/lib/jenkins/workspace/pg/rel/pg9.6w64/pg9.6/include -g -O0
SHLIB_LINK = -L/var/lib/jenkins/workspace/geos/rel-3.5.1devw64/lib -lgeos_c -lproj -ljson-c -lxml2 -L/usr/lib/x86_64-linux-gnu -lSFCGAL -Wl,--exclude-libs,ALL -lpcre
SHLIB_LINK = -L/var/lib/jenkins/workspace/geos/rel-3.6.1devw64/lib -lgeos_c -lproj -ljson-c -lxml2 -L/usr/lib/x86_64-linux-gnu -lSFCGAL -Wl,--exclude-libs,ALL -lpcre
EXTRA_CLEAN = usps-st-city-name.txt mk-st-regexp mk-city-regex test_main
REGRESS = test-init-extensions test-parseaddress test-standardize_address_1 test-standardize_address_2
# PGXS information
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.6w64/bin/pg_config
PGVER := $(shell $(PG_CONFIG) --version)
......@@ -68,7 +68,7 @@ sql/%.sql: %.sql.in
$(SQLPP) -I../libpgcommon $< | grep -v '^#' | \
$(PERL) -lpe "s'MODULE_PATHNAME'\$$libdir/${EXTENSION}-${MINORVERSION}'g" > $@
sql/address_standardizer--2.3.0.sql: sql/address_standardizer_types.sql \
sql/address_standardizer--2.3.1.sql: sql/address_standardizer_types.sql \
sql/address_standardizer_functions.sql
cat $^ > $@
......@@ -168,6 +168,6 @@ EXTRA_CLEAN += $(wildcard expected/*--*.out)
EXTRA_CLEAN += sql/$(EXTENSION)--$(EXTVERSION).sql sql/$(EXTENSION)--unpackaged--$(EXTVERSION).sql
EXTRA_CLEAN += sql/$(EXTENSION)--$(EXTVERSION).sql sql/$(EXTENSION)--unpackaged--$(EXTVERSION).sql *.a *.so *.dll
PGXS := /var/lib/jenkins/workspace/pg/rel/pg9.5w64/lib/postgresql/pgxs/src/makefiles/pgxs.mk
PGXS := /var/lib/jenkins/workspace/pg/rel/pg9.6w64/lib/postgresql/pgxs/src/makefiles/pgxs.mk
include $(PGXS)
PERL = /usr/bin/perl
# address_standardizer extension
comment = 'Used to parse an address into constituent elements. Generally used to support geocoding address normalization step.'
default_version = '2.3.0'
default_version = '2.3.1'
relocatable = true
# address standardizer us dataset
comment = 'Address Standardizer US dataset example'
default_version = '2.3.0'
default_version = '2.3.1'
relocatable = true
include ../upgradeable_versions.mk
EXTENSION = postgis
EXTVERSION = 2.3.0
EXTVERSION = 2.3.1
MINORVERSION = 2.3
GREP = /bin/grep
PERL = /usr/bin/perl
......@@ -25,7 +25,7 @@ PREREL_PREFIX = $(shell echo $(EXTVERSION) | \
DATA = $(filter-out $(wildcard sql/*--*.sql),$(wildcard sql/*.sql))
#DOCS = $(wildcard ../../doc/html/*.html)
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.6w64/bin/pg_config
PG91 = $(shell $(PG_CONFIG) --version | $(GREP) -qE " 8\.| 9\.0" && echo no || echo yes)
SQL_BITS = $(wildcard sql_bits/*.sql)
......
# postgis extension
comment = 'PostGIS geometry, geography, and raster spatial types and functions'
default_version = '2.3.0'
default_version = '2.3.1'
module_pathname = '$libdir/postgis-2.3'
relocatable = false
include ../upgradeable_versions.mk
EXTENSION = postgis_sfcgal
EXTVERSION = 2.3.0
EXTVERSION = 2.3.1
MINORVERSION = 2.3
GREP = /bin/grep
PERL = /usr/bin/perl
......@@ -24,7 +24,7 @@ PREREL_PREFIX = $(shell echo $(EXTVERSION) | \
DATA = $(filter-out $(wildcard sql/*--*.sql),$(wildcard sql/*.sql))
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.6w64/bin/pg_config
PG91 = $(shell $(PG_CONFIG) --version | $(GREP) -qE " 8\.| 9\.0" && echo no || echo yes)
SQL_BITS = $(wildcard sql_bits/*.sql)
......
# postgis topology extension
comment = 'PostGIS SFCGAL functions'
default_version = '2.3.0'
default_version = '2.3.1'
relocatable = true
requires = postgis
include ../upgradeable_versions.mk
EXTENSION = postgis_tiger_geocoder
EXTVERSION = 2.3.0
EXTVERSION = 2.3.1
MINORVERSION = 2011.2.3
GREP = /bin/grep
PERL = /usr/bin/perl
......@@ -26,7 +26,7 @@ DATA = $(filter-out $(wildcard sql/*--*.sql),$(wildcard sql/*.sql))
REGRESS = test-normalize_address test-upgrade
REGRESS_OPTS = --load-extension=fuzzystrmatch --load-extension=postgis --load-extension=$(EXTENSION)
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.6w64/bin/pg_config
PG91 = $(shell $(PG_CONFIG) --version | $(GREP) -qE " 8\.| 9\.0" && echo no || echo yes)
SQL_BITS = $(wildcard sql_bits/*.sql)
......
# postgis tiger geocoder extension
comment = 'PostGIS tiger geocoder and reverse geocoder'
default_version = '2.3.0'
default_version = '2.3.1'
relocatable = false
schema = tiger
requires = 'postgis,fuzzystrmatch'
include ../upgradeable_versions.mk
EXTENSION = postgis_topology
EXTVERSION = 2.3.0
EXTVERSION = 2.3.1
MINORVERSION = 2.3
GREP = /bin/grep
PERL = /usr/bin/perl
......@@ -21,7 +21,7 @@ PREREL_PREFIX = $(shell echo $(EXTVERSION) | \
DATA = $(filter-out $(wildcard sql/*--*.sql),$(wildcard sql/*.sql))
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
PG_CONFIG = /var/lib/jenkins/workspace/pg/rel/pg9.6w64/bin/pg_config
PG91 = $(shell $(PG_CONFIG) --version | $(GREP) -qE " 8\.| 9\.0" && echo no || echo yes)
SQL_BITS = $(wildcard sql_bits/*.sql)
......