Bug #23381
openarv-export trying to export links without UUID
Description
In source:contrib/arvados-bootstrap/src/arv_bootstrap/stubapi.py, StubArvadosResources.create reads body["uuid"]. This function gets called with Docker image links like body={'link_class': 'docker_image_repo+tag', 'name': 'cure/s3cmd-download:latest', 'properties': {'image_timestamp': '2021-02-03T21:08:14.880931991Z'}, 'head_uuid': '2xpu4-4zz18-sb6b73u42bb0bey', 'owner_uuid': None} and then fails with KeyError.
Updated by Brett Smith 3 months ago
- Description updated (diff)
- Subject changed from arv-export wrongly assumes all resources have a UUID to arv-export trying to export links without UUID
Original guess was mistaken.
Updated by Brett Smith 3 months ago
23381-arv-export-bugfixes @ 72de9af83d42cc112558dd173ac8bd940f977244 - developer-run-tests: #4986
This extends the "export all fields" logic to links. Note how this mirrors changes in 3ee5e7f85d1e4828008ae94bd42f35a5f537af2d. There might be related bugs to fix on the import side but this is a fine change by itself, that can be done separately later.
- All agreed upon points are implemented / addressed. Describe changes from pre-implementation design.
- Hopefully, see test notes below
- Anything not implemented (discovered or discussed during work) has a follow-up story.
- N/A
- Code is tested and passing, both automated and manual, what manual testing was done is described.
- An export is currently running on uasvd for a while without any errors reported, vs. pre-bugfix when a few were reported instantly. I won't merge the branch until the whole export completes successfully but as-is it's progress.
- Tested code incorporates recent main branch changes.
- Yes
- New or changed UI/UX and has gotten feedback from stakeholders.
- N/A
- Documentation has been updated.
- N/A
- Behaves appropriately at the intended scale (describe intended scale).
- N/A
- Considered backwards and forwards compatibility issues between client and server.
- N/A
- Follows our coding standards and GUI style guidelines.
- Yes
Updated by Brett Smith 3 months ago
- Target version set to Development 2026-01-06
- Assigned To set to Brett Smith
- Category set to SDKs
Updated by Tom Clegg 3 months ago
Note how this mirrors changes in 3ee5e7f85d1e4828008ae94bd42f35a5f537af2d.
Except 3ee5e7f85d1e4828008ae94bd42f35a5f537af2d makes body['owner_uuid'] = args.project_uuid conditional on !args.export_all_fields. Should we be doing that for owner_uuid and head_uuid here, too?
Other than that, LGTM.
Updated by Brett Smith 3 months ago
- Target version deleted (
Development 2026-01-06)