nfdi4plants / ARCCommander

Tool to manage your ARCs
MIT License
11 stars 9 forks source link

[BUG] issue with SMB fileserver macOS #185

Closed Brilator closed 1 year ago

Brilator commented 1 year ago

This might be a very specific issue with the local (fileserver) setting. However, if other users run into a similar issue, it might make sense to collect here.

setup

steps (removed file server address)

arcdir="/Volumes/<---fileserver--->/demoarc"
mkdir -p $arcdir; cd $arcdir
arc init

error

Start processing command with the arguments:
        Branch:Field ""
        EditorPath:Field ""
        GitLFSByteThreshold:Field ""
        Owner:Field ""
        RepositoryAddress:Field ""

Start Arc Init 
Done processing command. 
ERROR: System.IO.IOException: Input/output error : '/Volumes/<---fileserver--->/demoarc/.arc/.gitkeep'
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Init(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
   at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
   at ArcCommander.APIs.ArcAPI.init(ArcConfiguration arcConfiguration, FSharpMap`2 arcArgs)
   at ArcCommander.Program.handleCommand@215.Invoke(ArcConfiguration arcConfiguration, FSharpMap`2 arcArgs)
   at ArcCommander.Program.processCommand[a,T](ArcConfiguration arcConfiguration, FSharpFunc`2 commandF, ParseResults`1 r)
   at ArcCommander.Program.handleCommand(ArcConfiguration arcConfiguration, ArcCommand command)
   at ArcCommander.Program.main(String[] argv) Input/output error : '/Volumes/<---fileserver--->/demoarc/.arc/.gitkeep'
Brilator commented 1 year ago

Basically same steps via Linux, same file server, works:

Linux Setup

arcdir="/<---fileserver--->/demoarc/"
mkdir -p $arcdir; cd $arcdir
arc init
arc i create -i test
arc sync -f -r https://git.nfdi4plants.org/brilator/linuxtest/
omaus commented 1 year ago

Is <---fileserver---> a valid name? Because this looks suspicious to me. In Windows, you wouldn't be allowed to choose such a name.

Could you also paste the log file here? It should be located under /Library/Caches/DataPLANT/ArcCommander/.

Brilator commented 1 year ago

Is <---fileserver---> a valid name? Because this looks suspicious to me. In Windows, you wouldn't be allowed to choose such a name.

:D No, it's not. That's what I meant by "(removed file server address)"

Brilator commented 1 year ago
2023-04-06 10:08:58.6559 ArcCommanderMainLog TRACE: Start ArcCommander
2023-04-06 10:08:58.7467 ProcessCommandLog INFO: Start processing command with the arguments:
    Branch:Field ""
    EditorPath:Field ""
    GitLFSByteThreshold:Field ""
    Owner:Field ""
    RepositoryAddress:Field ""

2023-04-06 10:08:58.7668 ProcessCommandLog TRACE: and the config:
    general.authclientid:80f4fbff13c3a27713860b6e71755fb3cba7adf644cf71a7cfcc9c1f67ac3680
    general.authredirecturi:http://localhost:7890
    general.authscope:openid email profile read_repository write_repository
    general.editor:nano
    general.forceeditor:false
    general.gitlfsbytethreshold:150000000
    general.gitlfsrules:**/dataset/**
    general.rootfolder:.arc
    general.verbosity:1
    general.workdir:/Volumes/............/demoarc
    assay.files:README.md
    assay.folders:dataset;protocols
    assay.rootfolder:assays
    study.files:README.md
    study.folders:protocols;resources
    study.rootfolder:studies
    isamodel.assay:folder.assay.rootfolder
    isamodel.assayfilename:isa.assay.xlsx
    isamodel.investigationfilename:isa.investigation.xlsx
    isamodel.studiesfilename:isa.studies.xlsx
    isamodel.studyfilename:isa.study.xlsx
    run.rootfolder:runs
    workflow.dockerfile:Dockerfile
    workflow.rootfolder:workflows

2023-04-06 10:08:58.7717 ArcInitLog INFO: Start Arc Init
2023-04-06 10:08:58.7723 ArcInitLog TRACE: Create Directory
2023-04-06 10:08:58.7723 ArcInitLog TRACE: Initiate folder structure
2023-04-06 10:08:58.7885 ProcessCommandLog INFO: Done processing command.
omaus commented 1 year ago

Is <---fileserver---> a valid name? Because this looks suspicious to me. In Windows, you wouldn't be allowed to choose such a name.

:D No, it's not. That's what I meant by "(removed file server address)"

Ha! Missed that one! 😅


Okay, according to the error message along with the log, the ArcCommander is not able to create a file in the directory. We will have to investigate this further.

Does this error only occur on your server but not when working on a local folder? If so, it might be a problem with permissions.

Brilator commented 1 year ago

only on that server and only when trying with mac not linux

omaus commented 1 year ago

Could you check if you have fewer permissions with your Mac account or when using the terminal from your Mac account?

Brilator commented 1 year ago

same university user login

chgarth commented 1 year ago

There are some issues with CIFS shares and MacOS Ventura that have not been fixed by Apple yet. Which MacOS version are you on? Also, it would be interesting if you could mount the share via the Finder's "Connect to Server" option and see whether that changes anything.

Brilator commented 1 year ago

macOS Ventura 13.2 on the mac it is connected via the finder option

Brilator commented 1 year ago

This might actually be a server issue as I also keep running into issues with pure git

fatal: .git/index: index file smaller than expected

Brilator commented 1 year ago

Yes, turned out to be an issue with the file server supporting only macOS ≤ 11.01..