[postgis-users] Tiger Geocoder: SELECT loader_generate_script( --all states -- , 'sh') ??

René Fournier m5 at renefournier.com
Thu Oct 20 17:46:09 PDT 2011


Thanks Regina!

On 2011-10-20, at 6:04 PM, Paragon Corporation wrote:

> […]
> As far as short-hand for all states.  You could do 
> 
> SELECT loader_generate_script(ARRAY(SELECT abbrev FROM state_lookup ORDER BY
> abbrev), 'windows');
> 
> That still isn't perfect since you get duplicate path settings in each
> script.  We had designed it that way with the idea of being able to
> parallelly load the states, but the tear down of the staging schema makes
> that not work quite right. It wouldn't require too much effort to change,
> but probably not that badly needed by most people especially if you have
> slow netowrk speed or just single data disk drive.

I was just lazy. 

SELECT loader_generate_script(ARRAY['AK', 'AL', 'AR', 'AZ', 'CA', 'CO', 'CT', 'DC', 'DE', 'FL', 'GA', 'HI', 'IA', 'ID', 'IL', 'IN', 'KS', 'KY', 'LA', 'MA', 'MD', 'ME', 'MI', 'MN', 'MO', 'MS', 'MT', 'NC', 'ND', 'NE', 'NH', 'NJ', 'NM', 'NV', 'NY', 'OH', 'OK', 'OR', 'PA', 'RI', 'SC', 'SD', 'TN', 'TX', 'UT', 'VA', 'VT', 'WA', 'WI', 'WV', 'WY'], 'sh');


> 
> If you are interested, put in a ticket for an ALL States option that will
> create just one script with all states.
> 
> http://trac.osgeo.org/postgis/
> 
> Put it under the component tiger_geocoder
> 
> And it will be assigned to me.

Will do. I have to say, great work on all of this. It's very impressive. The [small] bug I encountered was from the generated loader script, around line 18:

	${PSQL} -c "DROP SCHEMA tiger_staging CASCADE;"

This returns an error from Postgresql (owing to "set -e -u") since when the script first runs there is no tiger_staging. Because the script is told to stop on any error, it will halt here (or it does for me). In spite of my usual helplessness, I got past this simply by changing it to:

	${PSQL} -c "DROP SCHEMA IF EXISTS tiger_staging CASCADE;" 

…Rene


More information about the postgis-users mailing list