]>
git.openstreetmap.org Git - nominatim.git/log
Sarah Hoffmann [Sun, 13 Aug 2023 13:24:16 +0000 (15:24 +0200)]
prefer name-only searches more
Sarah Hoffmann [Sun, 13 Aug 2023 12:37:28 +0000 (14:37 +0200)]
return bbox of full country for country searches
Fixes #3149.
Sarah Hoffmann [Sun, 13 Aug 2023 09:59:01 +0000 (11:59 +0200)]
fix application of label to wrong expression
Sarah Hoffmann [Sun, 13 Aug 2023 09:40:49 +0000 (11:40 +0200)]
avoid lambda SQL in connection with alias tables
Sarah Hoffmann [Sat, 12 Aug 2023 17:14:13 +0000 (19:14 +0200)]
use coalsce() instead of indexless postgis functions
ST_Intersects is deemed too expensive by the query planer which
leads to odd plans when index use is avoided.
Sarah Hoffmann [Sat, 12 Aug 2023 14:12:44 +0000 (16:12 +0200)]
do not use index when searching in large areas
This concerns viewboxes as well as radius search.
Sarah Hoffmann [Sat, 12 Aug 2023 14:12:31 +0000 (16:12 +0200)]
adapt tests to changes in search
Sarah Hoffmann [Sat, 12 Aug 2023 13:33:50 +0000 (15:33 +0200)]
take token_assignment penalty into account
Also computes the expected count differently when addresses are
involved. Address token counts do not bare a direct relation to
real counts.
Sarah Hoffmann [Sat, 12 Aug 2023 09:27:55 +0000 (11:27 +0200)]
fix debug output for NearSearch
The search info is in a subsearch and was therefore not taken into
account.
Sarah Hoffmann [Sat, 12 Aug 2023 09:26:02 +0000 (11:26 +0200)]
improve penalty for token-split words
The rematch penalty for partial words created by the transliteration
need to take into account that they are rematched against the full word.
That means that missing beginning and end should not get a significant
penalty.
Sarah Hoffmann [Tue, 8 Aug 2023 17:42:55 +0000 (19:42 +0200)]
fix lookup polygon output
Fixes #3147.
Sarah Hoffmann [Tue, 8 Aug 2023 15:34:32 +0000 (17:34 +0200)]
Merge pull request #3146 from lonvia/forbid-mixed-queries
Do not allow to mix structured and unstructured search
Sarah Hoffmann [Tue, 8 Aug 2023 13:54:55 +0000 (15:54 +0200)]
return an error when q is used together with structured parameters
Sarah Hoffmann [Sun, 6 Aug 2023 17:20:10 +0000 (19:20 +0200)]
remove lookup by address only
There are too many lookups where the address is very frequent,
even when many address parts are present.
Sarah Hoffmann [Sun, 6 Aug 2023 15:47:47 +0000 (17:47 +0200)]
allow oversized viewboxes again
This seems to be a rather regular thing when unconditionally sending
the current view and being zoomed out.
Fixes #3137.
Sarah Hoffmann [Sun, 6 Aug 2023 15:20:16 +0000 (17:20 +0200)]
provide full URL in more field
This is a regression against the PHP version.
Fixes #3138.
Sarah Hoffmann [Wed, 2 Aug 2023 10:34:07 +0000 (12:34 +0200)]
remove SQL lambdas with IN expressions
The values of IN expressions are incorrectly cached.
Sarah Hoffmann [Tue, 1 Aug 2023 13:29:00 +0000 (15:29 +0200)]
only print non-empty search tables
Sarah Hoffmann [Mon, 31 Jul 2023 12:27:39 +0000 (14:27 +0200)]
do not lookup by address vector when only few tokens are available
Names of countries and states are exceedingly rare in the word count
but are very frequent in the address. A short name has the danger
of producing too many results.
Sarah Hoffmann [Tue, 1 Aug 2023 10:21:11 +0000 (12:21 +0200)]
fix regression with lat/lon in json output
lat, lon is returned as strings in the PHP output. Reproduce that in the
Python frontend.
See #3115.
Sarah Hoffmann [Tue, 1 Aug 2023 09:12:36 +0000 (11:12 +0200)]
allow OPTIONS method in starlette CORS middleware
If not allowed, then the middleware will return a 400 on pre-flight
CORS requests.
Fixes #3129.
Sarah Hoffmann [Tue, 1 Aug 2023 08:38:58 +0000 (10:38 +0200)]
Merge pull request #3122 from miku0/sanitizer-final
Adds sanitizer for Japanese addresses to correspond to block address
miku0 [Mon, 31 Jul 2023 11:57:49 +0000 (11:57 +0000)]
Moved KANJI_MAP to icu-rules
Sarah Hoffmann [Mon, 31 Jul 2023 08:20:58 +0000 (10:20 +0200)]
Merge pull request #3128 from lonvia/fix-classtype-lookup
Fix query over classtype tables
miku0 [Mon, 31 Jul 2023 02:39:56 +0000 (02:39 +0000)]
Add the test of reconbine_place
miku0 [Mon, 31 Jul 2023 02:39:04 +0000 (02:39 +0000)]
Fixed cosmetic issues
Sarah Hoffmann [Sun, 30 Jul 2023 21:51:36 +0000 (23:51 +0200)]
fix query over classtype tables
The case statement prevented the index on the classtype tables
from being used. Move the case statement inside the geometry
function instead.
Sarah Hoffmann [Sun, 30 Jul 2023 19:22:48 +0000 (21:22 +0200)]
Merge pull request #3127 from lonvia/file-logging
Add file logging for Python frontend
Sarah Hoffmann [Sun, 30 Jul 2023 17:58:00 +0000 (19:58 +0200)]
reintroduce file logging for Python frontend
miku0 [Thu, 27 Jul 2023 07:33:53 +0000 (07:33 +0000)]
add @fail-legacy
miku0 [Wed, 26 Jul 2023 21:43:22 +0000 (21:43 +0000)]
Moved KANJI_MAP to global variable
Sarah Hoffmann [Wed, 26 Jul 2023 20:37:37 +0000 (22:37 +0200)]
Merge pull request #3125 from lonvia/warm-to-python
Port warm and export functions to Python
Sarah Hoffmann [Wed, 26 Jul 2023 15:45:21 +0000 (17:45 +0200)]
older version of Postgres cannot convert jsonb to int
Sarah Hoffmann [Wed, 26 Jul 2023 13:17:18 +0000 (15:17 +0200)]
older Python versions need a reference to the loop for a lock
miku0 [Wed, 26 Jul 2023 09:50:25 +0000 (09:50 +0000)]
Correction to PR's comment
Sarah Hoffmann [Wed, 26 Jul 2023 09:09:52 +0000 (11:09 +0200)]
add tests for new arm and export Python functions
miku0 [Wed, 26 Jul 2023 07:54:58 +0000 (07:54 +0000)]
add japanese sanitizer
Sarah Hoffmann [Tue, 25 Jul 2023 22:10:11 +0000 (00:10 +0200)]
mostly remove php-cgi requirement
This is now only needed for BDD tests against the php API.
Sarah Hoffmann [Tue, 25 Jul 2023 20:45:29 +0000 (22:45 +0200)]
remove now unused run_api_script function
Sarah Hoffmann [Thu, 20 Jul 2023 10:14:19 +0000 (12:14 +0200)]
remove now unused run_legacy_script()
Sarah Hoffmann [Mon, 17 Jul 2023 20:37:07 +0000 (22:37 +0200)]
port export function to Python
Some of the parameters have been renoved as they don't make sense
anymore.
Sarah Hoffmann [Sun, 16 Jul 2023 18:12:53 +0000 (20:12 +0200)]
move warm script to python code
Sarah Hoffmann [Tue, 25 Jul 2023 18:56:38 +0000 (20:56 +0200)]
Merge pull request #3121 from lonvia/port-remaining-api-calls
Port remaining API endpoints to Python
Sarah Hoffmann [Tue, 25 Jul 2023 08:57:19 +0000 (10:57 +0200)]
add tests for new endpoints
Sarah Hoffmann [Sat, 22 Jul 2023 18:59:13 +0000 (20:59 +0200)]
add /polygons endpoint to Python v1 API
Sarah Hoffmann [Sat, 22 Jul 2023 15:21:24 +0000 (17:21 +0200)]
add deletable endpoint
Sarah Hoffmann [Sat, 22 Jul 2023 11:54:23 +0000 (13:54 +0200)]
remove debug print
Sarah Hoffmann [Sat, 22 Jul 2023 09:45:36 +0000 (11:45 +0200)]
Merge pull request #3117 from lonvia/fix-assorted-search-errors
More improvements to the Python search algorithm
Sarah Hoffmann [Thu, 20 Jul 2023 16:05:54 +0000 (18:05 +0200)]
disallow special housenumber search with a single frequent partial
Sarah Hoffmann [Mon, 17 Jul 2023 14:25:39 +0000 (16:25 +0200)]
do not split names from typed phrases
When phrases are typed, they should only contain exactly one term.
Sarah Hoffmann [Mon, 17 Jul 2023 13:17:54 +0000 (15:17 +0200)]
split up get_assignment functon in more readable parts
Sarah Hoffmann [Mon, 17 Jul 2023 09:45:35 +0000 (11:45 +0200)]
disallow address searches that start with a postcode
These are postcode searches and nothing else.
Sarah Hoffmann [Sat, 15 Jul 2023 14:31:39 +0000 (16:31 +0200)]
block search queries with too many tokens
Sarah Hoffmann [Sat, 15 Jul 2023 09:41:31 +0000 (11:41 +0200)]
simplify yield_lookups() function
Move creation of field lookups in separate functions to make the code
more readable.
Sarah Hoffmann [Sat, 15 Jul 2023 08:55:34 +0000 (10:55 +0200)]
penalize name token splitting when phrases are used
Sarah Hoffmann [Fri, 14 Jul 2023 19:55:07 +0000 (21:55 +0200)]
penalize search with frequent partials
Avoid search against frequent partials if we have already looked for
the full name equivalents.
Sarah Hoffmann [Fri, 14 Jul 2023 19:05:13 +0000 (21:05 +0200)]
avoid splitting of first token when a housenumber is present
This only covers the case of <poi name> <street name> <housenumber>
which is exceedingly rare.
Sarah Hoffmann [Fri, 14 Jul 2023 19:03:42 +0000 (21:03 +0200)]
increase threshold for full name searches
They still should be preferrred over expensive partial name searches.
Sarah Hoffmann [Thu, 13 Jul 2023 14:43:56 +0000 (16:43 +0200)]
fix search for housenumber names
The search still included a lookup of housenumbers in children which is
wrong.
Sarah Hoffmann [Mon, 17 Jul 2023 12:20:14 +0000 (14:20 +0200)]
Merge pull request #3112 from jenkin/fix-polgyon-polygon-typo
fix polgyon polygon typo
Alessio Cimarelli [Mon, 17 Jul 2023 08:11:57 +0000 (10:11 +0200)]
fix polgyon polygon typo
Sarah Hoffmann [Fri, 14 Jul 2023 16:57:31 +0000 (18:57 +0200)]
Merge pull request #3110 from lonvia/sql-lambda-queries
Use SQLAlchemy's lambda statements
Sarah Hoffmann [Wed, 12 Jul 2023 19:16:46 +0000 (21:16 +0200)]
selected lambdas for search
Sarah Hoffmann [Wed, 12 Jul 2023 12:33:29 +0000 (14:33 +0200)]
add lambdas for layer filters
Sarah Hoffmann [Wed, 12 Jul 2023 12:04:30 +0000 (14:04 +0200)]
avoid forwarding variables via SQL
Sarah Hoffmann [Wed, 12 Jul 2023 09:46:07 +0000 (11:46 +0200)]
make SQL statements in reverse lambda functions
Further improves internal caching of statements by SQLAlchemy.
Sarah Hoffmann [Wed, 12 Jul 2023 15:45:55 +0000 (17:45 +0200)]
Merge pull request #3096 from alfmarcua/search-within-countries-parameter
Parameterise the search only within countries
alfmarcua [Thu, 6 Jul 2023 06:52:12 +0000 (08:52 +0200)]
Split lookupInCountry in two functions and document NOMINATIM_SEARCH_WITHIN_COUNTRIES parameter
alfmarcua [Thu, 6 Jul 2023 06:52:41 +0000 (08:52 +0200)]
Parameterise the search only within countries
Sarah Hoffmann [Mon, 10 Jul 2023 09:45:29 +0000 (11:45 +0200)]
Merge pull request #3109 from lonvia/prepared-statements
Make prepared statements work with Python API
Sarah Hoffmann [Sat, 8 Jul 2023 19:47:07 +0000 (21:47 +0200)]
avoid index-use on rank parameters for reverse lookups
Sarah Hoffmann [Sat, 8 Jul 2023 17:38:54 +0000 (19:38 +0200)]
force a fixed pool size and make it configurable
Sarah Hoffmann [Sat, 8 Jul 2023 14:28:51 +0000 (16:28 +0200)]
use constant expressions to select partial indexes in reverse
When expressions are generated with SQLAlchemy, any constants are
replaced with bind parameters. The bind parameters become parameters of
prepared statements. The result is that the query planner tends to
oversee that the partial indexes can be used.
Sarah Hoffmann [Sat, 8 Jul 2023 13:59:15 +0000 (15:59 +0200)]
remove disabling of prepared statements
Fixes for query planning with prepared statements to follow in
subsequent commits.
Sarah Hoffmann [Sat, 8 Jul 2023 13:53:42 +0000 (15:53 +0200)]
Merge pull request #3107 from lonvia/performance-search
Assorted fixes to Python search code
Sarah Hoffmann [Thu, 6 Jul 2023 12:15:51 +0000 (14:15 +0200)]
increase minimum required SQLAlchemy version to 1.4.31
Sarah Hoffmann [Thu, 6 Jul 2023 08:54:56 +0000 (10:54 +0200)]
make get_addressdata calls cachable
VALUEs() is not a cachable construct in SQLAlchemy, so use arrays
instead. Also add a special case for single results, the usual result
for reverse queries.
Sarah Hoffmann [Thu, 6 Jul 2023 07:29:20 +0000 (09:29 +0200)]
add support for postcompile literals in debug output
Sarah Hoffmann [Tue, 4 Jul 2023 14:08:18 +0000 (16:08 +0200)]
fix SRID handling in Geometry type
Sarah Hoffmann [Wed, 5 Jul 2023 12:07:11 +0000 (14:07 +0200)]
avoid lookup via partials on frequent words
Drops expensive searches via partials on terms like 'rue de'.
See #2979.
Sarah Hoffmann [Tue, 4 Jul 2023 14:54:42 +0000 (16:54 +0200)]
add a small penalty to lookups in address vectors
Sarah Hoffmann [Mon, 3 Jul 2023 09:03:26 +0000 (11:03 +0200)]
Merge pull request #3101 from lonvia/custom-geometry-type
Improve use of SQLAlchemy statement cache with search queries
Sarah Hoffmann [Sun, 2 Jul 2023 21:05:15 +0000 (23:05 +0200)]
make types compatible with older Python versions
Sarah Hoffmann [Sat, 1 Jul 2023 16:16:23 +0000 (18:16 +0200)]
remove GeoAlchemy as dependency
Sarah Hoffmann [Sat, 1 Jul 2023 16:13:30 +0000 (18:13 +0200)]
always run function update on migrations
This means that we can have migrations which require nothing but
an update of the functions.
Sarah Hoffmann [Sat, 1 Jul 2023 16:02:46 +0000 (18:02 +0200)]
fix linting issues
Sarah Hoffmann [Fri, 30 Jun 2023 12:41:01 +0000 (14:41 +0200)]
replace regexp_match with generic op() functions
Works around a bug in SQLAlchemy where regexp_match creates an
unstable cache key.
Sarah Hoffmann [Wed, 28 Jun 2023 12:27:35 +0000 (14:27 +0200)]
replace CASE construct with plpgsql function
Sarah Hoffmann [Mon, 26 Jun 2023 19:37:17 +0000 (21:37 +0200)]
band-aid for SQLAlchemy 1.4
Sarah Hoffmann [Mon, 26 Jun 2023 13:56:10 +0000 (15:56 +0200)]
move search to bind parameters
Sarah Hoffmann [Sun, 25 Jun 2023 12:02:00 +0000 (14:02 +0200)]
switch reverse() to new Geometry datatype
Also switches to using bind parameters for recurring parameters.
Sarah Hoffmann [Sun, 25 Jun 2023 07:38:44 +0000 (09:38 +0200)]
introduce slim Geometry database type
Sarah Hoffmann [Sat, 1 Jul 2023 13:36:56 +0000 (15:36 +0200)]
Merge pull request #3100 from lonvia/fix-name-merging-in-unnamed-boundaries
Fix merging of linked names into unnamed boundaries
Sarah Hoffmann [Fri, 30 Jun 2023 20:14:11 +0000 (22:14 +0200)]
fix merging of linked names into unnamed boundaries
The NULL value of the boundaries' name field was erasing all
content when used in SQL operations.
Sarah Hoffmann [Fri, 30 Jun 2023 19:47:57 +0000 (21:47 +0200)]
Merge pull request #3099 from lonvia/determine-place-address-from-tokenizer
Use information from tokenizer to determine street vs. place address
Sarah Hoffmann [Fri, 30 Jun 2023 13:28:00 +0000 (15:28 +0200)]
also switch legacy tokenizer to new street/place choice behaviour
Sarah Hoffmann [Thu, 29 Jun 2023 20:02:55 +0000 (22:02 +0200)]
fix optional string representation or repr(PlaceName)
Sarah Hoffmann [Fri, 30 Jun 2023 09:08:25 +0000 (11:08 +0200)]
use information from tokenizer to determine street vs. place address
So far the SQL logic used the information from the address field
to determine if an address is attached to a street or place.
This changes the logic to use the information provided in the
token_info. This allows sanitizers to enforce a certain parenting
without changing the visible address information.
Sarah Hoffmann [Thu, 22 Jun 2023 20:28:31 +0000 (22:28 +0200)]
Merge pull request #3094 from lonvia/fix-failing-bdd-tests
Add BDD tests against Python frontend to CI
Sarah Hoffmann [Thu, 22 Jun 2023 18:11:30 +0000 (20:11 +0200)]
Merge pull request #3090 from mtmail/check-database-on-frozen-database
check-database on frozen db shouldnt recommend indexing