Unable to download proxied pypi packages from 3.47.1

Users are reporting errors of the type:

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='nexus.mercator-ocean.

when the package should be pulled from the pypi.org
The log entries for this download attempt say:

 *UNKNOWN org.sonatype.nexus.blobstore.file.FileBlobStore - Attempt to access soft-deleted blob e35a286c-3d9c-432c-bfcb-5ce86659e2c1 attributes: /nfs/data/vhosts/sonatype-work/nexus3/blobs/default/content/vol-08/chap-35/e35a286c-3d9c-432c-bfcb-5ce86659e2c1.properties {deletedDateTime=1676280344880, deleted=true, @BlobStore.created-by=anonymous, creationTime=1656421851466, @BlobStore.created-by-ip=, @BlobStore.content-type=text/html, sha1=b491c56631a7ce42b04b859578d6d4b4f5f067a3, @BlobStore.blob-name=ruamel-yaml, deletedReason=Updating asset AttachedEntityId{asset->#24:26}, @Bucket.repo-name=pypi-all, size=567726}

Looks like my blob store(s) is FUBAR. I rebuilt the database, but the rebuild process reported no errors. Can one recover from this?

This isn’t database related. One of your files on disk is marked as deleted (soft deleted) but is still attached to an asset. (Maybe you restored a database without restoring a blobstore?)

If its a single blob the safest and easiest is probably to manually remove the deleted=true line from the properties file. Alternatively the Reconcile task should have an option for deleted components.

1 Like

Removing all entries pertaining to deletion in the properties file listed in the log did the trick. Thanx!