Can’t tell since you ninja edited your post which did not create a new revision. The first version of this post only has “edited.png”.
Which makes me think that you linked the image and did not upload it.
Yes, because you edited your post too quickly. We have a grace period window of 300 seconds here in which if you make an edit, it won’t create a new version of the post.
If you look at the raw, you see that the images are merely links to dropbox
The underlying links have long been deleted - Shouldn’t that mean these .gif should seize appearing? Clicking “View Image” from the context menu takes me to a community.signalusers address, is that expected behavior?
Testing, I’ll edit this out in ~300 seconds and shortly after delete the link.
deleted.png
Edit#2
The link is deleted but the image persists in the edit history, perhaps it doesn’t have an Upload record as it isn’t removed by the automatic cleanup.
I suppose, looking about, that it is held locally is expected behavior when download_remote_images_to_local is enabled. I think that’s the relevant setting.
So this
isn’t functioning for this type of upload, as demonstrated in my previous post. Correct me if I’m wrong.
clean up uploads sounds like a general setting that would capture all images with an upload record, is that correct? Not just those present due to download_remote_images_to_local. If true, I should be able to find examples on the site of regular image uploads that aren’t being removed as a result of the automatic cleanup.
You mind me asking what the clean orphan uploads grace period hours is set to here so I can offer it as a solution. Or does it come with a default?
If they decide to enable that setting, will they need to do anything to apply it to past posts?
Edit
Just for the sake of being explicit, the thinking here is that this isn’t an issue but that a setting needs to be switched on. I just don’t want to go back and say “You need to enable this!” and they say “It is enabled!” I’ll look silly.
I also caught myself frantically looking for a place to browse uploads (familiar with it from MediaWiki) because I just know stuff gets double triple and quadruple uploaded, and sometimes I wonder where a file was that I uploaded once a while ago but maybe lost or deleted so I can link to it instead of re-uploading it yet again… I guess there is something to be said about a file browser…
Ho anche dovuto in qualche modo eliminare un file caricato. Non abbiamo abilitato l’attività di pulizia poiché alcuni file provengono da un’importazione da un diverso software di forum e non sono ancora stati correttamente referenziati nei post importati. Quindi, ho dovuto trovare un modo manuale. Quanto segue funziona ma non è elegante…
Assicurati che il caricamento pertinente non sia più presente nella versione corrente di alcun post. In questo modo, Discourse lo considererà orfano e non creerà problemi quando lo elimini.
Utilizza il plugin Data Explorer o un altro modo per interrogare il database di Discourse per elencare i caricamenti orfani, trovare quello pertinente e annotare il suo upload_id e filename. Query pertinente:
SELECT
uploads.id, uploads.user_id, uploads.created_at,
uploads.url, uploads.filesize
FROM uploads
LEFT OUTER JOIN post_uploads ON uploads.id = post_uploads.upload_id
WHERE post_uploads.post_id IS NULL
ORDER BY created_at DESC
LIMIT 100
Nel database o con la console Rails per Discourse, elimina il record associato dalla tabella uploads tramite il suo ID di caricamento. Qui uso la console Rails:
Upload.where(id: 16384).first.delete
Elimina il file associato incluse tutte le versioni ottimizzate (se presenti, si applica alle immagini) dal file system tramite SSH. Nota il carattere jolly aggiunto prima dell’estensione del file per catturare anche le versioni ottimizzate, che qui hanno un suffisso. Naturalmente,
cd /path/to/discourse/shared/public/
find . -name 43adade7a4cc64426adb8232a56cb2c3b49fb7c9*.pdf -type f -delete
Huh! Sembra che l’immagine a cui si fa riferimento in questo post non sia catturata da queste impostazioni:
Perché non è stata eliminata?
Posso anche chiedermi perché Discourse “carica” un file collegato come il link di Dropbox qui? Il punto di collegare un file specifico è spesso quello di mantenere il controllo sul contenuto.
Con la modifica della ridenominazione di post_uploads in upload_references, la query SQL elencata nel passaggio 2 non è più valida. Il codice aggiornato è:
SELECT
uploads.id, uploads.user_id, uploads.created_at,
uploads.url, uploads.filesize
FROM uploads
LEFT OUTER JOIN upload_references ON uploads.id = upload_references.upload_id
WHERE upload_references.target_id IS NULL
ORDER BY created_at DESC
LIMIT 100