[postgis-users] POSTGIS_ENABLE_OUTDB_RASTERS=1: PostGIS won't start (RHEL 6.5)
Bborie Park
dustymugs at gmail.com
Wed Feb 25 12:56:17 PST 2015
Going back a few messages, it looks like you're specifying these out-db
rasters with relative paths. Use absolute paths.
Instead of:
raster2pgsql -I -C -e -Y -F -d -R -s 2926 ./slope/slope_ps.tif gis.slope |
psql osm_test
Use:
raster2pgsql -I -C -e -Y -F -d -R -s 2926
/ABSOLUTE/PATH/TO/slope/slope_ps.tif gis.slope | psql osm_test
PostgreSQL cannot access paths that were relative to the current working
directory when calling raster2pgsql.
Also, specify a tile size.
-bborie
On Wed, Feb 25, 2015 at 12:51 PM, Phil Hurvitz <phurvitz at uw.edu> wrote:
> Thank you, Bborie. This seems to be a partial solution (at least now
> PostGIS isn't complaining about the out-db raster). But now I get a
> different problem, which is that attempting to access the out-db raster
> makes the connection choke:
>
> select st_summarystats(rast) from slope;
> The connection to the server was lost. Attempting reset: Failed.
> !>
>
> -P.
>
> **************************************************************
> Philip M. Hurvitz, PhD | Research Assistant Professor | UW-CBE
> Urban Form Lab | 1107 NE 45th Street, Suite 535 | Box 354802
> University of Washington, Seattle, Washington 98195-4802, USA
> phurvitz at u.washington.edu | http://gis.washington.edu/phurvitz
> "What is essential is invisible to the eye." -de Saint-Exupéry
> **************************************************************
>
> On 2/25/2015 12:41, Bborie Park wrote:
>
>> Ah. I use a script similar to this.
>>
>> In the following block...
>>
>> start)
>> ...
>> su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
>> ...
>>
>> You'll want to modify the su line to be like:
>>
>> su - $PGUSER -c "POSTGIS_ENABLE_OUTDB_RASTERS=1
>> POSTGIS_GDAL_ENABLED_DRIVERS=__ENABLE_ALL $DAEMON -D '$PGDATA' &"
>> >>$PGLOG 2>&1
>>
>> See if that works...
>>
>> -bborie
>>
>>
>> On Wed, Feb 25, 2015 at 12:29 PM, Phil Hurvitz <phurvitz at uw.edu
>> <mailto:phurvitz at uw.edu>> wrote:
>>
>> Certainly!
>>
>> ! /bin/sh
>>
>> # chkconfig: 2345 98 02
>> # description: PostgreSQL RDBMS
>>
>> # This is an example of a start/stop script for SysV-style init, such
>> # as is used on Linux systems. You should edit some of the variables
>> # and maybe the 'echo' commands.
>> #
>> # Place this file at /etc/init.d/postgresql (or
>> # /etc/rc.d/init.d/postgresql) and make symlinks to
>> # /etc/rc.d/rc0.d/K02postgresql
>> # /etc/rc.d/rc1.d/K02postgresql
>> # /etc/rc.d/rc2.d/K02postgresql
>> # /etc/rc.d/rc3.d/S98postgresql
>> # /etc/rc.d/rc4.d/S98postgresql
>> # /etc/rc.d/rc5.d/S98postgresql
>> # Or, if you have chkconfig, simply:
>> # chkconfig --add postgresql
>> #
>> # Proper init scripts on Linux systems normally require setting lock
>> # and pid files under /var/run as well as reacting to network
>> # settings, so you should treat this with care.
>>
>> # Original author: Ryan Kirkpatrick <pgsql at rkirkpat.net
>> <mailto:pgsql at rkirkpat.net>>
>>
>> # contrib/start-scripts/linux
>>
>> ## EDIT FROM HERE
>>
>> # Installation prefix
>> prefix=/usr/local/pgsql
>>
>> # Data directory
>> PGDATA="/usr/local/pgsql/data"
>> POSTGIS_GDAL_ENABLED_DRIVERS=__ENABLE_ALL
>>
>> # Who to run the postmaster as, usually "postgres". (NOT "root")
>> PGUSER=postgres
>>
>> # Where to keep a log file
>> PGLOG="$PGDATA/serverlog"
>>
>> # It's often a good idea to protect the postmaster from being killed
>> by the
>> # OOM killer (which will tend to preferentially kill the postmaster
>> because
>> # of the way it accounts for shared memory). Setting the
>> OOM_SCORE_ADJ value
>> # to -1000 will disable OOM kill altogether. If you enable this,
>> you probably
>> # want to compile PostgreSQL with "-DLINUX_OOM_SCORE_ADJ=0", so that
>> # individual backends can still be killed by the OOM killer.
>> #OOM_SCORE_ADJ=-1000
>> # Older Linux kernels may not have /proc/self/oom_score_adj, but
>> instead
>> # /proc/self/oom_adj, which works similarly except the disable value
>> is -17.
>> # For such a system, enable this and compile with "-DLINUX_OOM_ADJ=0".
>> #OOM_ADJ=-17
>>
>> POSTGIS_ENABLE_OUTDB_RASTERS=1
>> POSTGIS_GDAL_ENABLED_DRIVERS=__ENABLE_ALL
>>
>> ## STOP EDITING HERE
>>
>> # The path that is to be used for the script
>> PATH=/usr/local/sbin:/usr/__local/bin:/sbin:/bin:/usr/__sbin:/usr/bin
>>
>> # What to use to start up the postmaster. (If you want the script
>> to wait
>> # until the server has started, you could use "pg_ctl start -w" here.
>> # But without -w, pg_ctl adds no value.)
>> DAEMON="$prefix/bin/__postmaster"
>>
>>
>> # What to use to shut down the postmaster
>> PGCTL="$prefix/bin/pg_ctl"
>>
>> set -e
>>
>> # Only start if we can find the postmaster.
>> test -x $DAEMON ||
>> {
>> echo "$DAEMON not found"
>> if [ "$1" = "stop" ]
>> then exit 0
>> else exit 5
>> fi
>> }
>>
>>
>> # Parse command line parameters.
>> case $1 in
>> start)
>> echo -n "Starting PostgreSQL: "
>> test x"$OOM_SCORE_ADJ" != x && echo "$OOM_SCORE_ADJ" >
>> /proc/self/oom_score_adj
>> test x"$OOM_ADJ" != x && echo "$OOM_ADJ" > /proc/self/oom_adj
>> su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
>> echo "ok"
>> ;;
>> stop)
>> echo -n "Stopping PostgreSQL: "
>> su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast"
>> echo "ok"
>> ;;
>> restart)
>> echo -n "Restarting PostgreSQL: "
>> su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast -w"
>> test x"$OOM_SCORE_ADJ" != x && echo "$OOM_SCORE_ADJ" >
>> /proc/self/oom_score_adj
>> test x"$OOM_ADJ" != x && echo "$OOM_ADJ" > /proc/self/oom_adj
>> su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
>> echo "ok"
>> ;;
>> reload)
>> echo -n "Reload PostgreSQL: "
>> su - $PGUSER -c "$PGCTL reload -D '$PGDATA' -s"
>> echo "ok"
>> ;;
>> status)
>> su - $PGUSER -c "$PGCTL status -D '$PGDATA'"
>> ;;
>> *)
>> # Print help
>> echo "Usage: $0 {start|stop|restart|reload|__status}" 1>&2
>> exit 1
>> ;;
>> esac
>>
>> exit 0
>>
>> -P.
>>
>> ******************************__******************************__**
>> Philip M. Hurvitz, PhD | Research Assistant Professor | UW-CBE
>> Urban Form Lab | 1107 NE 45th Street, Suite 535 | Box 354802
>> University of Washington, Seattle, Washington 98195-4802, USA
>> phurvitz at u.washington.edu <mailto:phurvitz at u.washington.edu> |
>> http://gis.washington.edu/__phurvitz
>> <http://gis.washington.edu/phurvitz>
>> "What is essential is invisible to the eye." -de Saint-Exupéry
>> ******************************__******************************__**
>>
>> On 2/25/2015 12:25, Bborie Park wrote:
>>
>> Can you post the shell script?
>>
>>
>>
>> On Wed, Feb 25, 2015 at 11:50 AM, Phil Hurvitz <phurvitz at uw.edu
>> <mailto:phurvitz at uw.edu>
>> <mailto:phurvitz at uw.edu <mailto:phurvitz at uw.edu>>> wrote:
>>
>> Thanks Bborie, I am starting with a shell script, and have
>> added the
>> env vars to that script, but am still unable to access the
>> out-db
>> rasters.
>>
>> -P.
>>
>>
>> ******************************____**************************
>> **__**__**
>> Philip M. Hurvitz, PhD | Research Assistant Professor |
>> UW-CBE
>> Urban Form Lab | 1107 NE 45th Street, Suite 535 | Box
>> 354802
>> University of Washington, Seattle, Washington 98195-4802,
>> USA
>> phurvitz at u.washington.edu <mailto:phurvitz at u.washington.edu>
>> <mailto:phurvitz at u.washington.__edu
>> <mailto:phurvitz at u.washington.edu>> |
>> http://gis.washington.edu/____phurvitz
>> <http://gis.washington.edu/__phurvitz>
>> <http://gis.washington.edu/__phurvitz
>> <http://gis.washington.edu/phurvitz>>
>> "What is essential is invisible to the eye." -de
>> Saint-Exupéry
>>
>> ******************************____**************************
>> **__**__**
>>
>> On 2/25/2015 11:45, Bborie Park wrote:
>>
>> The env variables need to be within the environment of
>> the postgres
>> process. How are you starting postgres?
>>
>> Shell script? Then you should be able to add the
>> variables to
>> that script.
>>
>> Direct invocation of posrgres on the command line? You
>> need to
>> have the
>> variables before the command
>>
>> VAR=1 postgres ...
>>
>> -bborie
>>
>> On Feb 25, 2015 11:40 AM, "Phil Hurvitz"
>> <phurvitz at uw.edu <mailto:phurvitz at uw.edu>
>> <mailto:phurvitz at uw.edu <mailto:phurvitz at uw.edu>>
>> <mailto:phurvitz at uw.edu <mailto:phurvitz at uw.edu>
>> <mailto:phurvitz at uw.edu <mailto:phurvitz at uw.edu>>>> wrote:
>>
>> Thanks Bborie, I built from the tarball rather
>> than using
>> an rpm;
>> does that still mean I should be adding the
>> environment
>> variables to
>>
>> /etc/sysconfig/pgsql/______postgresql
>>
>> So for overkill I added the env vars to that file
>> as well
>> as to the
>> init script, restarted PostgreSQL, and it seems I
>> still cannot
>> access the out-db raster.
>>
>> I added a slope raster using:
>>
>> raster2pgsql -I -C -e -Y -F -d -R -s 2926
>> ./slope/slope_ps.tif
>> gis.slope | psql osm_test
>>
>> I can get metadata (sorry for the ugly text
>> wrapping):
>>
>> select rid, (foo.md <http://foo.md>
>> <http://foo.md> <http://foo.md>).* from
>> (select rid,
>> st_Metadata(rast) as md from slope) as foo;
>> rid | upperleftx | upperlefty |
>> width | height |
>> scalex | scaley | skewx | skewy |
>> srid |
>> numbands
>>
>>
>> -----+------------------+-----______-------------+-------+--
>> --__--__--__+------------------+--__----__----__---------+--
>> -----+__------__-+----__--+----------
>> 1 | 835161.301005914 | 758483.868026069 |
>> 31935 | 34649 |
>> 32.8083333333333 | -32.8083333333333 | 0 |
>> 0 | 2926
>> | 1
>>
>> But cannot access values:
>>
>> select st_summarystats(rast) from slope;
>> ERROR: rt_raster_load_offline_data: Access to
>> offline
>> bands disabled
>> CONTEXT: SQL function "st_summarystats" statement 1
>>
>> select st_value(rast, 1, 1, 1) from slope;
>> ERROR: rt_raster_load_offline_data: Access to
>> offline
>> bands disabled
>>
>> -P.
>>
>>
>>
>> ******************************______************************
>> **__**__**__**
>> Philip M. Hurvitz, PhD | Research Assistant
>> Professor | UW-CBE
>> Urban Form Lab | 1107 NE 45th Street, Suite 535
>> | Box 354802
>> University of Washington, Seattle, Washington
>> 98195-4802, USA
>> phurvitz at u.washington.edu <mailto:phurvitz at u.washington.edu>
>> <mailto:phurvitz at u.washington.__edu
>> <mailto:phurvitz at u.washington.edu>>
>> <mailto:phurvitz at u.washington.
>> <mailto:phurvitz at u.washington.>____edu
>> <mailto:phurvitz at u.washington.__edu
>> <mailto:phurvitz at u.washington.edu>>> |
>> http://gis.washington.edu/______phurvitz
>> <http://gis.washington.edu/____phurvitz>
>> <http://gis.washington.edu/____phurvitz
>> <http://gis.washington.edu/__phurvitz>>
>> <http://gis.washington.edu/____phurvitz
>> <http://gis.washington.edu/__phurvitz>
>> <http://gis.washington.edu/__phurvitz
>> <http://gis.washington.edu/phurvitz>>>
>> "What is essential is invisible to the eye." -de
>> Saint-Exupéry
>>
>>
>> ******************************______************************
>> **__**__**__**
>>
>>
>> Bborie Park dustymugs at gmail.com
>> <mailto:dustymugs at gmail.com>
>> <mailto:dustymugs at gmail.com
>> <mailto:dustymugs at gmail.com>> <mailto:dustymugs at gmail.com
>> <mailto:dustymugs at gmail.com>
>> <mailto:dustymugs at gmail.com <mailto:dustymugs at gmail.com
>> >>>
>> Wed Feb 25 10:46:59 PST 2015
>>
>> >
>>
>> Philip,
>>
>> POSTGIS_ENABLE_OUTDB_RASTERS=1 is an environment
>> variable not to
>> be in
>> postgresql.conf.
>>
>> The same is true for
>> POSTGIS_GDAL_ENABLED_DRIVERS=______ENABLE_ALL
>>
>> https://wiki.postgresql.org/______wiki/PostgreSQL_on_RedHat_
>> ______Linux
>> <https://wiki.postgresql.org/____wiki/PostgreSQL_on_RedHat__
>> ___Linux>
>>
>> <https://wiki.postgresql.org/____wiki/PostgreSQL_on_RedHat__
>> ___Linux
>> <https://wiki.postgresql.org/__wiki/PostgreSQL_on_RedHat___Linux
>> >>
>>
>>
>> <https://wiki.postgresql.org/____wiki/PostgreSQL_on_RedHat__
>> ___Linux
>> <https://wiki.postgresql.org/__wiki/PostgreSQL_on_RedHat___Linux>
>>
>> <https://wiki.postgresql.org/__wiki/PostgreSQL_on_RedHat___Linux
>> <https://wiki.postgresql.org/wiki/PostgreSQL_on_RedHat_Linux>>>
>>
>> Based upon the above, it looks like you should
>> add
>>
>> POSTGIS_ENABLE_OUTDB_RASTERS=1
>> POSTGIS_GDAL_ENABLED_DRIVERS=______ENABLE_ALL
>>
>> to /etc/sysconfig/pgsql/______postgresql
>>
>> The above assumes you're using the packages
>> provided by
>> PostgreSQL.
>>
>> http://www.postgresql.org/______download/linux/redhat/
>> <http://www.postgresql.org/____download/linux/redhat/>
>> <http://www.postgresql.org/____download/linux/redhat/
>> <http://www.postgresql.org/__download/linux/redhat/>>
>>
>> <http://www.postgresql.org/____download/linux/redhat/
>> <http://www.postgresql.org/__download/linux/redhat/>
>> <http://www.postgresql.org/__download/linux/redhat/
>> <http://www.postgresql.org/download/linux/redhat/>>>
>>
>> -bborie
>>
>>
>>
>> On 2/25/2015 10:10, Phil Hurvitz wrote:
>>
>> Hi all, I am having trouble starting PostGIS
>> with
>> out-db raster
>> support
>>
>> In my
>> /usr/local/pgsql/data/______postgresql.conf file I
>> include the
>> line
>>
>> POSTGIS_ENABLE_OUTDB_RASTERS=1
>>
>> after which PostGIS won't start (service
>> postgresql start).
>>
>> Software is
>>
>> postgis_full_version
>>
>>
>> ------------------------------______------------------------
>> --__--__--__-----------
>> POSTGIS="2.1.3 r12547"
>> GEOS="3.4.2-CAPI-1.8.2 r3921"
>> PROJ="Rel. 4.7.1,
>> 23 September 2009" GDAL="GDAL 1.11.2, released
>> 2015/02/10"
>> LIBXML="2.7.6" TOPOLOGY RASTER
>>
>>
>> Also PostGIS won't start when I specify
>>
>> POSTGIS_GDAL_ENABLED_DRIVERS=______ENABLE_ALL
>>
>> Any help would be appreciated!
>>
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20150225/b474c2a1/attachment.html>
More information about the postgis-users
mailing list