X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/1edcd7208b6c95b360e763633042388c07814d39..fe3eb40e3a8c6721fc2438d6b9484753ac79753a:/nominatim/index.c?ds=sidebyside diff --git a/nominatim/index.c b/nominatim/index.c index 3f161cc3..13f29273 100644 --- a/nominatim/index.c +++ b/nominatim/index.c @@ -145,7 +145,7 @@ void nominatim_index(int rank_min, int rank_max, int num_threads, const char *co writer = nominatim_exportXMLStart(structuredoutputfile); } - fprintf(stderr, "Starting indexing rank (%i to %i) using %i treads\n", rank_min, rank_max, num_threads); + fprintf(stderr, "Starting indexing rank (%i to %i) using %i threads\n", rank_min, rank_max, num_threads); for (rank = rank_min; rank <= rank_max; rank++) { @@ -270,7 +270,7 @@ void nominatim_index(int rank_min, int rank_max, int num_threads, const char *co usleep(1000); // Aim for one update per second - if (sleepcount++ > 2000) + if (sleepcount++ > 500) { rankPerSecond = ((float)rankCountTuples + (float)count) / MAX(difftime(time(0), rankStartTime),1); fprintf(stderr, " Done %i in %i @ %f per second - Rank %i ETA (seconds): %f\n", (rankCountTuples + count), (int)(difftime(time(0), rankStartTime)), rankPerSecond, rank, ((float)(rankTotalTuples - (rankCountTuples + count)))/rankPerSecond); @@ -308,6 +308,13 @@ void nominatim_index(int rank_min, int rank_max, int num_threads, const char *co { nominatim_exportXMLEnd(writer); } + + // Close all connections + for (i = 0; i < num_threads; i++) + { + PQfinish(thread_data[i].conn); + } + PQfinish(conn); } void *nominatim_indexThread(void * thread_data_in) @@ -369,8 +376,7 @@ void *nominatim_indexThread(void * thread_data_in) { fprintf(stderr, "index_placex: UPDATE failed: %s", PQerrorMessage(thread_data->conn)); PQclear(res); - sleep(rand() % 10); -// exit(EXIT_FAILURE); + exit(EXIT_FAILURE); } } }