Webreaper / Damselfly

Damselfly is a server-based Photograph Management app. The goal of Damselfly is to index an extremely large collection of images, and allow easy search and retrieval of those images, using metadata such as the IPTC keyword tags, as well as the folder and file names. Damselfly includes support for object/face detection.
GNU General Public License v3.0
1.5k stars 77 forks source link

No previews #119

Closed tborychowski closed 3 years ago

tborychowski commented 3 years ago

I used the docker-compose example from the readme and started the container (providing a folder from my Synology with pictures). It has loaded the images and parsed the tags (as I can see the folders and other metadata displaying in the UI). However the photo thumbnails do not show up:

Screenshot 2021-03-27 at 20 21 43

and the log shows this:

[click to expand] ``` damselfly | [20:14:27.787-0082-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [20:14:27.804-0082-ERR] Unhandled exception in circuit 'csckAMLbc-Ah1-YQc2XIwEDxyjei3-47kRlT5Ifyv90'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [20:14:28.549-0008-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [20:14:28.552-0008-ERR] Unhandled exception in circuit 'Uv5Pu9elipjbeR_OAGMylbA1nqFJ_Qb_NZaEdPDQguc'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [20:14:29.322-0083-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [20:14:29.325-0083-ERR] Unhandled exception in circuit 'OawJfdR6PPK_pnMUA8FCaJyTMh3i8TzK4SG671f--lQ'. ```
Webreaper commented 3 years ago

Thanks for the report. As discussed:

dupuik commented 3 years ago

I thought I was the only one! I replied to the author on Reddit (if that's not you) that I was looking for exactly this, just a simple scanner/thumbnail/gallery view of large photo folders (50K+ images). I've tried about 7 app suggestions on Proxmox->Debian->Docker on a Dell R710 with a CIFS share mounted from a Synology array. Damselfly didn't work for me either, even after I installed twice from scratch and let it soak for over 24 hours. Never got thumbnails, justlots of errors in the logs about the generator crashing, etc. I didn't think of looking for a GitHub repo to raise an issue in (I'm not a developer or work in IT). I look forward to a new release!

Webreaper commented 3 years ago

Oh, weird. Can you attach a complete log file? Thanks. (author on reddit is me)

tborychowski commented 3 years ago

Yep, the same here. After 11 hours of running I still see no thumbnails.

Screenshot 2021-03-28 at 10 09 43

I'm using a similar setup to @dupuik: CIFS folder from synology mounted on a ubuntu server. Have tried a lot of galleries and none had any problems with this (currently using pigallery).

Are the thumbs saved to the same folder? (as I have my synology folder mounted in docker as read only)

tborychowski commented 3 years ago

Here's my full log (folder names redacted for privacy 😉):

[click to expand] ``` Attaching to damselfly damselfly | Increasing inotify watch limit... damselfly | /damselfly-entrypoint.sh: line 10: sudo: not found damselfly | Preparing to start Damselfly.... damselfly | dotnet Damselfly.Web.dll /pictures --config=/config damselfly | Starting Damselfly.... damselfly | [21:49:06.861-0001-INF] === Damselfly Log Started === damselfly | [21:49:06.878-0001-INF] Log folder: /config/logs damselfly | [21:49:06.878-0001-INF] LogLevel: Information damselfly | [21:49:06.880-0001-INF] Initialised thumbnails storage at /pictures/FolderX damselfly | [21:49:06.880-0001-INF] Startup State: damselfly | [21:49:06.880-0001-INF] Damselfly Ver: 1.3.1.0 damselfly | [21:49:06.881-0001-INF] CLR Ver: 5.0.0 damselfly | [21:49:06.881-0001-INF] OS: Unix 5.4.0.67 damselfly | [21:49:06.881-0001-INF] Processor Count: 8 damselfly | [21:49:06.881-0001-INF] Read-only mode: False damselfly | [21:49:06.881-0001-INF] Synology = False damselfly | [21:49:06.881-0001-INF] Indexing = True damselfly | [21:49:06.881-0001-INF] ThumbGen = True damselfly | [21:49:06.881-0001-INF] Images Root set as /pictures damselfly | [21:49:06.882-0001-INF] Created DB folder: /config/db damselfly | [21:49:06.882-0001-INF] Sqlite Database location: /config/db/damselfly.db damselfly | [21:49:06.971-0001-INF] Running Sqlite DB migrations... damselfly | [21:49:07.349-0001-INF] Running Sqlite DB optimisation... damselfly | [21:49:07.363-0001-INF] DB optimisation complete. damselfly | [21:49:07.364-0001-INF] Starting Damselfly Services damselfly | [21:49:07.366-0001-INF] Task scheduler started. damselfly | [21:49:07.366-0001-INF] Executing: exiftool -ver damselfly | [21:49:07.456-0001-INF] ExifVersion: 11.99 damselfly | damselfly | [21:49:07.518-0001-INF] Wordpress integration was not configured. damselfly | [21:49:07.518-0001-INF] Initialised SkiaSharpProcessor for thumbnail processing. damselfly | [21:49:07.518-0001-INF] Starting Damselfly Webserver damselfly | [21:49:07.676-0001-WRN] Storing keys in a directory '/root/.aspnet/DataProtection-Keys' that may not be persisted outside of the container. Protected data will be unavailable when container is destroyed. damselfly | [21:49:07.682-0001-INF] Created downloads folder: /app/wwwroot/downloads damselfly | [21:49:07.683-0001-INF] Preloading config, folders, images and selection... damselfly | [21:49:07.733-0001-INF] Search: 0 images found in search query within 48ms (Tags: 0ms) damselfly | [21:49:07.733-0001-INF] Status: Found at least 0 images that match the search query. damselfly | [21:49:07.804-0001-INF] Started indexing service. damselfly | [21:49:07.804-0001-INF] Started indexing service. damselfly | [21:49:07.804-0001-INF] Preloading complete damselfly | [21:49:07.805-0001-INF] Adding scheduled task: CleanupJobs every 1 hour damselfly | [21:49:07.810-IndexingThread-INF] Status: Full Indexing starting... damselfly | [21:49:07.813-0008-INF] Starting thread for task CleanupJobs damselfly | [21:49:07.813-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [21:49:07.813-CleanupJobsThread-WRN] Cleaning up download zips older than 03/27/2021 20:49:07 damselfly | [21:49:07.831-IndexingThread-INF] Adding new folder: /pictures damselfly | [21:49:07.833-0001-WRN] No XML encryptor configured. Key {0f306ae6-02b9-4001-be3d-fceb4a9c9645} may be persisted to storage in unencrypted form. damselfly | [21:49:07.856-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:07.865-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:07.869-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | Hosting environment: Production damselfly | Content root path: /app damselfly | Now listening on: http://[::]:6363 damselfly | Application started. Press Ctrl+C to shut down. damselfly | [21:49:07.880-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:07.887-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:07.890-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:07.897-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:07.940-IndexingThread-INF] Status: Indexed folder FolderX: processed 13 images (13 new, 0 updated, 0 removed) in 0.04ms. damselfly | [21:49:07.943-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:07.951-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:07.973-IndexingThread-INF] Status: Indexed folder FolderX: processed 33 images (33 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:07.976-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:07.983-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.004-IndexingThread-INF] Status: Indexed folder FolderX: processed 34 images (34 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.008-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.016-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.034-IndexingThread-INF] Status: Indexed folder FolderX: processed 17 images (17 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.037-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.045-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.077-IndexingThread-INF] Status: Indexed folder FolderX: processed 36 images (36 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.081-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.104-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.157-IndexingThread-INF] Status: Indexed folder FolderX: processed 85 images (85 new, 0 updated, 0 removed) in 0.04ms. damselfly | [21:49:08.162-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.178-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.239-IndexingThread-INF] Status: Indexed folder FolderX: processed 157 images (157 new, 0 updated, 0 removed) in 0.05ms. damselfly | [21:49:08.246-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.282-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.312-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.316-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.337-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.365-IndexingThread-INF] Status: Indexed folder FolderX: processed 55 images (55 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.368-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.384-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.408-IndexingThread-INF] Status: Indexed folder FolderX: processed 33 images (33 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.410-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.424-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.432-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:08.434-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.444-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.465-IndexingThread-INF] Status: Indexed folder FolderX: processed 24 images (24 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.468-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.483-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.513-IndexingThread-INF] Status: Indexed folder FolderX: processed 20 images (20 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.516-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.542-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.558-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.561-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.576-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.605-IndexingThread-INF] Status: Indexed folder FolderX: processed 69 images (69 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.607-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.633-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.653-IndexingThread-INF] Status: Indexed folder FolderX: processed 11 images (11 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.655-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.672-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.680-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:08.683-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.689-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.720-IndexingThread-INF] Status: Indexed folder FolderX: processed 15 images (15 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.722-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.730-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.756-IndexingThread-INF] Status: Indexed folder FolderX: processed 56 images (56 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.758-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.775-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.790-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.793-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.799-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.828-IndexingThread-INF] Status: Indexed folder FolderX: processed 52 images (52 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.831-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.845-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.868-IndexingThread-INF] Status: Indexed folder FolderX: processed 25 images (25 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.871-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.885-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.902-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:08.905-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.927-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:08.958-IndexingThread-INF] Status: Indexed folder FolderX: processed 41 images (41 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:08.961-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:08.976-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.026-IndexingThread-INF] Status: Indexed folder FolderX: processed 75 images (75 new, 0 updated, 0 removed) in 0.04ms. damselfly | [21:49:09.030-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.047-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.065-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.068-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.094-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.120-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.123-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.140-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.183-IndexingThread-INF] Status: Indexed folder FolderX: processed 71 images (71 new, 0 updated, 0 removed) in 0.04ms. damselfly | [21:49:09.189-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.213-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.279-IndexingThread-INF] Status: Indexed folder FolderX: processed 190 images (190 new, 0 updated, 0 removed) in 0.06ms. damselfly | [21:49:09.282-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.298-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.317-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.320-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.337-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.371-IndexingThread-INF] Status: Indexed folder FolderX: processed 19 images (19 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.374-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.391-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.411-IndexingThread-INF] Status: Indexed folder FolderX: processed 33 images (33 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.414-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.421-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.431-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.433-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.441-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.471-IndexingThread-INF] Status: Indexed folder FolderX: processed 59 images (59 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.473-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.481-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.499-IndexingThread-INF] Status: Indexed folder FolderX: processed 36 images (36 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.501-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.508-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.520-IndexingThread-INF] Status: Indexed folder FolderX: processed 13 images (13 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.521-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.528-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.543-IndexingThread-INF] Status: Indexed folder FolderX: processed 13 images (13 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.545-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.553-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.572-IndexingThread-INF] Status: Indexed folder FolderX: processed 24 images (24 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.573-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.581-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.596-IndexingThread-INF] Status: Indexed folder FolderX: processed 19 images (19 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.598-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.605-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.624-IndexingThread-INF] Status: Indexed folder FolderX: processed 32 images (32 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.626-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.632-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.642-IndexingThread-INF] Status: Indexed folder FolderX: processed 2 images (2 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.644-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.651-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.659-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.660-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.667-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.683-IndexingThread-INF] Status: Indexed folder FolderX: processed 19 images (19 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.686-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.693-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.706-IndexingThread-INF] Status: Indexed folder FolderX: processed 5 images (5 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.709-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.717-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.726-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.731-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.739-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.755-IndexingThread-INF] Status: Indexed folder FolderX: processed 14 images (14 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.757-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.765-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.780-IndexingThread-INF] Status: Indexed folder FolderX: processed 16 images (16 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.782-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.788-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.798-IndexingThread-INF] Status: Indexed folder FolderX: processed 0 images (0 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.801-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.809-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.841-IndexingThread-INF] Status: Indexed folder FolderX: processed 103 images (103 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.843-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.850-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.868-IndexingThread-INF] Status: Indexed folder FolderX: processed 34 images (34 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.870-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.878-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.900-IndexingThread-INF] Status: Indexed folder FolderX: processed 47 images (47 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.902-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.909-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.927-IndexingThread-INF] Status: Indexed folder FolderX: processed 21 images (21 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:09.931-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.939-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.967-IndexingThread-INF] Status: Indexed folder FolderX: processed 87 images (87 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:09.968-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.976-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:09.987-IndexingThread-INF] Status: Indexed folder FolderX: processed 1 images (1 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:09.990-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:09.998-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:10.016-IndexingThread-INF] Status: Indexed folder FolderX processed 20 images (20 new, 0 updated, 0 removed) in 0.01ms. damselfly | [21:49:10.019-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:10.028-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:10.057-IndexingThread-INF] Status: Indexed folder FolderX: processed 84 images (84 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:10.060-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:10.105-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:10.133-IndexingThread-INF] Status: Indexed folder FolderX: processed 57 images (57 new, 0 updated, 0 removed) in 0.02ms. damselfly | [21:49:10.135-IndexingThread-INF] Adding new folder: /pictures/FolderX damselfly | [21:49:10.143-IndexingThread-INF] Folders added or removed - re-loading cached folder list... damselfly | [21:49:10.157-IndexingThread-INF] Status: Indexed folder FolderX: processed 7 images (7 new, 0 updated, 0 removed) in 0.00ms. damselfly | [21:49:10.157-IndexingThread-INF] Status: Full Indexing Complete. damselfly | [21:49:22.651-0080-INF] Search: 100 images found in search query within 104ms (Tags: 92ms) damselfly | [21:49:22.651-0080-INF] Status: Found at least 100 images that match the search query. damselfly | [21:50:13.249-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:50:18.604-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:50:24.028-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:50:29.390-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:50:34.738-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:50:40.090-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:50:45.558-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:50:50.940-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:50:56.393-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:51:01.791-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:51:07.183-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.06ms, tags: 0.00ms). damselfly | [21:51:07.835-ThumbnailThread-INF] Starting thread for Priority Scheuler 0... damselfly | [21:51:12.568-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:51:17.926-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:51:18.118-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.19ms, tags: 0.00ms). damselfly | [21:51:23.487-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:51:28.039-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:51:28.410-0090-INF] Search: 100 images found in search query within 104ms (Tags: 84ms) damselfly | [21:51:28.410-0090-INF] Status: Found at least 200 images that match the search query. damselfly | [21:51:28.866-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:51:29.707-0092-INF] Search: 100 images found in search query within 92ms (Tags: 84ms) damselfly | [21:51:29.707-0092-INF] Status: Found at least 300 images that match the search query. damselfly | [21:51:30.606-0090-INF] Search: 100 images found in search query within 96ms (Tags: 84ms) damselfly | [21:51:30.606-0090-INF] Status: Found at least 400 images that match the search query. damselfly | [21:51:31.561-0082-INF] Search: 100 images found in search query within 92ms (Tags: 84ms) damselfly | [21:51:31.561-0082-INF] Status: Found at least 500 images that match the search query. damselfly | [21:51:32.383-0088-INF] Search: 100 images found in search query within 96ms (Tags: 88ms) damselfly | [21:51:32.383-0088-INF] Status: Found at least 600 images that match the search query. damselfly | [21:51:33.145-0085-INF] Search: 100 images found in search query within 92ms (Tags: 88ms) damselfly | [21:51:33.145-0085-INF] Status: Found at least 700 images that match the search query. damselfly | [21:51:33.857-0080-INF] Search: 100 images found in search query within 92ms (Tags: 84ms) damselfly | [21:51:33.857-0080-INF] Status: Found at least 800 images that match the search query. damselfly | [21:51:34.293-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.06ms, tags: 0.04ms). damselfly | [21:51:34.502-0085-INF] Search: 100 images found in search query within 96ms (Tags: 88ms) damselfly | [21:51:34.502-0085-INF] Status: Found at least 900 images that match the search query. damselfly | [21:51:35.077-0085-INF] Search: 100 images found in search query within 96ms (Tags: 84ms) damselfly | [21:51:35.077-0085-INF] Status: Found at least 1000 images that match the search query. damselfly | [21:51:35.682-0090-INF] Search: 100 images found in search query within 92ms (Tags: 88ms) damselfly | [21:51:35.683-0090-INF] Status: Found at least 1100 images that match the search query. damselfly | [21:51:36.280-0082-INF] Search: 100 images found in search query within 96ms (Tags: 88ms) damselfly | [21:51:36.280-0082-INF] Status: Found at least 1200 images that match the search query. damselfly | [21:51:36.799-0085-INF] Search: 100 images found in search query within 96ms (Tags: 88ms) damselfly | [21:51:36.799-0085-INF] Status: Found at least 1300 images that match the search query. damselfly | [21:51:37.393-0082-INF] Search: 100 images found in search query within 92ms (Tags: 84ms) damselfly | [21:51:37.393-0082-INF] Status: Found at least 1400 images that match the search query. damselfly | [21:51:37.959-0083-INF] Search: 100 images found in search query within 100ms (Tags: 92ms) damselfly | [21:51:37.959-0083-INF] Status: Found at least 1500 images that match the search query. damselfly | [21:51:38.135-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:51:38.509-0083-INF] Search: 100 images found in search query within 92ms (Tags: 80ms) damselfly | [21:51:38.509-0083-INF] Status: Found at least 1600 images that match the search query. damselfly | [21:51:39.082-0088-INF] Search: 100 images found in search query within 104ms (Tags: 96ms) damselfly | [21:51:39.082-0088-INF] Status: Found at least 1700 images that match the search query. damselfly | [21:51:39.625-0090-INF] Search: 100 images found in search query within 88ms (Tags: 80ms) damselfly | [21:51:39.625-0090-INF] Status: Found at least 1800 images that match the search query. damselfly | [21:51:39.678-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.01ms). damselfly | [21:51:40.151-0085-INF] Search: 77 images found in search query within 76ms (Tags: 64ms) damselfly | [21:51:40.151-0085-INF] Status: Found at least 1877 images that match the search query. damselfly | [21:51:45.100-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:51:48.240-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:51:50.474-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:51:55.869-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.03ms, tags: 0.01ms). damselfly | [21:51:58.351-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:01.337-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.10ms, tags: 0.00ms). damselfly | [21:52:06.695-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.03ms, tags: 0.00ms). damselfly | [21:52:08.457-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:12.090-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:52:17.516-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.03ms, tags: 0.01ms). damselfly | [21:52:18.566-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:22.875-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.06ms, tags: 0.00ms). damselfly | [21:52:26.867-0102-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [21:52:26.880-0102-ERR] Unhandled exception in circuit 'iOnDi2oGIp9-LH8ncVQfbLvk-q4EgteZcoJF0zYvLDA'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [21:52:28.197-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:52:28.678-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:33.587-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.06ms, tags: 0.00ms). damselfly | [21:52:38.792-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:38.932-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:52:44.362-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.01ms). damselfly | [21:52:48.910-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:52:49.757-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:52:50.042-0103-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [21:52:50.044-0103-ERR] Unhandled exception in circuit 'WS9I2RDoD_cem3o3mvcH-PG3D1ygVS5jnQC_GsUAG04'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [21:52:55.127-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:52:59.021-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:00.502-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:53:05.881-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.01ms). damselfly | [21:53:09.130-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:11.296-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.06ms, tags: 0.00ms). damselfly | [21:53:16.637-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:53:19.242-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:22.020-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:53:27.396-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:53:29.353-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:32.801-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.01ms). damselfly | [21:53:38.183-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.03ms, tags: 0.00ms). damselfly | [21:53:39.463-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:43.568-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:53:48.964-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:53:49.573-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:54.439-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:53:59.681-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:53:59.871-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.05ms, tags: 0.00ms). damselfly | [21:54:03.651-MetaDataThread-INF] Completed metadata scan batch (70 images in 3 seconds, save: 0.04ms, tags: 0.00ms). damselfly | [21:54:03.998-MetaDataThread-INF] Completed metadata scan batch (6 images in 0.34ms, save: 0.02ms, tags: 0.00ms). damselfly | [21:54:09.787-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:54:19.901-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:54:30.018-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:54:40.137-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:54:50.258-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:55:00.371-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:55:09.415-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.03ms, tags: 0.00ms). damselfly | [21:55:10.484-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:55:14.748-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:55:20.138-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.01ms). damselfly | [21:55:20.608-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:55:25.522-MetaDataThread-INF] Completed metadata scan batch (100 images in 5 seconds, save: 0.02ms, tags: 0.01ms). damselfly | [21:55:28.010-MetaDataThread-INF] Completed metadata scan batch (46 images in 2 seconds, save: 0.02ms, tags: 0.00ms). damselfly | [21:55:30.717-ThumbnailThread-INF] Status: Completed thumbnail generation batch (100 images in 10 seconds). damselfly | [21:55:40.228-ThumbnailThread-INF] Status: Completed thumbnail generation batch (94 images in 9 seconds). damselfly | [22:30:18.088-0080-INF] Search: 0 images found in search query within 4ms (Tags: 0ms) damselfly | [22:30:18.088-0080-INF] Status: Found at least 1877 images that match the search query. damselfly | [22:30:51.952-0007-INF] Search: 0 images found in search query within 4ms (Tags: 0ms) damselfly | [22:30:51.952-0007-INF] Status: Found at least 1877 images that match the search query. damselfly | [22:30:53.247-0009-INF] Search: 0 images found in search query within 4ms (Tags: 0ms) damselfly | [22:30:53.247-0009-INF] Status: Found at least 1877 images that match the search query. damselfly | [22:31:04.220-0097-INF] Search: 100 images found in search query within 96ms (Tags: 84ms) damselfly | [22:31:04.220-0097-INF] Status: Found at least 100 images that match the search query. damselfly | [22:31:10.798-0007-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:31:10.802-0007-ERR] Unhandled exception in circuit 'cX1S79l1HuUvq5f1XTpmQaC1KeGewtcI-aMX1nQtYNk'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:31:15.327-0081-INF] Search: 75 images found in search query within 80ms (Tags: 64ms) damselfly | [22:31:15.327-0081-INF] Status: Found at least 75 images that match the search query. damselfly | [22:31:16.370-0007-INF] Search: 41 images found in search query within 40ms (Tags: 32ms) damselfly | [22:31:16.370-0007-INF] Status: Found at least 41 images that match the search query. damselfly | [22:31:17.400-0009-INF] Search: 13 images found in search query within 20ms (Tags: 12ms) damselfly | [22:31:17.400-0009-INF] Status: Found at least 13 images that match the search query. damselfly | [22:31:52.525-0097-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:31:52.526-0097-ERR] Unhandled exception in circuit 'BTnhdmSYHk-h5X0Cf32ku7jefz3m33CHfjSw_jXx2ZM'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:41:19.878-0121-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:41:19.880-0121-ERR] Unhandled exception in circuit '9Irtaz6xqq4nGz5vRDyKVYVlFbgJlRY6vljVp0zxEnQ'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [22:50:07.805-0133-INF] Starting thread for task CleanupJobs damselfly | [22:50:07.806-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [22:50:07.806-CleanupJobsThread-WRN] Cleaning up download zips older than 03/27/2021 21:50:07 damselfly | [23:51:07.804-0127-INF] Starting thread for task CleanupJobs damselfly | [23:51:07.805-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [23:51:07.805-CleanupJobsThread-WRN] Cleaning up download zips older than 03/27/2021 22:51:07 damselfly | [00:51:07.806-0089-INF] Starting thread for task CleanupJobs damselfly | [00:51:07.807-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [00:51:07.807-CleanupJobsThread-WRN] Cleaning up download zips older than 03/27/2021 23:51:07 damselfly | [01:52:07.805-0137-INF] Starting thread for task CleanupJobs damselfly | [01:52:07.806-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [01:52:07.806-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 00:52:07 damselfly | [02:53:07.803-0092-INF] Starting thread for task CleanupJobs damselfly | [02:53:07.803-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [02:53:07.803-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 01:53:07 damselfly | [03:53:07.805-0140-INF] Starting thread for task CleanupJobs damselfly | [03:53:07.806-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [03:53:07.806-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 02:53:07 damselfly | [04:54:07.803-0164-INF] Starting thread for task CleanupJobs damselfly | [04:54:07.804-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [04:54:07.804-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 03:54:07 damselfly | [05:54:07.806-0149-INF] Starting thread for task CleanupJobs damselfly | [05:54:07.806-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [05:54:07.807-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 04:54:07 damselfly | [06:54:07.807-0162-INF] Starting thread for task CleanupJobs damselfly | [06:54:07.808-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [06:54:07.808-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 05:54:07 damselfly | [07:55:07.804-0151-INF] Starting thread for task CleanupJobs damselfly | [07:55:07.805-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [07:55:07.805-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 06:55:07 damselfly | [08:56:07.804-0159-INF] Starting thread for task CleanupJobs damselfly | [08:56:07.805-CleanupJobsThread-INF] Starting execution for task CleanupJobs damselfly | [08:56:07.805-CleanupJobsThread-WRN] Cleaning up download zips older than 03/28/2021 07:56:07 damselfly | [09:09:30.894-0161-INF] Search: 0 images found in search query within 0ms (Tags: 0ms) damselfly | [09:09:30.894-0161-INF] Status: Found at least 13 images that match the search query. damselfly | [09:09:32.024-0156-INF] Search: 0 images found in search query within 4ms (Tags: 0ms) damselfly | [09:09:32.024-0156-INF] Status: Found at least 13 images that match the search query. damselfly | [09:09:33.510-0159-INF] Search: 100 images found in search query within 92ms (Tags: 84ms) damselfly | [09:09:33.510-0159-INF] Status: Found at least 100 images that match the search query. damselfly | [09:10:31.886-0086-WRN] Unhandled exception rendering component: A task was canceled. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) damselfly | [09:10:31.887-0086-ERR] Unhandled exception in circuit 'RDm16wWiGtjOT778xO5Aa_QgmjLsoDG47P31n23HbQg'. damselfly | System.Threading.Tasks.TaskCanceledException: A task was canceled. damselfly | at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) damselfly | at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args) damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.VirtualizeJsInterop.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize`1.DisposeAsync() damselfly | at Microsoft.AspNetCore.Components.RenderTree.Renderer.g__HandleAsyncExceptions|52_0(List`1 tasks) ```
Webreaper commented 3 years ago

Did it create the thumbnail folder (.thumbnails in the root folder)? Wondering if it's a write perms issue.

Webreaper commented 3 years ago

Ah, just seen your comment about the folder being mounted as RO. That'll do it. Currently the thumbs are written to a .thumbnails folder in the root folder of where the pictures are. But I've never been happy about that as some people prefer the pics folder to be RO until they trust the software. So one of my todos is to change it so the thumbs are put in the /config folder, which makes more sense. Downside is for people running it, they'll need to move the thumbs.

But anyway, I'll try and make that change to the Docker build and push an update later today or tomorrow.

Also, the logs should indicate if the thumbs can't be written, but it looks like that isn't happening. Will fix.

Webreaper commented 3 years ago

Damselfly can modify your originals - to add/change/remove IPTC tags on your images (assuming you use that function in Damselfly). However, it's all done via Exiftool so will only modify the exif data.

I'm doing a new version which will put the thumbs in the config folder, which makes much more sense and means you can leave the photos RO. Should be ready later today or tomorrow.

tborychowski commented 3 years ago

@Webreaper wouldn't it make more sense (for docker users) to use a separate mount for the thumbs folder? e.g.:

Webreaper commented 3 years ago

Yeah, I was going to provide a second mount for the thumbnails, which will default to /config/thumbs if you don't explicitly override it.

Webreaper commented 3 years ago

Looking at it now. Funny that we both worked at the same place!

Webreaper commented 3 years ago

Okay, so I've put in some fixes to make this work a bit more reliably, and to do on-demand thumbnail generation (rather than it all being in batch). I've also updated docker so you can specify a volume for thumbs. I've pushed it to the dev channel, so you can try something like this:

docker run \
  --name damselfly \
  --restart unless-stopped \
  -v /volume1/dockerdata/damselfly:/config \
  -v /volume1/dockerdata/damselfly/thumbs:/thumbs \
  -v /volume1/photo:/pictures \
  -p 6362:6363 \
  -d \
  webreaper/damselfly:dev

Let me know if it works a bit better!

dupuik commented 3 years ago

Outstanding! Trying it now as a fresh install. To see how fast it goes and if I get thumbnails to display on the main page.

@.***:/docker/damselfly# grep "model name" /proc/cpuinfo model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz

@.***:/docker/damselfly# df -h|grep photoalbum //vangogh/photoalbum 913G 395G 519G 44% /vangogh/photoalbum

@.***:/docker/damselfly# w 22:39:08 up 10 days, 2:33, 1 user, load average: 0.49, 0.27, 0.19

@.***:/docker/damselfly# cat docker-compose.yml services: damselfly: image: webreaper/damselfly:dev container_name: damselfly restart: unless-stopped volumes:

On Sun, Mar 28, 2021, 10:16 PM Mark Otway @.***> wrote:

Okay, so I've put in some fixes to make this work a bit more reliably, and to do on-demand thumbnail generation (rather than it all being in batch). I've also updated docker so you can specify a volume for thumbs. I've pushed it to the dev channel, so you can try something like this:

docker run \ --name damselfly \ --restart unless-stopped \ -v /volume1/dockerdata/damselfly:/config \ -v /volume1/dockerdata/damselfly/thumbs:/thumbs \ -v /volume1/photo:/pictures \ -p 6362:6363 \ -d \ webreaper/damselfly:dev

Let me know if it works a bit better!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Webreaper/Damselfly/issues/119#issuecomment-809019628, or unsubscribe https://github.com/notifications/unsubscribe-auth/APBUYSP676IJE4CO64JISC3TF7WKLANCNFSM4Z5IHT5Q .

dupuik commented 3 years ago

Should I see some thumbs now? It's been running for 4 hours. I added it to my home start page as an official app now ;) Screenshot_20210328-230240 Screenshot_20210329-021738 Screenshot_20210329-021835

tborychowski commented 3 years ago

@Webreaper dev tag works for me, thumbnails are generating almost instantly! thanks!

Webreaper commented 3 years ago

Great to hear, @tborychowski .

@dupuik Yry shift-refreshing the page, and you should see thumbs.

dupuik commented 3 years ago

@dupuik Yry shift-refreshing the page, and you should see thumbs.

Finally! After ~8 installs, using the dev image now, tweaking the environmental variables (SYNO_THUMBS was preventing any thumbs from showing up) and mounting the Synology share read-write on the Proxmox->Debian->Docker host, I'm getting thumbs when I clear cache and load the main page after the latest install from scratch!!! I'm seeing ALL my photos in one place for the first time since Google Picasa shut down years ago!!!

tborychowski commented 3 years ago

Closing it now, as it's fixed. Thanks for a quick response and the fix!

Webreaper commented 3 years ago

FYI, this has now been released (https://github.com/Webreaper/Damselfly/releases/tag/1.6.6-beta) so you can switch back to :latest from :dev tag with your docker configs.

dupuik commented 3 years ago

I'll try it again. I noticed weird behavior with thumbs even after 2nd fresh install 2 weeks ago.

On Thu, Apr 8, 2021, 6:35 PM Mark Otway @.***> wrote:

FYI, this has now been released ( https://github.com/Webreaper/Damselfly/releases/tag/1.6.6-beta) so you can switch back to :latest from :dev tag with your docker configs.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Webreaper/Damselfly/issues/119#issuecomment-816275934, or unsubscribe https://github.com/notifications/unsubscribe-auth/APBUYSJ4A2L7D56KLMAHWGDTHYVS5ANCNFSM4Z5IHT5Q .