kartverket / NGIS-OpenAPI

Tjenestebasert grensesnitt mot NGIS, basert på OpenAPI og REST.
3 stars 9 forks source link

Overlappende flater kan forekomme for AR5 i prod #95

Closed larsop closed 1 year ago

larsop commented 1 year ago

Disse 2 flatene


{ "lokalId": "d1a6fbf0-3355-11ed-9ca1-63972cf77699", "navnerom": "http:\/\/data.geonorge.no\/SFKB\/FKB-AR5\/so", "versjonId": "2022-09-13 13:18:51.703000000" }

{ "lokalId": "ee84d99b-daa7-45ed-bca1-c84720412bd4", "navnerom": "http:\/\/data.geonorge.no\/SFKB\/FKB-AR5\/so", "versjonId": "2022-09-13 13:20:10.350000000" }

overlapp_ar5_ngis_qms

i vedlagt JSON overlapper i JSON som vi fikk fra prod "Sep 13 13:20:29 2022" via NGIS-OpenAPI.

ar5_pg_OK_USER_REQUEST_1902D3AD34573EBEEC9B5188E78B85BB_67a81735-c1de-4bcb-9c88-830304152836_dataset_baf98b70-29ee-469a-9667-59c2540ddbc2__UTF-8_1663068029675.json.gz

Har ikke sett på hvorfor det oppstod her, men sist gang januar 2022 var det knyttet til at vi fikk gamle data etter en oppdatering via NGIS-OpenAPI.

Problemmet forekommer ihverfall i QMS 12.1.4 , venter på tilbakemelding på det om er fikset 12.1.5.

larsop commented 1 year ago

I fix må her klienten må få en beskjed når oppdatering lagres via NGIS-OpenAPI om at input data er ugyldige og helst med feil melding om at dette vil føre til overlapp mellom de 2 gitte flatene.

rosand commented 1 year ago

Ved uthenting med NGIS-API er det ikke feil i data her, data i basen er riktig. (Det kommer ut med en yttre flate med hull, og en annen flate inni hullet. I json-filen er det ikke hull i den ytre flaten. Skjermbilde 2022-09-14 145544

larsop commented 1 year ago

Ja det er riktig nå, men det ble rettet opp av Jørn via Gisline i går slik at man kan jobbe videre i ar5web og at det blir riktig i Kilden og Gårdskart.

larseggan commented 1 year ago

Vær oppmerksom på at det med overlappende flater er datasett-spesifikt. F.eks. tillater FKB-Bygning overlappende flater, mens AR5 ikke tillater det. Dette er kanskje et klient-ansvar? Men enig med @larsop at NGIS OpenAPI må gi gode feilmeldinger tilbake. Jeg ønsker våde melding, lokalid og objekttype.

larsop commented 1 year ago

Sist gang jeg sjekket dette i Januar så oppstod det overlapp på serveren siden når dataene fra klienten ble overført så da hadde ikke en test på klienten siden hjulpet for der var det ikke overlap, så jeg tror denne type tester må legge på server siden.

meastp commented 1 year ago

Problemmet forekommer ihverfall i QMS 12.1.4 , venter på tilbakemelding på det om er fikset 12.1.5.

Rettingen kom inn i QMS 12.1.3 , men (denne nye, endrede) prosedyren må legges inn i aktuelle AR5-arkiver av KV manuelt. Jeg sendte også scriptet vedlagt i epost i januar, så det skulle være mulig å rette allerede da.

Er det gjort? Viktig for å avdekke om feilen er ny med ny prosedyre eller ikke.

Det kan også hende at dataene allerede var feil før oppdatert prosedyre ble innført (hvis den er lagt inn). Jeg fikk heller aldri noe svar på om eksisterende data skulle rettes opp. (Det er i så fall en separat oppgave).

larsop commented 1 year ago

For meg ser det ut som om endringen ble gjort "13/09/2022 13:18:51 (CEST)" basert på oppdateringsdato . Den nye linjen har også datafangstdato 13/09/2022.

larsop commented 1 year ago

Da er det bekreftet at QMS koden som tester for denne type feil ikke var lagt inn verken på test eller prod.

Koden ble lagt ut på test sist fredag og vi bruker denne uken til testing.

larsop commented 1 year ago

Vær oppmerksom på at det med overlappende flater er datasett-spesifikt. F.eks. tillater FKB-Bygning overlappende flater, mens AR5 ikke tillater det. Dette er kanskje et klient-ansvar? Men enig med @larsop at NGIS OpenAPI må gi gode feilmeldinger tilbake. Jeg ønsker våde melding, lokalid og objekttype.

Her eksempel på melding fra test ar5.

"ngisError": "{\"detail\":\"Commit feilet\",\"errors\":[{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 00af2241-ffc3-4af0-9306-1d3c2c4ac903)\"},{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 30b7a90a-8723-47f7-9d67-8fbc0ea567fe)\"},{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 9aa1a731-b806-4e5b-974e-2ff79409286e)\"},{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 152e9f84-38b7-11ed-8b59-2f3bb27b6491)\"},{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 152fd872-38b7-11ed-8b5a-eb353db68e43)\"},{\"reason\":\"Linjen følger ikke reglene for heldekkende flater i AR5. (LOKALID: 1530a338-38b7-11ed-8b5b-57e847f37973)\"}],\"title\":\"Commit feilet\",\"type\":\"http://ngisopenapi.no/errors/commit_error\"}"

Når jeg sendte over denne pakken ar5_upadteDatasetFeatures_FAIL_UTF-81663659639994.json.gz .

Her var også ting OK på klienten isolert sett, men feilen oppstod fordi Postgis Topology basen og QMS basen var i en forskjellige state grunnet en feil.

I feilmelding ser vi ref til objekter som ikke er med pakken og som kanskje ikke finnes i klient databasen så det vanskelig å forstå hva er feilen er sett fra klient siden.

Når vi for denne type feil så bare henter vi alt nytt fra QMS for det ormådet brukeren har låst og erstarter det vi har i basen vår.

larsop commented 1 year ago

Fiksen for å hindre denne type feil er nå lagt i prod av Kartverket for AR5, men det er ikke laget kode for rydde i databasen ennå.

larsop commented 1 year ago

Lukker denne nå, når det gjelder å rydde basen er planen å gjøre det med fyssak seinere, hvis ikke for mange får problemmer.

larsop commented 1 year ago

Slik planen er nå blir ikke dette ryddet opp i qms basen med overgangen til fkb 5.0