]> granicus.if.org Git - postgis/commitdiff
Include 'geography_columns' defn when upgrading from <= 1.4 (#414)
authorPaul Ramsey <pramsey@cleverelephant.ca>
Tue, 9 Mar 2010 00:31:26 +0000 (00:31 +0000)
committerPaul Ramsey <pramsey@cleverelephant.ca>
Tue, 9 Mar 2010 00:31:26 +0000 (00:31 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@5387 b70326c6-7e19-0410-871a-916f4a2858ee

utils/postgis_proc_upgrade.pl

index 7d3311588580ecc9ba60a2d245ce512b2985ac04..aaa998dc0b8c65f3d98011d2c2cb9812cc9e56f7 100755 (executable)
@@ -45,6 +45,9 @@ my $objs = {
                        "gist_geography_ops" => 1,
                        "btree_geography_ops" => 1
                },
+               "views" => {
+                       "geography_columns" => 1
+               },
                "types" => {
                        "geography" => 1,
                        "gidx" => 1
@@ -159,7 +162,6 @@ while(<INPUT>)
                }
        }
 
-
        if ( /^create type (\w+)/i )
        {
                my $newtype = $1;
@@ -232,6 +234,28 @@ while(<INPUT>)
                }
        }
 
+       # This code handles view by creating them if we are doing a major upgrade
+       if ( /^create or replace view\s+(\S+)\s*/i )
+       {
+               my $viewname = $1;
+               my $def = $_;
+               while(<INPUT>)
+               {
+                       $def .= $_;
+                       last if /\;\s*$/;
+               }
+               my $ver = $version_from_num + 1;
+               while( $version_from_num < $version_to_num && $ver <= $version_to_num )
+               {
+                       if( $objs->{$ver}->{"views"}->{$viewname} )
+                       {
+                               print $def;
+                               last;
+                       }
+                       $ver++;
+               }
+       }
+
        # This code handles operator classes by creating them if we are doing a major upgrade
        if ( /^create operator class\s+(\w+)\s*/i )
        {