You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Web API: re-uploading a downloaded object under another name hangs (duplicate UUID, modal error dialog) #434
Re-uploading an object downloaded from the Web API under another name hangs the request for 30 seconds and leaves an error dialog open in DataLab:
GET /api/v1/objects/{name}/data returns an NPZ archive whose metadata.json holds the object metadata, including its __uuid (WorkspaceAdapter.get_object copies the UUID on purpose).
PUT /api/v1/objects/{other}/data with this archive creates a new object carrying the same UUID: ObjectModel.add_objects raises ValueError (UUID already in the model).
WorkspaceAdapter._add_object_sync calls panel.add_object, decorated with qt_try_except: the error is shown in a modal dialog on the Qt main thread, the executor waits until its 30-second timeout, and the client gets a read timeout instead of an error response.
This is what WorkspaceBackend.rename of DataLab-Kernel does (get, add under the new name, remove), so its live test test_rename times out against DataLab develop (found while fixing DataLab-Platform/DataLab-Kernel#7). DataLab 1.3 is not affected.
Expected
PUT /objects/{name}/data creates (or replaces) an object: the new object gets its own identity, whatever UUID the archive carries; errors are returned as HTTP errors and never shown as dialogs by the Web API.
Activity
PierreRaybaut commentedon Oct 25, 2026
Fixed by #435 (merged into develop).