I have raised the log level (to info and then to debug), and it looks like the following is repeated in the logs:
2022-06-26T09:03:45.338Z sync-2866 debug DirectorySync(/home/photostructure/Pictures) percents(): { scannedPct: 0,
processed: 0,
pending: 0,
p: { completePct: 0, incompletePct: 0, scanningPct: 100 } }
2022-06-26T09:03:45.339Z sync-2866 debug DirectorySync(/home/photostructure/Pictures) .progress() { result:
{ '$ctor': 'models.Progress',
completePct: 0,
createdAt: 1656234171484,
dekJSON: '["Scanning /home/photostructure/Pictures"]',
hed: 'Processing',
hostname: 'apricot',
id: 9,
incompletePct: 0,
pid: 2866,
scanningPct: 100,
state: 'processing',
updatedAt: 1656234222339,
uri: 'pslib:/',
volume: '/home/photostructure/Pictures' } }
2022-06-26T09:03:45.430Z web-2860 debug AssetFile recentAssetIdsByUriRoot { method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ 1656234205430, 1, 0, 'pslib:/%', 10 ],
__knexQueryUid: '0UTJ2CUBetshLfqBQiMAZ',
sql:
'select distinct `AssetFile`.`assetId` from `AssetFile` inner join `Asset` on `Asset`.`id` = `AssetFile`.`assetId` where `AssetFile`.`updatedAt` > ? and `Asset`.`shown` = ? and `Asset`.`hidden` = ? and `AssetFile`.`uri` like ? order by `AssetFile`.`updatedAt` desc limit ?' }
2022-06-26T09:03:45.431Z web-2860 debug ProgressWithAssets recentProgressWithAssets() [ { id: 9,
uri: 'pslib:/',
volume: '/home/photostructure/Pictures',
state: 'processing',
hed: 'Processing',
dek: [ 'Scanning /home/photostructure/Pictures' ],
completePct: 0,
incompletePct: 0,
scanningPct: 100,
recentAssetIds: [] } ]
Am I right to think it’s a bit strange that scanningPct
is 100, and processed
and pending
are both 0?
For a higher-level view, here’s the recurring output at the info level:
LogTail(): Tailing /home/photostructure/.config/PhotoStructure/logs/**/*.log...
2022-06-26T08:54:00.726Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:09.728Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:18.731Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:27.732Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:36.735Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:45.736Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:54:53.289Z web-1832 info Service(web) --health-check { ok: [ 'Library and support directories are OK', 'Memory by web (25 MB) is OK' ],
warn: [ 'Nothing to scan: scanAllDrives is false and scanPaths is empty.⁸' ],
bad: [],
fail: [] }
2022-06-26T08:54:54.738Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:03.741Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:12.743Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:18.723Z web-1832 info WebService Setting up library router for /home/photostructure/Pictures
2022-06-26T08:55:18.731Z web-1832 info SpaRouter request { params: { '0': '' }, query: { seed: '38168' } }
2022-06-26T08:55:19.803Z web-1832 info respErrHandler Error serving /apple-touch-icon.png: Error: aborted
2022-06-26T08:55:19.858Z web-1832 info Handler.wrap() api/tag: request for []
2022-06-26T08:55:19.858Z web-1832 info Handler.wrap() getOrPrngSeed() '38168'
2022-06-26T08:55:21.746Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:30.750Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:33.454Z web-1832 info ffmpeg ffmpegVersion { version: '4.4.2-0ubuntu0.22.04.1',
code: 0,
stdout:
'ffmpeg version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2000-2021 the FFmpeg developers' }
2022-06-26T08:55:33.511Z web-1832 info SystemIds cpuid failed {}
2022-06-26T08:55:33.584Z web-1832 info SyncPaths pathsToSync [ { nativePath: '/home/photostructure/Pictures', uri: 'pslib:/' } ]
2022-06-26T08:55:33.586Z web-1832 info Operation getFirstPendingOp { result:
{ '$ctor': 'models.Operation',
createdAt: 1656174993523,
id: 8,
name: 'forceRestartSync',
updatedAt: 1656174993523,
value: '' },
pojo: { name: 'forceRestartSync' } }
2022-06-26T08:55:33.587Z web-1832 info Progress minCreatedAt { result: 1656174993523,
op:
{ '$ctor': 'models.Operation',
createdAt: 1656174993523,
id: 8,
name: 'forceRestartSync',
updatedAt: 1656174993523,
value: '' } }
2022-06-26T08:55:33.591Z web-1832 info Operation getFirstPendingOp { result:
{ '$ctor': 'models.Operation',
createdAt: 1656174993523,
id: 8,
name: 'forceRestartSync',
updatedAt: 1656174993523,
value: '' },
pojo: { name: 'forceRestartSync' } }
2022-06-26T08:55:33.591Z web-1832 info SyncPaths bestStable(): returning most recently updated { nativePath: '/home/photostructure/Pictures',
uri: 'pslib:/',
lastUpdatedAt: 1656233730746,
lastStartedAt: 1656174995365 }
2022-06-26T08:55:33.592Z web-1832 info Operation getFirstPendingOp { result:
{ '$ctor': 'models.Operation',
createdAt: 1656174993523,
id: 8,
name: 'forceRestartSync',
updatedAt: 1656174993523,
value: '' },
pojo: { name: 'forceRestartSync' } }
2022-06-26T08:55:39.754Z sync-1838 info TagSql runTagMaintenance()
2022-06-26T08:55:48.758Z sync-1838 info TagSql runTagMaintenance()
(I’m assuming the warning about there being nothing to scan is fine, because the pictures are in the library directory and the settings page in the web UI says that PhotoStructure always scans the library directory.)
It reads to me like PhotoStructure is indeed stuck for some reason, but I can’t tell what the reason is from these logs. My plan now is to pause this sync, and start a new one from the command line on a small directory of photos, to see if there’s any change.