[FOSSGIS-Talk] Mapserver mit Tileindex und Filter-Expression, geht das überhaupt
Frederik Ramm
frederik at remote.org
Mo Aug 9 11:55:50 CEST 2021
Hallo,
bevor ich hier weiter nach einem Fehler suche, vielleicht kann mir
jemand kurz bestätigen, dass es überhaupt ein Fehler ist und kein Feature ;)
Also, ich habe ein Mapserver-Mapfile mit einem TILEINDEX, dieser
verweist auf ein mit ogrtindex erstelltes Shapefile, das wiederum auf
zwei SQLite-Files verweist (eines der SQLite-Files deckt Eurasien ab,
das andere den Rest der Welt, die Bboxen überlappen sich also leicht).
Ich erhalte allerdings bei Verwendung von FILTER stets die Meldung, dass
das Feld, dass ich für den Filter-Ausdruck verwende, nicht verfügbar sei:
[Mon Aug 9 09:55:05 2021].406270 msOGRFileWhichShapes(): OGR error.
SetAttributeFilter() failed on layer node_tags_with_whitespace. Check logs.
[Mon Aug 9 09:55:05 2021].406280 SetAttributeFilter((CAST("error" AS
CHARACTER(4096)) = 'contains_whitespace')) failed on layer
node_tags_with_whitespace.
"error" not recognised as an available field.
Meine Frage ist jetzt: Müsste das grundsätzlich gehen - TILEINDEX
zusammen mit FILTER? Oder ist das "eh klar", dass es nicht geht?
Meine beiden SQLite-Files haben den exakt gleichen Aufbau, und das Setup
geht auch an Stellen, an denen ich kein FILTER verwende, nur die Layer
mit FILTER gehen nicht.
Unten noch ein Ausschnitt aus meinem Mapfile und ein paar Debug-Infos zu
den Datenquellen, aber das scheint mir alles sauber zu sein.
Bye
Frederik
LAYER
NAME "node_tags_with_whitespace"
TYPE POINT
CONNECTIONTYPE OGR
TILEINDEX
"/srv/osmi-front/var/tindex/tagging_misspelled_node_keys.shp"
TILEITEM "LOCATION"
FILTER ("[error]" == "contains_whitespace")
CLASS
NAME "misspelled_node_keys"
TEXT ('key contains whitespace|' + '[key]')
STYLE
SYMBOL "triangle"
SIZE 10
COLOR 150 50 200
END
...
$ dbfdump /srv/osmi-front/var/tindex/tagging_misspelled_node_keys.shp
LOCATION
/nvme/tindex/../tagging/eurasia-tagging.sqlite,6
/nvme/tindex/../tagging/non-eurasia-tagging.sqlite,6
$ ogrinfo /nvme/tindex/../tagging/eurasia-tagging.sqlite
INFO: Open of `/nvme/tindex/../tagging/eurasia-tagging.sqlite'
using driver `SQLite' successful.
1: tagging_fixmes_on_nodes (Point)
2: tagging_fixmes_on_ways (Line String)
3: tagging_nodes_with_empty_k (Point)
4: tagging_ways_with_empty_k (Line String)
5: tagging_nodes_with_empty_v (Point)
6: tagging_ways_with_empty_v (Line String)
7: tagging_misspelled_node_keys (Point)
...
$ ogrinfo -so /nvme/tindex/../tagging/eurasia-tagging.sqlite
tagging_misspelled_node_keys
INFO: Open of `/nvme/tindex/../tagging/eurasia-tagging.sqlite'
using driver `SQLite' successful.
Layer name: tagging_misspelled_node_keys
Geometry: Point
Feature Count: 55452
Extent: (-2498759.750000, -1116987.375000) - (18867552.000000,
11396281.000000)
Layer SRS WKT:
...
FID Column = ogc_fid
Geometry Column = GEOMETRY
node_id: String (0.0)
key: String (0.0)
error: String (0.0)
otherkey: String (0.0)
lastchange: String (0.0)
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00'09" E008°23'33"
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste