]> git.openstreetmap.org Git - nominatim.git/commit
disable prepared statements
authorSarah Hoffmann <lonvia@denofr.de>
Tue, 28 Mar 2023 12:53:45 +0000 (14:53 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Tue, 28 Mar 2023 12:53:45 +0000 (14:53 +0200)
commit36d068871da6921f6f2a7cd81df393f4fa3661a9
tree9e7aea2e78969b8246c349084ac1e4e0bdde9b26
parent6c67a4b500cf08b3cfce96e74b2658deb4696c05
disable prepared statements

Prepared statements do not work well with the partial indexes that
Nominatim uses because all Python constants are replaced with
parameters. A query like:

  placex.select().where(placex.c.rank_address.between(4, 25)

gets translated into a prepared query with two parameters:

  SELECT * FROM placex WHERE rank_address BETWEEN %s and %s

And this does not work with a partial index of:

  CREATE INDEX on placex(geometry) WHERE rank_address between 4 and 25
nominatim/api/core.py