immich
immich copied to clipboard
refactor(server): use exiftool for file date metadata
Description
There are two redundant stat calls in metadata extraction that can instead use the exiftool output (tags starting with File are from the file system). Besides generally less file IO, it avoids taking up a thread (or waiting to acquire one) in the all-too-limited libuv threadpool. Based on #16450, which should be merged first.
I tested locally and it works as expected. However, there are cases in the library E2E tests where the tags are undefined. I don't know why this is. The PR falls back to calling .stat in this case to handle this.
This is the last of the PRs split off from #14277.
Throwing copilot reviewer at this as a test
Can you help resolve conflict? I can help with another round of testing
Conflicts are resolved