RS_MapAlgebra for raster processing #1945
Unanswered
melikasajadian
asked this question in
Q&A
Replies: 3 comments 8 replies
|
@melikasajadian Did you add the geotools-wrapper jar to Databricks? |
2 replies
|
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. |
6 replies
|
@melikasajadian the latest 1.7.2 release should be able to fix this. please give it a try. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment

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
All reactions