When doi provider is set to FAKE, dataset dois are created but file dois are not, even if enabled. This can be confusing and is inconsistent.
Here's a related comment I made at https://github.com/IQSS/dataverse/pull/5399#issuecomment-448289416
@sekmiller pointed out that the fake PID providers doesn't support file DOIs which is a good catch but I don't believe it needs to. The REST Assured test suite passes without it. If we ever need to add support for file DOIs, Steve said we need to write some code in the publicizeIdentifier method.
@pdurbin Are you saying this ticket is not worthwhile then? What I am presenting is a desire to have a fully functional dataverse installation while using a test doi and also not confusing someone such as myself as to why some functionality silently fails to work. Passing tests that do not test something is not a strong argument IMHO. That said, I'm also not saying this is urgent but performing due diligence in the interest of transparency.
Also, I'd wasted time on this problem due to not understanding the limitation.
@kcondon on the contrary, I think it's a good idea to support file PIDs with the FAKE DOI provider. I'm just linking back to the old discussion to refresh the collective memories in the hive mind. 馃悵
I agree that this is a real issue - it has already caused some real life confusion (will explain).
Whether we actually want file-level DOIs generated under the FAKE provider, I don't personally care; I would be ok if we just decided that setting it to FAKE should implicitly set :FilePIDsEnabled to false. The problem with the current state of it is that it results in some inconsistent behavior and at least one UI error: unless :FilePIDsEnabled is explicitly set to false, Dataverse appears to attempt to assign DOIs to files on publish, fails silently, then leaves the dvobjects with null identifiers, BUT with the identifierregistered=true. This in turn results in a null pointer in the file citation and a 500 in the UI.
To reproduce: with FAKE provider configured, and without :FilePIDsEnabled set to false, publish a dataset with files. Go to the file page, and select any format under "Cite Data File" - you will get a 500. The file citation on the page will also be incomplete.
This would be the case with any "sample data" instance spun up from the current config. The 500 UI error has been discovered by at least one person who was evaluating Dataverse.
I have been tripping over this when testing the download file citation locally in the new UI. Lots of 500 errors. Found this issue in the backlog and wanted to drop a note here in support of resolving this.
There was some quick workaround though; for how to get rid of the 500 in citations (if this messes up your testing).
OK, you can set :FilePIDsEnabled to false, and this will prevent it from happening for the files you may publish going forward. For the already existing ones, I think you may need to just unset the "global id registered" time stamp for all the files that don't have global ids... I can look it up if this is something you need to do?
No, not urgent. But thank you, @landreev, for outlining the workaround option. Didn't need the physical download to work. Just hit the 500 error pg enough times to make me think "we should fix this already".
it should be an easy fix too; I'll petition to get it into the next sprint.
@mheppler @landreev petition received
Most helpful comment
@mheppler @landreev petition received