Fixing lost images

Unfortunately this produced an error now in 2.3:

Looking for missing uploads on: default
Fixing missing uploads: 
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................rake aborted!
Errno::EISDIR: Is a directory @ io_fread - /var/www/discourse/public/uploads/default/original/3X/2/1/
/var/www/discourse/lib/tasks/posts.rake:438:in `read'
/var/www/discourse/lib/tasks/posts.rake:438:in `block in missing_uploads'
/var/www/discourse/app/models/post.rb:954:in `block (4 levels) in find_missing_uploads'
/var/www/discourse/app/models/post.rb:919:in `block in each_upload_url'
/var/www/discourse/app/models/post.rb:899:in `each'
/var/www/discourse/app/models/post.rb:899:in `each_upload_url'
/var/www/discourse/app/models/post.rb:942:in `block (3 levels) in find_missing_uploads'
/var/www/discourse/app/models/post.rb:941:in `each'
/var/www/discourse/app/models/post.rb:941:in `block (2 levels) in find_missing_uploads'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/relation/batches.rb:136:in `block in find_in_batches'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/relation/batches.rb:238:in `block in in_batches'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/relation/batches.rb:222:in `loop'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/relation/batches.rb:222:in `in_batches'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/relation/batches.rb:135:in `find_in_batches'
/var/www/discourse/app/models/post.rb:937:in `block in find_missing_uploads'
/var/www/discourse/lib/distributed_mutex.rb:42:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:12:in `synchronize'
/var/www/discourse/app/models/post.rb:928:in `find_missing_uploads'
/var/www/discourse/lib/tasks/posts.rake:416:in `missing_uploads'
/var/www/discourse/lib/tasks/posts.rake:512:in `block (2 levels) in <top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rails_multisite-2.0.7/lib/rails_multisite/connection_management.rb:63:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rails_multisite-2.0.7/lib/rails_multisite/connection_management.rb:73:in `each_connection'
/var/www/discourse/lib/tasks/posts.rake:511:in `block in <top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => posts:missing_uploads
(See full trace by running task with --trace)

Any suggestions on how to resolve this?

The /var/www/discourse/public/uploads/default/original/3X/2/1/ path is indeed a directory and contains a number of files.

total 3188…
drwxr-xr-x  2 discourse www-data    4096 Jun 26 05:49 .
drwxr-xr-x 18 discourse www-data    4096 Dec 11  2017 ..
-rw-r--r--  1 discourse www-data    2411 Jan  4  2018 21071b37ddd34…8577415a35.kmactions
-rw-r--r--  1 discourse www-data   99179 May  3 22:25 21095a92b7d3a…8bb8fd2f5b.png
-rw-r--r--  1 discourse www-data   22783 Sep 27  2018 2114c84a89433…abd120e3e1.kmmacros
-rw-r--r--  1 discourse www-data   46340 May 17  2018 21164f5ec4756…90a0bbe07b.png
-rw-r--r--  1 discourse www-data   47651 May  8 16:46 211e85592e1a0…601255f5f3.png
-rw-r--r--  1 discourse www-data   67333 Jul 11  2018 2124ab5989748…e3e0d33e16.png
-rw-r--r--  1 discourse www-data     432 Dec 22  2017 2126c7f6da05a…c9a710d23d.kmactions
-rw-r--r--  1 discourse www-data  133395 Oct 26  2018 2129e51f0c84e…b1fc6127c8.png
-rw-r--r--  1 discourse www-data  129649 Oct 30  2017 212ae1b2c938b…3853968d85.png
-rw-r--r--  1 discourse www-data  213930 Jan 20  2018 21319003d36a9…f58405289c.png
-rw-r--r--  1 discourse www-data  103916 Oct 20  2018 213f32c7a3255…580eb8a189.png
-rw-r--r--  1 discourse www-data   24387 Dec 23  2017 21604d2266496…dd7334553b.kmmacros
-rw-r--r--  1 discourse www-data   27339 Dec 23  2017 21629ccc332d9…00ac5aabdc.kmmacros
-rw-r--r--  1 discourse www-data   52099 Dec 13  2018 216c06cf7a7ca…110c1694d5.jpeg
-rw-r--r--  1 discourse www-data    5975 Mar  3  2018 2171321edfe3c…1749a7bfc1.kmmacros
-rw-r--r--  1 discourse www-data   65151 Apr 17 21:29 217137bc6fe62…a12ec4e470.jpeg
-rw-r--r--  1 discourse www-data  363796 Aug  4  2018 217b5d67819af…6bb19c9ef3.png
-rw-r--r--  1 discourse www-data   36719 Jun 26  2018 2187ee6d05c9a…714884942e.png
-rw-r--r--  1 discourse discourse  44526 Jun 26 05:49 218834ab50dda…17bd7fa0d0.png
-rw-r--r--  1 discourse www-data    2252 Jan 20  2018 2198f4d6d83c6…be3fe5af41.kmactions
-rw-r--r--  1 discourse www-data   24262 Jan  4 09:43 21a5a59ea14d1…b52df95133.png
-rw-r--r--  1 discourse www-data   38080 Jul  2  2018 21be08e3b21b3…952a5020e2.png
-rw-r--r--  1 discourse www-data   57504 Dec 15  2017 21bee8898daa9…91ba94914c.png
-rw-r--r--  1 discourse www-data  158573 Apr  8 19:45 21c1a5428a787…566c290bbe.png
-rw-r--r--  1 discourse www-data  213153 Jul 27  2018 21c62d9d28152…3ed5a56700.jpg
-rw-r--r--  1 discourse www-data    5416 Jul  9  2018 21cedc56429e5…1ce3867e0e.png
-rw-r--r--  1 discourse www-data  133401 Oct 27  2017 21da4763f4a08…7ceb7f511e.png
-rw-r--r--  1 discourse www-data   52865 Apr  7  2018 21efa676099fc…bd916337aa.png
-rw-r--r--  1 discourse www-data   44587 May 30  2018 21f4718e1d732…c75d39ec19.jpg
-rw-r--r--  1 discourse www-data   27539 Jan 24 14:14 21fc92d58550a…9b4ff1a960.png
-rw-r--r--  1 discourse www-data  957839 Oct 25  2018 21fd7efbacd50…3b2b0b3fb2.jpeg

(I replaced some of the unique IDs characters with … for irrelevant security, ignore that).