]> git.openstreetmap.org Git - nominatim.git/blobdiff - utils/setup.php
Do not swallow PEAR error.
[nominatim.git] / utils / setup.php
index d7aa3bc7be97cc0ff4bf7dcc2eed6bb4f5354db8..db15aa446b640c32f9e481c7d4396fd59aaf80b6 100755 (executable)
                $iInstances = getProcessorCount();
                echo "WARNING: resetting threads to $iInstances\n";
        }
+
+       // Assume we can steal all the cache memory in the box (unless told otherwise)
+       $iCacheMemory = (isset($aCMDResult['osm2pgsql-cache'])?$aCMDResult['osm2pgsql-cache']:getCacheMemoryMB());
+       if ($iCacheMemory > getTotalMemoryMB())
+       {
+               $iCacheMemory = getCacheMemoryMB();
+               echo "WARNING: resetting cache memory to $iCacheMemory\n";
+       }
+
        if (isset($aCMDResult['osm-file']) && !isset($aCMDResult['osmosis-init-date']))
        {
                $sBaseFile = basename($aCMDResult['osm-file']);
@@ -83,7 +92,7 @@
 
                $oDB =& getDB();
                passthru('createlang plpgsql '.$aDSNInfo['database']);
-        $pgver = (float) CONST_Postgresql_Version;
+               $pgver = (float) CONST_Postgresql_Version;
                if ($pgver < 9.1) {
                        pgsqlRunScriptFile(CONST_Path_Postgresql_Contrib.'/hstore.sql');
                } else {
                $osm2pgsql = CONST_Osm2pgsql_Binary;
                if (!file_exists($osm2pgsql)) fail("please download and build osm2pgsql");
                $osm2pgsql .= ' -lsc -O gazetteer --hstore';
-               if (isset($aCMDResult['osm2pgsql-cache']))
-               {
-                       $osm2pgsql .= ' -C '.$aCMDResult['osm2pgsql-cache'];
-               }
-               else
-               {
-                       $osm2pgsql .= ' -C 15000';
-               }
+               $osm2pgsql .= ' -C '.$iCacheMemory;
                $osm2pgsql .= ' -d '.$aDSNInfo['database'].' '.$aCMDResult['osm-file'];
                passthru($osm2pgsql);
 
                $oDB =& getDB();
                $x = $oDB->getRow('select * from place limit 1');
-               if (!$x || PEAR::isError($x)) fail('No Data');
+               if (PEAR::isError($x)) {
+                       fail($x->getMessage());
+               }
+               if (!$x) fail('No Data');
        }
 
        if ($aCMDResult['create-functions'] || $aCMDResult['all'])