Open aklink opened 4 years ago
<?xml version="1.0" encoding="UTF-8"?>
<wps:Execute
xmlns:wps="http://www.opengis.net/wps/2.0"
xmlns:ows="http://www.opengis.net/ows/2.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengis.net/wps/2.0 ../wps.xsd"
service="WPS"
version="2.0.0"
response="document"
mode="sync">
<ows:Identifier>de.hsbo.wacodis.land_cover_classification</ows:Identifier>
<!-- S2B_MSIL2A_20180420T103019_N0207_R108_T32ULB_20180420T114307_10m_20m -->
<wps:Input id="OPTICAL_IMAGES_SOURCES">
<wps:Data mimeType="text/plain">https://scihub.copernicus.eu/dhus/odata/v1/Products('461bcb9c-34b4-40f7-95c7-ad26bcd92c17')/$value</wps:Data>
</wps:Input>
<!-- S2B_MSIL2A_20180629T103019_N0208_R108_T32ULB_20180924T145004_10m_20m -->
<wps:Input id="OPTICAL_IMAGES_SOURCES">
<wps:Data mimeType="text/plain">https://scihub.copernicus.eu/dhus/odata/v1/Products('cfe69dfb-b255-4571-89bc-b30849779ddb')/$value</wps:Data>
</wps:Input>
<!-- S2A_MSIL2A_20180707T104021_N0208_R008_T32ULB_20180707T140903_10m_20m -->
<wps:Input id="OPTICAL_IMAGES_SOURCES">
<wps:Data mimeType="text/plain">https://scihub.copernicus.eu/dhus/odata/v1/Products('6c218b36-bdf0-40aa-afaf-e6ddbe274355')/$value</wps:Data>
</wps:Input>
<!-- S2B_MSIL2A_20180927T103019_N0208_R108_T32ULB_20180927T155848_10m_20m -->
<wps:Input id="OPTICAL_IMAGES_SOURCES">
<wps:Data mimeType="text/plain">https://scihub.copernicus.eu/dhus/odata/v1/Products('30da491c-1cbb-475a-a28a-6c1b6beb0d05')/$value</wps:Data>
</wps:Input>
<!-- S2B_MSIL2A_20181010T104019_N0209_R008_T32ULB_20181010T171128_10m_20m -->
<wps:Input id="OPTICAL_IMAGES_SOURCES">
<wps:Data mimeType="text/plain">https://scihub.copernicus.eu/dhus/odata/v1/Products('21eb3657-9a68-46cf-979a-9b731dfedf24')/$value</wps:Data>
</wps:Input>
<wps:Input id="AREA_OF_INTEREST">
<wps:Data mimeType="text/plain">[6.8579016,50.9392902,7.6795652,51.3647486]</wps:Data>
</wps:Input>
<wps:Input id="REFERENCE_DATA">
<wps:Reference xlink:href="http://wacodis.eftas.com:8081/geoserver/wacodis/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=wacodis%3Awacodis_traindata_191119&maxFeatures=200&srsName=epsg:32632&outputFormat=gml3" mimeType="text/xml" schema="http://schemas.opengis.net/gml/3.0.0/base/feature.xsd" />
</wps:Input>
<wps:Output id="PRODUCT" transmission="reference" mimeType="image/geotiff"/>
<wps:Output id="METADATA" transmission="value" mimeType="text/json"/>
</wps:Execute>
Hinweis: S2B_MSIL2A_20180420T103019_N0207_R108_T32ULB_20180420T114307_10m_20m ist älter als 2 Jahre, d.h. sind nicht mehr hochverfügbar (wird ggf. erst mit Stunden Verzögerung bereitgestellt)
Fehlermeldung gibt es je nach selektierten Szenen (Szenen auskommentieren) noch in weiteren Variationen:
Caused by: org.n52.javaps.engine.EngineException: java.lang.RuntimeException: No preprocessed Sentinel files available.
at org.n52.javaps.engine.impl.FileBasedResultPersistence.getResult(FileBasedResultPersistence.java:219)
at org.n52.javaps.engine.impl.EngineImpl.onJobCompletion(EngineImpl.java:201)
at org.n52.javaps.engine.impl.EngineImpl.access$300(EngineImpl.java:78)
at org.n52.javaps.engine.impl.EngineImpl$Job.setJobCompletionInternal(EngineImpl.java:423)
at org.n52.javaps.engine.impl.EngineImpl$Job.run(EngineImpl.java:414)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
... 1 more
Caused by: java.lang.RuntimeException: No preprocessed Sentinel files available.
at org.n52.javaps.algorithm.annotation.ExecuteBinding.execute(ExecuteBinding.java:64)
at org.n52.javaps.algorithm.annotation.AnnotatedAlgorithm.execute(AnnotatedAlgorithm.java:61)
at org.n52.javaps.engine.impl.EngineImpl$Job.run(EngineImpl.java:394)
... 5 more
Caused by: org.n52.wacodis.javaps.WacodisProcessingException: No preprocessed Sentinel files available.
at org.n52.wacodis.javaps.algorithms.LandCoverClassificationAlgorithm.preprocessOpticalImages(LandCoverClassificationAlgorithm.java:196)
at org.n52.wacodis.javaps.algorithms.LandCoverClassificationAlgorithm.createInputArgumentValues(LandCoverClassificationAlgorithm.java:152)
at org.n52.wacodis.javaps.algorithms.AbstractAlgorithm.executeProcess(AbstractAlgorithm.java:63)
at org.n52.wacodis.javaps.algorithms.LandCoverClassificationAlgorithm.execute(LandCoverClassificationAlgorithm.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.n52.javaps.algorithm.annotation.ExecuteBinding.execute(ExecuteBinding.java:59)
... 7 more
Mit der Szene S2B_MSIL2A_20181010T104019_N0209_R008_T32ULB_20181010T171128_10m_20m alleine (alle anderen auskommentiert) funktioniert es
Nachtrag:
Die Szene war als einzige der gelisteten Szenen noch im Docker Volume temporär zwischengespeichert aus früherem Lauf:
26. Feb 12:20 S2B_MSIL2A_20181010T104019_N0209_R008_T32ULB_20181010T171128.SAFE
Mit dem o.a. Request wird u.a. zwischendurch folgende Exception geloggt:
Caused by: org.esa.snap.core.gpf.graph.GraphException: [NodeId: Subset] invalid region
at org.esa.snap.core.gpf.graph.NodeContext.initTargetProduct(NodeContext.java:79) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphContext.initNodeContext(GraphContext.java:195) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphContext.initNodeContext(GraphContext.java:178) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphContext.initOutput(GraphContext.java:162) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphContext.<init>(GraphContext.java:91) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphContext.<init>(GraphContext.java:64) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.graph.GraphProcessor.executeGraph(GraphProcessor.java:128) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.DefaultCommandLineContext.executeGraph(DefaultCommandLineContext.java:86) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.CommandLineTool.executeGraph(CommandLineTool.java:534) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.CommandLineTool.runGraph(CommandLineTool.java:388) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.CommandLineTool.runGraphOrOperator(CommandLineTool.java:287) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.CommandLineTool.run(CommandLineTool.java:188) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.CommandLineTool.run(CommandLineTool.java:121) ~[snap-gpf-7.0.3.jar:?]
at org.esa.snap.core.gpf.main.GPT.run(GPT.java:54) ~[snap-gpf-7.0.3.jar:?]
at org.n52.wacodis.javaps.preprocessing.gpt.GptExecutor.executeGraph(GptExecutor.java:34) ~[javaps-wacodis-backend-0.0.1-SNAPSHOT.jar:?]
at org.n52.wacodis.javaps.preprocessing.GptPreprocessor.preprocess(GptPreprocessor.java:87) ~[javaps-wacodis-backend-0.0.1-SNAPSHOT.jar:?]
... 20 more
Das lässt darauf schließen, dass die AreaOfInterest, die als WPS Input angegeben ist, nicht zu den Sentinel-Szenen passt. Der von dir zuletzt gepostete Log ist ein Folgefehler, da keine Szenen vorprozessiert werden konnten und somit auch nicht für die weitere Ausführung des Prozesses vorliegen. Du müsstest deinen Request demnach so anpassen, das die AoI zu den Szenen passt.
POLYGON ((6.8579016 50.9392902, 6.8579016 51.3647486, 7.6795652 51.3647486, 7.6795652 50.9392902, 6.8579016 50.9392902)) Also, wenn sich an den Szenen nichts geändert hat, dann müsste die AOI so passen, d.h. komplett innerhalb der Sentinel2 Szenen liegen, hab [6.8579016,50.9392902,7.6795652,51.3647486] in das o.a. WKT Polygon umgesetzt. Ist wegen WGS84 (Lat Lon) EPSG:4326 etwas gedreht gegenüber UTM32 EPSG:32632, aber sonst passt das, liegt komplett innerhalb der Szenen.
Zusammenfassung der Tests: Fehler liegt am Long Term Storage (Szenen nicht mehr sofort verfügbar)
Da unser System ursprünglich darauf ausgelegt ist, regelmäßig aktuelle Szenen zu verarbeiten, die noch nicht im Long Term Storage vorliegen, ist es momentan kein kritische Problem. Ich lasse den Issue dennoch offen, um die Problematik für die Zukunft weiterhin berücksichtigen zu können.