renew schema and tests for new dtabases
This commit is contained in:
+17
-1
@@ -29,11 +29,27 @@ Breiten- und Längengrad müssen gemeinsam angegeben werden oder beide leer blei
|
||||
Stationen haben eigene Felder unter „Ort ergänzen“.
|
||||
|
||||
Die Serverdatenbank erlaubt `NULL` in `pois.lat` und `pois.lon`.
|
||||
`route_points` enthält ausschließlich gültige Koordinaten. Die Änderung ist in
|
||||
Die Tabelle `route_points` entfällt. Routenpunkte, Start und Mittelpunkt,
|
||||
Weglänge, Höhengewinn und Punktzahl werden aus der gespeicherten GPX-Datei
|
||||
gelesen beziehungsweise berechnet. Die Änderung ist in
|
||||
`database/schema.sql` enthalten; eine bestehende Datenbank bekommt sie nicht
|
||||
allein durch das Kopieren des Codes. Das Projekt verwendet beim Deployment
|
||||
die vereinbarte Neuerstellung der Datenbank, keine automatische Migration.
|
||||
|
||||
SQLite enthält weiterhin Verwaltungseinträge, Freigaben sowie Stations- und
|
||||
Medienangaben. Von den berechneten Routenwerten bleiben dort ausschließlich
|
||||
`min_lat`, `min_lon`, `max_lat` und `max_lon` als Suchwerte erhalten. Die
|
||||
Näheresuche verwendet diese Grenzen zur Vorauswahl und berechnet anschließend
|
||||
den Abstand zum Start aus der GPX-Datei. Anlegen, Ersetzen, Anhängen und Änderungen
|
||||
an Stationen aktualisieren die Grenzen. Ohne Koordinaten bleiben alle vier leer.
|
||||
|
||||
Die Startprüfung erwartet dasselbe Schema einschließlich der optionalen
|
||||
Stationskoordinaten, lehnt die entfernte Tabelle und Routenspalten ab und prüft
|
||||
die Suchgrenzen gegen die GPX-Dateien. Ein zusätzlicher Test führt die Prüfung
|
||||
in einem getrennten Prozess mit einer echten temporären Datenbank und Dateien
|
||||
aus. Damit wird der Fall einer vorhandenen Datenbank auch beim normalen
|
||||
Coverage-Lauf geprüft.
|
||||
|
||||
## Normalisierung auf dem Server
|
||||
|
||||
Beim Einreichen oder Ersetzen einer GPX-Datei normalisiert der Node-Dienst den
|
||||
|
||||
Reference in New Issue
Block a user