tweaks in sync timeout handling

This commit is contained in:
zadam 2020-07-28 23:29:12 +02:00
parent 5f4a84d967
commit 8a57960c6e
3 changed files with 10 additions and 4 deletions

View file

@ -51,7 +51,7 @@ async function initNotSyncedOptions(initialized, startNotePath = 'root', opts =
await optionService.createOption('theme', opts.theme || 'white', false);
await optionService.createOption('syncServerHost', opts.syncServerHost || '', false);
await optionService.createOption('syncServerTimeout', '5000', false);
await optionService.createOption('syncServerTimeout', '60000', false);
await optionService.createOption('syncProxy', opts.syncProxy || '', false);
}
@ -116,4 +116,4 @@ module.exports = {
initSyncedOptions,
initNotSyncedOptions,
initStartupOptions
};
};

View file

@ -132,6 +132,9 @@ async function pullSync(syncContext) {
const startDate = Date.now();
const resp = await syncRequest(syncContext, 'GET', changesUri);
const pulledDate = Date.now();
stats.outstandingPulls = resp.maxSyncId - lastSyncedPull;
if (stats.outstandingPulls < 0) {
@ -162,7 +165,7 @@ async function pullSync(syncContext) {
await setLastSyncedPull(rows[rows.length - 1].sync.id);
});
log.info(`Pulled and updated ${rows.length} changes from ${changesUri} in ${Date.now() - startDate}ms`);
log.info(`Pulled ${rows.length} changes in ${pulledDate - startDate}ms from ${changesUri} and applied them in ${Date.now() - pulledDate}ms`);
}
if (appliedPulls > 0) {

View file

@ -218,6 +218,9 @@ function formatDownloadTitle(filename, type, mime) {
}
function timeLimit(promise, limitMs) {
// better stack trace if created outside of promise
const error = new Error('Process exceeded time limit ' + limitMs);
return new Promise((res, rej) => {
let resolved = false;
@ -229,7 +232,7 @@ function timeLimit(promise, limitMs) {
setTimeout(() => {
if (!resolved) {
rej(new Error('Process exceeded time limit ' + limitMs));
rej(error);
}
}, limitMs);
});