Scanner now scans one album at a time
This commit is contained in:
parent
fe370003c4
commit
d72a65be53
|
@ -2,7 +2,7 @@ export default function scanAll({ driver, scanUser }) {
|
|||
return new Promise((resolve, reject) => {
|
||||
let session = driver.session()
|
||||
|
||||
let allUserScans = []
|
||||
let usersToScan = []
|
||||
|
||||
session.run('MATCH (u:User) return u').subscribe({
|
||||
onNext: record => {
|
||||
|
@ -13,21 +13,21 @@ export default function scanAll({ driver, scanUser }) {
|
|||
return
|
||||
}
|
||||
|
||||
allUserScans.push(
|
||||
scanUser(user).catch(reason => {
|
||||
usersToScan.push(user)
|
||||
},
|
||||
onCompleted: async () => {
|
||||
session.close()
|
||||
|
||||
for (let user of usersToScan) {
|
||||
try {
|
||||
await scanUser(user)
|
||||
} catch (reason) {
|
||||
console.log(
|
||||
`User scan exception for user ${user.username} ${reason}`
|
||||
)
|
||||
reject(reason)
|
||||
})
|
||||
)
|
||||
},
|
||||
onCompleted: () => {
|
||||
session.close()
|
||||
|
||||
Promise.all(allUserScans).then(() => {
|
||||
resolve()
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
onError: error => {
|
||||
session.close()
|
||||
|
|
|
@ -7,7 +7,6 @@ export default async function scanUser({ driver, scanAlbum }, user) {
|
|||
console.log('Scanning user', user.username, 'at', user.path)
|
||||
|
||||
let foundAlbumIds = []
|
||||
let albumScanPromises = []
|
||||
|
||||
async function scanPath(path, parentAlbum) {
|
||||
console.log('SCAN PATH', path)
|
||||
|
@ -52,7 +51,7 @@ export default async function scanUser({ driver, scanAlbum }, user) {
|
|||
foundImageOrAlbum = true
|
||||
nextParentAlbum = album.id
|
||||
foundAlbumIds.push(album.id)
|
||||
albumScanPromises.push(scanAlbum(album))
|
||||
await scanAlbum(album)
|
||||
|
||||
continue
|
||||
}
|
||||
|
@ -108,7 +107,7 @@ export default async function scanUser({ driver, scanAlbum }, user) {
|
|||
}
|
||||
|
||||
foundAlbumIds.push(album.id)
|
||||
albumScanPromises.push(scanAlbum(album))
|
||||
await scanAlbum(album)
|
||||
|
||||
session.close()
|
||||
}
|
||||
|
@ -155,7 +154,5 @@ export default async function scanUser({ driver, scanAlbum }, user) {
|
|||
|
||||
session.close()
|
||||
|
||||
await Promise.all(albumScanPromises)
|
||||
|
||||
console.log('User scan complete')
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue