mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
more robust handling of sync error, fixes #830
This commit is contained in:
parent
759e47bfcf
commit
a6cd25071e
1
.idea/.gitignore
generated
vendored
1
.idea/.gitignore
generated
vendored
@ -3,3 +3,4 @@
|
|||||||
|
|
||||||
# Datasource local storage ignored files
|
# Datasource local storage ignored files
|
||||||
/dataSources.local.xml
|
/dataSources.local.xml
|
||||||
|
/dataSources/
|
||||||
|
@ -277,7 +277,7 @@ async function saveLinks(note, content) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const foundLinks = [];
|
const foundLinks = [];
|
||||||
console.log("Scanning", content);
|
|
||||||
if (note.type === 'text') {
|
if (note.type === 'text') {
|
||||||
content = findImageLinks(content, foundLinks);
|
content = findImageLinks(content, foundLinks);
|
||||||
content = findInternalLinks(content, foundLinks);
|
content = findInternalLinks(content, foundLinks);
|
||||||
|
@ -71,22 +71,36 @@ function sendMessageToAllClients(message) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function fillInAdditionalProperties(sync) {throw new Error("AAA");
|
||||||
|
// fill in some extra data needed by the frontend
|
||||||
|
if (sync.entityName === 'attributes') {
|
||||||
|
sync.noteId = await sql.getValue(`SELECT noteId
|
||||||
|
FROM attributes
|
||||||
|
WHERE attributeId = ?`, [sync.entityId]);
|
||||||
|
} else if (sync.entityName === 'note_revisions') {
|
||||||
|
sync.noteId = await sql.getValue(`SELECT noteId
|
||||||
|
FROM note_revisions
|
||||||
|
WHERE noteRevisionId = ?`, [sync.entityId]);
|
||||||
|
} else if (sync.entityName === 'branches') {
|
||||||
|
const {noteId, parentNoteId} = await sql.getRow(`SELECT noteId, parentNoteId
|
||||||
|
FROM branches
|
||||||
|
WHERE branchId = ?`, [sync.entityId]);
|
||||||
|
|
||||||
|
sync.noteId = noteId;
|
||||||
|
sync.parentNoteId = parentNoteId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async function sendPing(client) {
|
async function sendPing(client) {
|
||||||
const syncData = require('./sync_table').getEntitySyncsNewerThan(lastAcceptedSyncIds[client.id]);
|
const syncData = require('./sync_table').getEntitySyncsNewerThan(lastAcceptedSyncIds[client.id]);
|
||||||
|
|
||||||
for (const sync of syncData) {
|
for (const sync of syncData) {
|
||||||
// fill in some extra data needed by the frontend
|
try {
|
||||||
if (sync.entityName === 'attributes') {
|
await fillInAdditionalProperties(sync);
|
||||||
sync.noteId = await sql.getValue(`SELECT noteId FROM attributes WHERE attributeId = ?`, [sync.entityId]);
|
|
||||||
}
|
}
|
||||||
else if (sync.entityName === 'note_revisions') {
|
catch (e) {
|
||||||
sync.noteId = await sql.getValue(`SELECT noteId FROM note_revisions WHERE noteRevisionId = ?`, [sync.entityId]);
|
log.error("Could not fill additional properties for sync " + JSON.stringify(sync)
|
||||||
}
|
+ " because of error: " + e.message + ": " + e.stack);
|
||||||
else if (sync.entityName === 'branches') {
|
|
||||||
const {noteId, parentNoteId} = await sql.getRow(`SELECT noteId, parentNoteId FROM branches WHERE branchId = ?`, [sync.entityId]);
|
|
||||||
|
|
||||||
sync.noteId = noteId;
|
|
||||||
sync.parentNoteId = parentNoteId;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user