]> git.openstreetmap.org Git - nominatim.git/commitdiff
Tested Version of new Tiger line storage format.
authorMarkus Gail <markus.gail.94@gmail.com>
Thu, 17 Mar 2016 13:21:17 +0000 (14:21 +0100)
committerMarkus Gail <markus.gail.94@gmail.com>
Mon, 21 Mar 2016 13:14:01 +0000 (14:14 +0100)
lib/Geocode.php
lib/lib.php
sql/tiger_import_start.sql
website/details.php

index ed8a4f375a054ea2712aa72cf90335891bc10ce8..340f233e548d01bce4227db067ea6d8e6190677a 100644 (file)
                                        if (isset($aResultPlaceIDs) && sizeof($aResultPlaceIDs) && ($this->iMinAddressRank != 0 || $this->iMaxAddressRank != 30))
                                        {
                                                // Need to verify passes rank limits before dropping out of the loop (yuk!)
                                        if (isset($aResultPlaceIDs) && sizeof($aResultPlaceIDs) && ($this->iMinAddressRank != 0 || $this->iMaxAddressRank != 30))
                                        {
                                                // Need to verify passes rank limits before dropping out of the loop (yuk!)
-                        // reduces the number of place id, like a filter
+                        // reduces the number of place ids, like a filter
                                                $sSQL = "select place_id from placex where place_id in (".join(',',array_keys($aResultPlaceIDs)).") ";
                                                $sSQL .= "and (placex.rank_address between $this->iMinAddressRank and $this->iMaxAddressRank ";
                                                if (14 >= $this->iMinAddressRank && 14 <= $this->iMaxAddressRank) $sSQL .= " OR (extratags->'place') = 'city'";
                                                $sSQL = "select place_id from placex where place_id in (".join(',',array_keys($aResultPlaceIDs)).") ";
                                                $sSQL .= "and (placex.rank_address between $this->iMinAddressRank and $this->iMaxAddressRank ";
                                                if (14 >= $this->iMinAddressRank && 14 <= $this->iMaxAddressRank) $sSQL .= " OR (extratags->'place') = 'city'";
index 7b1cbb8f6fcdfe6f78ddc028296486dd394a0ffc..ac99b1d24bfbb20390c0c9749833785f3431f0e6 100644 (file)
        }
 
 
        }
 
 
-       function getAddressDetails(&$oDB, $sLanguagePrefArraySQL, $iPlaceID, $sCountryCode = false, $housenumber, $bRaw = false)
+       function getAddressDetails(&$oDB, $sLanguagePrefArraySQL, $iPlaceID, $sCountryCode = false, $housenumber =-1, $bRaw = false)
        {
                $sSQL = "select *,get_name_by_language(name,$sLanguagePrefArraySQL) as localname from get_addressdata($iPlaceID, $housenumber)";
                if (!$bRaw) $sSQL .= " WHERE isaddress OR type = 'country_code'";
        {
                $sSQL = "select *,get_name_by_language(name,$sLanguagePrefArraySQL) as localname from get_addressdata($iPlaceID, $housenumber)";
                if (!$bRaw) $sSQL .= " WHERE isaddress OR type = 'country_code'";
index c3e1ed02d70f62d9ce510cab62871c08e046c8d0..f6d65ae238e954416fa2c35b39ec7d0366d20334 100644 (file)
@@ -1,5 +1,5 @@
 DROP TABLE IF EXISTS location_property_tiger_import;
 DROP TABLE IF EXISTS location_property_tiger_import;
-CREATE TABLE location_property_tiger_import (linegeo GEOMETRY, place_id BIGINT, partition INTEGER, parent_place_id BIGINT, startnumber INTEGER, endnumber INTEGER, interpolationtype TEXT, street TEXT, isin TEXT, postcode TEXT);
+CREATE TABLE location_property_tiger_import (linegeo GEOMETRY, place_id BIGINT, partition INTEGER, parent_place_id BIGINT, startnumber INTEGER, endnumber INTEGER, interpolationtype TEXT, postcode TEXT);
 
 CREATE OR REPLACE FUNCTION tiger_line_import(linegeo GEOMETRY, in_startnumber INTEGER, 
   in_endnumber INTEGER, interpolationtype TEXT, 
 
 CREATE OR REPLACE FUNCTION tiger_line_import(linegeo GEOMETRY, in_startnumber INTEGER, 
   in_endnumber INTEGER, interpolationtype TEXT, 
@@ -73,8 +73,8 @@ BEGIN
   END IF;
 
 --insert street(line) into import table
   END IF;
 
 --insert street(line) into import table
-insert into location_property_tiger_import (linegeo, place_id, partition, parent_place_id, startnumber, endnumber, interpolationtype, street, isin, postcode)
-values (linegeo, nextval('seq_place'), out_partition, out_parent_place_id, startnumber, endnumber, interpolationtype, in_street, in_isin, in_postcode);
+insert into location_property_tiger_import (linegeo, place_id, partition, parent_place_id, startnumber, endnumber, interpolationtype, postcode)
+values (linegeo, nextval('seq_place'), out_partition, out_parent_place_id, startnumber, endnumber, interpolationtype, in_postcode);
 
   RETURN 1;
 END;
 
   RETURN 1;
 END;
index 4974717a4b5977452f259af1db586edbc90fdbe1..5b269fc0755ce395a7259fcb98610ad60d2baf34 100755 (executable)
@@ -10,7 +10,7 @@
           $fLoadAvg = getLoadAverage();
           if ($fLoadAvg > 3)
           {
           $fLoadAvg = getLoadAverage();
           if ($fLoadAvg > 3)
           {
-          echo "Page temporarily blocked due to high server load\n";
+          echo "Page temporarily blocked due to high server load\n";F
           exit;
           }
         */
           exit;
           }
         */
        }
 
        // Address
        }
 
        // Address
-       $aAddressLines = getAddressDetails($oDB, $sLanguagePrefArraySQL, $iPlaceID, $aPointDetails['country_code'], true);
+       $aAddressLines = getAddressDetails($oDB, $sLanguagePrefArraySQL, $iPlaceID, $aPointDetails['country_code'], -1, true);
 
        // Linked places
        $sSQL = "select placex.place_id, osm_type, osm_id, class, type, housenumber, admin_level, rank_address, ST_GeometryType(geometry) in ('ST_Polygon','ST_MultiPolygon') as isarea, ST_Distance_Spheroid(geometry, placegeometry, 'SPHEROID[\"WGS 84\",6378137,298.257223563, AUTHORITY[\"EPSG\",\"7030\"]]') as distance, ";
 
        // Linked places
        $sSQL = "select placex.place_id, osm_type, osm_id, class, type, housenumber, admin_level, rank_address, ST_GeometryType(geometry) in ('ST_Polygon','ST_MultiPolygon') as isarea, ST_Distance_Spheroid(geometry, placegeometry, 'SPHEROID[\"WGS 84\",6378137,298.257223563, AUTHORITY[\"EPSG\",\"7030\"]]') as distance, ";