Open mjaddis opened 5 years ago
@mjaddis is there any chance you can test on 1.9.1
? There were some pointer file creation issues noticed there that as you note, may have been around since 1.7
. If you follow the links through this PR you'll find some more info about that and its diagnosis.
Hi @ross-spencer I've just tried 1.9.1 and get same result. I saw artefactual/archivematica-storage-service#443 , but I'm not sure that's the same problem. 443 seems to be about the SS thinking that no pointer file needs to be created because it can't see the AIP and test whether it's a file or not when it's still in the Dashboard? But the problem I have is that the SS does correctly think a pointer file is needed, but it doesn't generate it at the right time. I checked this with some extra logging that confirms that should_have_pointer
is true, already_generated_ptr_exists
is false, and pointer_file_dst
is set.
Thanks @mjaddis that helps! :+1:
Expected behaviour If I create a compressed AIP then it should be possible to store it in an Arkivum Space
Current behaviour The Storage Service throws an error when the AIP is saved because arkivum.py can't find the pointer file:
The problem arises because the pointer file hasn't been saved to disk before arkivum.py tries to access it. arkivum.py accesses the pointer file so it can get the checksum for the AIP file and use that in an API call to the Arkivum appliance. However, looking at the package.py code (store_aip method), the storage of the pointer file doesn't happen until after _store_aip_to_uploaded() has been called.
The pointer file needs to be accessible to arkivum.py before arkivum.py tries to save the AIP. Alternatively, another approach is needed to get the AIP checksum to arkivum.py so it can use it without having to load up the pointer file.
Steps to reproduce
Your environment (version of Archivematica, OS version, etc) We see this problem on AM 1.8.1, but it may be that the issue arose in 1.7. The issue doesn't arise in AM1.6
For Artefactual use: Please make sure these steps are taken before moving this issue from Review to Verified in Waffle: