wip
This commit is contained in:
parent
ac8b334eee
commit
04c101982f
6 changed files with 98 additions and 39 deletions
|
|
@ -2,7 +2,30 @@ import { API } from 'api'
|
|||
|
||||
export class Sync {
|
||||
static async tree() {
|
||||
let oldMax = 0
|
||||
try {
|
||||
const state = await nodeStore.getAppState('latest_sync')
|
||||
let oldMax = (state?.value ? state.value : 0)
|
||||
let newMax = 0
|
||||
|
||||
let offset = 0
|
||||
let res = { Continue: false }
|
||||
let batch = 0
|
||||
do {
|
||||
batch++
|
||||
console.log(`Batch #${batch}`)
|
||||
res = await API.query('POST', `/node/tree/${oldMax}/${offset}`, {})
|
||||
offset += res.Nodes.length
|
||||
newMax = res.MaxSeq
|
||||
await nodeStore.updateTreeRecords(res.Nodes)
|
||||
} while (res.Continue)
|
||||
|
||||
nodeStore.setAppState('latest_sync', Math.max(oldMax, newMax))
|
||||
} catch (e) {
|
||||
console.log('sync node tree', e)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
nodeStore.getAppState('latest_sync')
|
||||
.then(state => {
|
||||
if (state !== null) {
|
||||
|
|
@ -11,9 +34,22 @@ export class Sync {
|
|||
}
|
||||
return 0
|
||||
})
|
||||
.then(sequence => API.query('POST', `/node/tree/${sequence}`, {}))
|
||||
.then(res => nodeStore.updateTreeRecords(res.Nodes))
|
||||
.then(newMax => nodeStore.setAppState('latest_sync', Math.max(oldMax, newMax)))
|
||||
.catch(e => alert(e))
|
||||
.then(async sequence => {
|
||||
let offset = 0
|
||||
let res = { Continue: false }
|
||||
try {
|
||||
do {
|
||||
res = await API.query('POST', `/node/tree/${sequence}/${offset}`, {})
|
||||
offset += res.Nodes.length
|
||||
newMax = res.MaxSeq
|
||||
await nodeStore.updateTreeRecords(res.Nodes)
|
||||
} while (res.Continue)
|
||||
} catch (e) {
|
||||
return new Promise((_, reject) => reject(e))
|
||||
}
|
||||
})
|
||||
.then(() => nodeStore.setAppState('latest_sync', Math.max(oldMax, newMax)))
|
||||
.catch(e => console.log('sync', e))
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue