Geospatial Analytics Extension for KNIME stopped working after update to 5.2.2

Hi, after updating KNIME to 5.2.2 all Geospatial Analytics Extension for KNIME 1.2 nodes stopped working. I have checked all previous workflows and reinstalled KNIME - no success. Does anyone have any solution for this?
Following error is returned:

Execute failed: An error occurred while calling o10.getDataSource. : java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available at org.apache.arrow.memory.util.MemoryUtil.directBuffer(MemoryUtil.java:174) at org.apache.arrow.memory.ArrowBuf.getDirectBuffer(ArrowBuf.java:229) at org.apache.arrow.memory.ArrowBuf.nioBuffer(ArrowBuf.java:224) at org.apache.arrow.vector.ipc.WriteChannel.write(WriteChannel.java:133) at org.apache.arrow.vector.ipc.message.MessageSerializer.writeBatchBuffers(MessageSerializer.java:303) at org.apache.arrow.vector.ipc.message.MessageSerializer.serialize(MessageSerializer.java:276) at org.knime.core.columnar.arrow.ArrowBatchWriter$ArrowWriter.writeRecordBatch(ArrowBatchWriter.java:480) at org.knime.core.columnar.arrow.ArrowBatchWriter.writeVectors(ArrowBatchWriter.java:382) at org.knime.core.columnar.arrow.ArrowBatchWriter.write(ArrowBatchWriter.java:197) at org.knime.core.columnar.data.dictencoding.DictEncodedBatchWriter.write(DictEncodedBatchWriter.java:200) at org.knime.core.data.columnar.table.WrappedBatchStore$WrappedBatchWriter.write(WrappedBatchStore.java:123) at org.knime.core.columnar.cursor.ColumnarWriteCursorFactory$ColumnarWriteCursorImpl.writeCurrentBatch(ColumnarWriteCursorFactory.java:210) at org.knime.core.columnar.cursor.ColumnarWriteCursorFactory$ColumnarWriteCursorImpl.flush(ColumnarWriteCursorFactory.java:201) at org.knime.core.data.columnar.table.ColumnarRowWriteCursor.flush(ColumnarRowWriteCursor.java:136) at org.knime.core.data.columnar.table.ColumnarRowWriteTable.finish(ColumnarRowWriteTable.java:190) at org.knime.python3.arrow.PythonArrowDataSourceFactory.copyTable(PythonArrowDataSourceFactory.java:198) at org.knime.python3.arrow.PythonArrowDataSourceFactory.copyTableToArrowStore(PythonArrowDataSourceFactory.java:180) at org.knime.python3.arrow.PythonArrowDataSourceFactory.extractStoreCopyTableIfNecessary(PythonArrowDataSourceFactory.java:171) at org.knime.python3.arrow.PythonArrowDataSourceFactory.createSource(PythonArrowDataSourceFactory.java:121) at org.knime.python3.arrow.PythonArrowTableConverter.createSource(PythonArrowTableConverter.java:107) at org.knime.python3.nodes.ports.PythonPortObjects$PythonTablePortObject.getDataSource(PythonPortObjects.java:261) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357) at py4j.Gateway.invoke(Gateway.java:282) at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) at py4j.commands.CallCommand.execute(CallCommand.java:79) at py4j.ClientServerConnection.sendCommand(ClientServerConnection.java:244) at py4j.CallbackClient.sendCommand(CallbackClient.java:384) at py4j.CallbackClient.sendCommand(CallbackClient.java:356) at py4j.reflection.PythonProxyHandler.invoke(PythonProxyHandler.java:106) at jdk.proxy6/jdk.proxy6.$Proxy53.execute(Unknown Source) at org.knime.python3.nodes.CloseablePythonNodeProxy.execute(CloseablePythonNodeProxy.java:505) at org.knime.python3.nodes.DelegatingNodeModel.lambda$4(DelegatingNodeModel.java:151) at org.knime.python3.nodes.DelegatingNodeModel.runWithProxy(DelegatingNodeModel.java:208) at org.knime.python3.nodes.DelegatingNodeModel.execute(DelegatingNodeModel.java:149) at org.knime.core.node.NodeModel.executeModel(NodeModel.java:588) at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1297) at org.knime.core.node.Node.execute(Node.java:1059) at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:595) at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:98) at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:201) at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:117) at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:367) at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:221) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123) at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)

image

Hi @Mateusz and welcome to KNIME community forum,

I cannot reproduce the issue with AP 5.2.2 on Windows and macOS. So, may I ask:

  • Which OS is it?
  • After ā€œreinstalling KNIMEā€, did you install any other extension other than the Geospatial Analytics?
  • Have you modified the knime.ini file under the installation folder?
  • Is it possible for you to provide us with an example workflow which replicates the problem?

Hi Armin, thank you for your response!

  • Which OS is it? - Windows 11

  • After ā€œreinstalling KNIMEā€, did you install any other extension other than the Geospatial Analytics? - no, just the Geospatial Analytics

  • Have you modified the knime.ini file under the installation folder? - yes, added JRE path to Ternium Eclipse - otherwise I would be getting following error
    image

  • Is it possible for you to provide us with an example workflow which replicates the problem?

Any workflow will cause problems, but let me share with you the example in a moment

Hi Armin,

Actually I managed to solve it. This fix A java Runtime Environment (JRE) or JDK must be available in order to run Knime - #2 by prashant7526 was causing problems with Geospatial plugin for me, but I managed to do it differently.

KNIME after installation is referring to wrong path on where javaw.exe is located. It expects it to be at \KNIME\jre\bin, where in fact it is located in
plugins\org.knime.binary.jre.win32.x86_64_17.0.5.20221116\jre\bin. I have copied the folder \jre\ to KNIME folder and it works, together with Geospatial plugins.

Thanks! :wink:

3 Likes

Good to hear that you could figure it out and have the problem solved. :slight_smile:

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.