-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
We @knime have observed that the ExcelPasswordManager cannot deal with larger files well and needs lots of memory to add/remove password protection.
Locally, with a 10MB Excel file and KNIME's hava heap memory (-Xmx) set to 2GB we see a JavaHeapSpace error. Increasing the heap memory size helps to mitigate that issue.
When using the node a KNIME Hub executor with 16GB RAM (-> ~10GB -Xmx) we notice that already files of 3MB size cannot be processed, while very small files work. In this instance the file is served differently and the error looks different (see below), but we believe they are connected.
Is there any way the memory usage of the node can be improved?
2025-02-05 13:52:45,362 : ERROR : KNIME-Worker-61144-Excel Password Manager : [...] : Node : Execute failed: Reason: Error while writing Error while saving output file Unexpected end of file from server
org.knime.core.node.InvalidSettingsException: Reason: Error while writing Error while saving output file Unexpected end of file from server
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.execute(ExcelPasswordManagerNodeModel.java:306)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:596)
at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1284)
at org.knime.core.node.Node.execute(Node.java:1049)
at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:603)
at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:98)
at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:198)
at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:117)
at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:369)
at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:223)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)
Caused by: org.knime.core.node.InvalidSettingsException: Error while writing Error while saving output file Unexpected end of file from server
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.execute(ExcelPasswordManagerNodeModel.java:295)
... 13 more
Caused by: org.knime.core.node.InvalidSettingsException: Error while saving output file Unexpected end of file from server
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.execute(ExcelPasswordManagerNodeModel.java:287)
... 13 more
Caused by: java.net.SocketException: Unexpected end of file from server
at java.base/sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
at java.base/sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at java.base/java.net.HttpURLConnection.getResponseCode(Unknown Source)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)
at com.knime.enterprise.client.rest.RestUploadStream.close(RestUploadStream.java:267)
at org.knime.filehandling.core.connections.FSOutputStream.close(FSOutputStream.java:104)
at org.knime.filehandling.core.connections.base.BaseFileSystemProvider$2.close(BaseFileSystemProvider.java:504)
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.encryptXLSX(ExcelPasswordManagerNodeModel.java:391)
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.writeXlsWithPassword(ExcelPasswordManagerNodeModel.java:345)
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.execute(ExcelPasswordManagerNodeModel.java:283)
... 13 more
Suppressed: java.net.SocketException: Unexpected end of file from server
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Unknown Source)
at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at java.base/java.net.HttpURLConnection.getResponseCode(Unknown Source)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)
at com.knime.enterprise.client.rest.RestUploadStream.close(RestUploadStream.java:267)
at org.knime.filehandling.core.connections.FSOutputStream.close(FSOutputStream.java:104)
at org.knime.filehandling.core.connections.base.BaseFileSystemProvider$2.close(BaseFileSystemProvider.java:504)
at org.AF.ExcelUtilities.ExcelPasswordManager.ExcelPasswordManagerNodeModel.execute(ExcelPasswordManagerNodeModel.java:286)
... 13 more
Caused by: [CIRCULAR REFERENCE: java.net.SocketException: Unexpected end of file from server]
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels