RS_MapAlgebra for raster processing #1945
Replies: 3 comments 8 replies
-
@melikasajadian Did you add the geotools-wrapper jar to Databricks? |
Beta Was this translation helpful? Give feedback.
-
I have reproduced this on Databricks 15.4 LTS, but not on open source Apache Spark 3.5.4. Turns out that it is a issue related to janino version on Databricks. Jiffle uses janino to compile jiffle expressions to JVM byte code, and a fix in janino janino-compiler/janino@6e8a97d must be present to make jiffle work with Spark. This fix only presents in janino >= 3.1.1. Unfortunately Databricks 15.4 LTS uses janino 3.0.16 and caused this problem. We may have to shade janino inside of geotools-wrapper to get rid of this problem on Databricks. |
Beta Was this translation helpful? Give feedback.
-
@melikasajadian the latest 1.7.2 release should be able to fix this. please give it a try. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
When I try to code map algebra operation according to the sample notebook here using RS_MapAlgebra, I get the following error:
InferredExpressionException: Exception occurred while evaluating expression RS_MapAlgebra - inputs: [GridCoverage2D["geotiff_coverage", GeneralEnvelope[(470000.0, 7227000.0), (471000.0, 7228000.0)], DefaultProjectedCRS["WGS 84 / UTM zone 6N"]]
Caused by: RuntimeException: Failed to run map algebra
Caused by: JiffleException: Runtime source error for source: package it.geosolutions.jaiext.jiffle.runtime;
Caused by: CompileException: Line 12, Column 15: it.geosolutions.jaiext.jiffle.runtime.String
Caused by: ClassNotFoundException: it.geosolutions.jaiext.jiffle.runtime.String
Caused by: ClassNotFoundException: it.geosolutions.jaiext.jiffle.runtime.String
Apparently, the jiffle runtime is missing. I am using Apache Sedona 1.7.1 in Databricks (I tried with other versions of Sedona but the error persists). Is there a way to solve this error, for example installing the library on the cluster separately or through the init-script?
It is not a critical error since I can calculate for example NDVI through RS_Divide, RS_Add, RS_Subtract.
Thank you.
Cheers,
Melika
Beta Was this translation helpful? Give feedback.
All reactions