Hi all,
I have an openbis instance that we recently migrated from 20.10.3 to 20.10.12.5 where most things went smoothly.
However, uploading datasets with files from PyBIS (v 1.37.4) has stopped working due to some internal ATOMIC_MOVE that fails moving the file from session-workspace to a mounted NFS data share.
Here’s the error message:
2026-10-01 12:04:08,151 INFO \[qtp1377456236-45\] OPERATION.DataSetRegistrationTransaction - Start registration
2026-10-01 12:04:08,156 INFO \[qtp1377456236-45\] OPERATION.AbstractOmniscientTopLevelDataSetRegistrator - Start processing
2026-10-01 12:04:08,447 INFO \[qtp1377456236-45\] OPERATION.AbstractTransactionalCommand - Moving file '/data/openbis/session-workspace/user-XXXXTOKEN/6210282c-e527-46d4-a598-fab957c9e9cb/base.yaml' to '/data/openbis/store/4/staging/20261001120408183-1371880/base.yaml'
2026-10-01 12:04:08,449 ERROR \[Monitoring Proxy-T1::qtp1377456236-45::remote file operations\] OPERATION.IFileOperations - Java 7 ATOMIC_MOVE failed from '/data/openbis/session-workspace/user-XXXXTOKEN/6210282c-e527-46d4-a598-fab957c9e9cb/base.yaml' to '/data/openbis/store/4/staging/20261001120408183-1371880/base.yaml'
java.nio.file.AtomicMoveNotSupportedException: /data/openbis/session-workspace/user-XXXXTOKEN/6210282c-e527-46d4-a598-fab957c9e9cb/base.yaml -> /data/openbis/store/4/staging/20261001120408183-1371880/base.yaml: Invalid cross-device link
at java.base/sun.nio.fs.UnixCopyFile.move(UnixCopyFile.java:415)
at java.base/sun.nio.fs.UnixFileSystemProvider.move(UnixFileSystemProvider.java:267)
at java.base/java.nio.file.Files.move(Files.java:1422)
at ch.systemsx.cisd.common.filesystem.FileOperations.rename(FileOperations.java:175)
at ch.systemsx.cisd.common.filesystem.FileOperations.move(FileOperations.java:467)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at ch.systemsx.cisd.common.concurrent.MonitoringProxy$DelegatingInvocationHandler.invoke(MonitoringProxy.java:153)
at ch.systemsx.cisd.common.concurrent.MonitoringProxy$MonitoringInvocationHandler$2.call(MonitoringProxy.java:347)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
2026-10-01 12:04:08,450 ERROR \[qtp1377456236-45\] OPERATION.IFileOperations - Call to method 'IFileOperations.move(File,File)'\[remote file operations\]: exception: Moving '/data/openbis/session-workspace/user-XXXSESSIONTOKEN/base.yaml' into directory '/data/openbis/store/4/staging/20261001120408183-1371880/base.yaml' failed. \[IOExceptionUnchecked\].
We also have a generic dropbox that ingests data directly into one of the mounted NFS shares and it works without any problems.
Uploading datasets using the GUI in ELN also works fine.
It’s only the PyBIS uploads that fails like this.
Would be happy for some inputs!
Best,
Filip