Closed yarikoptic closed 1 year ago
odd part is that if upon hitting that 400
(after we wait for /info
to return that status is "Valid" already in text_dandiset.dandiset.await_until_valid
) I do the same call in swagger -- it goes just fine. FWIW, that 400 also is exactly
│ status_code = 400 │
│ text = '"Dandiset metadata or asset metadata is not valid"'
I added some lgr.debug calls in text_dandiset.dandiset.await_until_valid and ran as source ../../secrets.env; DANDI_API_KEY=$DANDI_STAGING_API_KEY nox -e test -- -s -v -k test_1 --pdb --log-level=DEBUG
and it passed (a number of times)! removing debug lines and rerunning -- passed again . Removed --log-level=DEBUG
- it failed twice in a row.
So I suspect some odd race condition in dandi-archive introduced that there is duration of time in which dandiset with status "Valid" can still be not publishable... and indeed there was a recent related fix in non-async version of that function in dandi-cli: https://github.com/dandi/dandi-cli/commit/682a15026ac369ae7b23d7f3bf248a77c15482a3 so adding similar conditioning here!
tests have been failing with e.g.
looking at that heroku staging logs
so not much of information.