Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Imports fail on existing immutable items #94

Open
qjhart opened this issue Feb 4, 2025 · 0 comments
Open

[BUG] Imports fail on existing immutable items #94

qjhart opened this issue Feb 4, 2025 · 0 comments
Assignees

Comments

@qjhart
Copy link
Contributor

qjhart commented Feb 4, 2025

The yearbook import, which probably (along w/ sherry-lehmann) has the largest
number of pages/item. Had an another import issue. This one seems fairly
typical. From the Log files, I imagine PUT CONTAINER is just informational,

I originally thought that I could verify there were no immuttable components to
this, because for the yearbooks, I had run this query

select parent,fedora_id from containment where fedora_id like '%/item/ark:/%/media' and parent||'/media' != fedora_id;

However, I see that this item is different than those, it’s the image container
where things went bad, and I need to run.

  select parent,fedora_id from containment where fedora_id like '%/item/ark:/%/media/images' and parent||'/images' != fedora_id;
      parent      |                     fedora_id
------------------+----------------------------------------------------
 info:fedora/item | info:fedora/item/ark:/87293/d3kh0f39z/media/images
 info:fedora/item | info:fedora/item/ark:/87293/d36688p8j/media/images

And now we see two we should worry about. A better query might be:

  select parent,fedora_id from containment where fedora_id like '%/media/%' and parent = 'info:fedora/item'
fcrepo-# ;
      parent      |                          fedora_id
------------------+--------------------------------------------------------------
 info:fedora/item | info:fedora/item/ark:/87293/d35d2w/media/text/d35d2w-000.txt
 info:fedora/item | info:fedora/item/ark:/87293/d36688p8j/media/text
 info:fedora/item | info:fedora/item/ark:/87293/d3kh0f39z/media/images
 info:fedora/item | info:fedora/item/ark:/87293/d36688p8j/media/images

and perhaps an even better query.

  select parent,fedora_id from containment where (not fedora_id ~ '^info:fedora/item/ark:/[0-9]+/[a-z,0-9]+$') and parent = 'info:fedora/item'
;
      parent      |                          fedora_id
------------------+--------------------------------------------------------------
 info:fedora/item | info:fedora/item/ark:/87293/d3br04/700-N-a-13.tif
 info:fedora/item | info:fedora/item/ark:/87293/d35d2w/media/text/d35d2w-000.txt
 info:fedora/item | info:fedora/item/ark:/87293/d36688p8j/media/text
 info:fedora/item | info:fedora/item/ark:/87293/d3kh0f39z/media/images
 info:fedora/item | info:fedora/item/ark:/87293/d36688p8j/media/images

This is the best query to find and fix deletions that need to be run. I also
need to find which catalogs these all exist in :(

2025-02-04 00:44:43.019 PST ARCHIVAL GROUP: /item/ark:/87293/d3kh0f39z
2025-02-04 00:44:43.019 PST -> crawling fcrepo and local fs for changes
2025-02-04 00:46:07.600 PST -> changes found, WARNING versioning every change: Changes detected: /item/ark:/87293/d3kh0f39z
2025-02-04 00:46:07.600 PST PUT CONTAINER: /item/ark:/87293/d3kh0f39z
2025-02-04 00:46:07.600 PST -> /data/dams-yearbooks-metadata/items/SchoolMedicine_2011.jsonld.json
2025-02-04 00:46:07.619 PST -> @type: http://schema.org/CreativeWork, http://schema.org/ImageObject, http://schema.org/Book, http://digital.ucdavis.edu/schema#FinArchivalGroup
2025-02-04 00:46:07.619 PST -> resolving @base:media/SchoolMedicine_2011.pdf with info:fedora/item/ark:/87293/d3kh0f39z/media/SchoolMedicine_2011.pdf
2025-02-04 00:46:07.619 PST -> resolving @base:media/images/SchoolMedicine_2011_001.tif with info:fedora/item/ark:/87293/d3kh0f39z/media/images/SchoolMedicine_2011_001.tif
2025-02-04 00:46:07.643 PST -> put /item/ark:/87293/d3kh0f39z status: 409 (23ms)
2025-02-04 00:46:07.643 PST -> retrying due to container conflict: /item/ark:/87293/d3kh0f39z
2025-02-04 00:46:07.643 PST -> put body: Resource path item/ark:/87293/d3kh0f39z is an immutable resource.
2025-02-04 00:46:08.167 PST -> put /item/ark:/87293/d3kh0f39z status: 409 (22ms)
2025-02-04 00:46:08.167 PST -> put body: Resource path item/ark:/87293/d3kh0f39z is an immutable resource.
2025-02-04 00:46:08.167 PST exiting due to container conflict: /item/ark:/87293/d3kh0f39z

Solution

for i in /item/ark:/87293/d3br04/700-N-a-13.tif /item/ark:/87293/d35d2w/media/text/d35d2w-000.txt /item/ark:/87293/d36688p8j/media/text /item/ark:/87293/d3kh0f39z/media/images /item/ark:/87293/d36688p8j/media/images;
do
 fdel $i;
done

Then rerun these improrts. Since the imports fail on these, we need to rerun the whole thing to make sure we get other items which would have come after

/item/ark:/87293/d3br04/700-N-a-13.tif dams-irrigation-metadata items/700-N-a-13.tif

/item/ark:/87293/d35d2w/media/text/d35d2w-000.txt dams-kearney-tea-project-metadata

All yearbooks

/item/ark:/87293/d36688p8j/media/text
/item/ark:/87293/d3kh0f39z/media/images
/item/ark:/87293/d36688p8j/media/images;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants