bihealth / sodar-server

SODAR: System for Omics Data Access and Retrieval
https://github.com/bihealth/sodar-server
MIT License
14 stars 3 forks source link

Uncaught exception in landing_zone_move with existing file sharing collection name #1958

Closed sellth closed 1 week ago

sellth commented 1 week ago

Describe the Bug

Moving a landing zone fails when there is a name conflict (same name) of a object/collection with the main storage. This makes sense because collections and objects need to have unique names, but should be handled more descriptively.

How to Reproduce

  1. Move a file to main iRODS storage.
  2. Create a 2nd LZ and create a collection with the same name as the already moved file.
  3. Start move of LZ.
  4. Move fails with "Failed" in the GUI and this in the celery logs:
    2024-06-27 17:43:19,899 [ERROR] taskflowbackend.flows: Exception in run_flow(): None
    [2024-06-27 17:43:19,900: INFO/ForkPoolWorker-9] Unlock OK for project 480d8cb6-3c12-446e-8778-5b77de3d5d4c
    2024-06-27 17:43:19,901 [ERROR] taskflowbackend.api: Error running flow: None

Expected Behavior

Failed status should inform the user about the naming conflict.

mikkonie commented 1 week ago

Can't reproduce, we need more information. Merely creating a subcollection does not to this, it works and is also included in tests. Possibly this happens with e.g. some specific landing zone settings.

sellth commented 1 week ago

Sorry, did some more testing and what I thought was a collection was really a file. This is a simple naming conflict between LZ and main storage which fails non-descriptively. Updated my initial report.

mikkonie commented 1 week ago

Fixed.