mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 18:36:30 +01:00 
			
		
		
		
	small refactors in sync
This commit is contained in:
		| @@ -8,7 +8,7 @@ const becca = require("../becca/becca"); | |||||||
|  |  | ||||||
| let maxEntityChangeId = 0; | let maxEntityChangeId = 0; | ||||||
|  |  | ||||||
| function addEntityChangeWithinstanceId(origEntityChange, instanceId) { | function addEntityChangeWithInstanceId(origEntityChange, instanceId) { | ||||||
|     const ec = {...origEntityChange, instanceId}; |     const ec = {...origEntityChange, instanceId}; | ||||||
|  |  | ||||||
|     return addEntityChange(ec); |     return addEntityChange(ec); | ||||||
| @@ -85,45 +85,38 @@ function cleanupEntityChangesForMissingEntities(entityName, entityPrimaryKey) { | |||||||
| } | } | ||||||
|  |  | ||||||
| function fillEntityChanges(entityName, entityPrimaryKey, condition = '') { | function fillEntityChanges(entityName, entityPrimaryKey, condition = '') { | ||||||
|     try { |     cleanupEntityChangesForMissingEntities(entityName, entityPrimaryKey); | ||||||
|         cleanupEntityChangesForMissingEntities(entityName, entityPrimaryKey); |  | ||||||
|  |  | ||||||
|         sql.transactional(() => { |     sql.transactional(() => { | ||||||
|             const entityIds = sql.getColumn(`SELECT ${entityPrimaryKey} FROM ${entityName}` |         const entityIds = sql.getColumn(`SELECT ${entityPrimaryKey} FROM ${entityName}` | ||||||
|                 + (condition ? ` WHERE ${condition}` : '')); |             + (condition ? ` WHERE ${condition}` : '')); | ||||||
|  |  | ||||||
|             let createdCount = 0; |         let createdCount = 0; | ||||||
|  |  | ||||||
|             for (const entityId of entityIds) { |         for (const entityId of entityIds) { | ||||||
|                 const existingRows = sql.getValue("SELECT COUNT(1) FROM entity_changes WHERE entityName = ? AND entityId = ?", [entityName, entityId]); |             const existingRows = sql.getValue("SELECT COUNT(1) FROM entity_changes WHERE entityName = ? AND entityId = ?", [entityName, entityId]); | ||||||
|  |  | ||||||
|                 // we don't want to replace existing entities (which would effectively cause full resync) |             // we don't want to replace existing entities (which would effectively cause full resync) | ||||||
|                 if (existingRows === 0) { |             if (existingRows === 0) { | ||||||
|                     createdCount++; |                 createdCount++; | ||||||
|  |  | ||||||
|                     const entity = becca.getEntity(entityName, entityId); |                 const entity = becca.getEntity(entityName, entityId); | ||||||
|  |  | ||||||
|                     addEntityChange({ |                 addEntityChange({ | ||||||
|                         entityName, |                     entityName, | ||||||
|                         entityId, |                     entityId, | ||||||
|                         hash: entity.generateHash(), |                     hash: entity.generateHash(), | ||||||
|                         isErased: false, |                     isErased: false, | ||||||
|                         utcDateChanged: entity.getUtcDateChanged(), |                     utcDateChanged: entity.getUtcDateChanged(), | ||||||
|                         isSynced: entityName !== 'options' || !!entity.isSynced |                     isSynced: entityName !== 'options' || !!entity.isSynced | ||||||
|                     }); |                 }); | ||||||
|                 } |  | ||||||
|             } |             } | ||||||
|  |         } | ||||||
|  |  | ||||||
|             if (createdCount > 0) { |         if (createdCount > 0) { | ||||||
|                 log.info(`Created ${createdCount} missing entity changes for ${entityName}.`); |             log.info(`Created ${createdCount} missing entity changes for ${entityName}.`); | ||||||
|             } |         } | ||||||
|         }); |     }); | ||||||
|     } |  | ||||||
|     catch (e) { |  | ||||||
|         // this is to fix migration from 0.30 to 0.32, can be removed later |  | ||||||
|         // see https://github.com/zadam/trilium/issues/557 |  | ||||||
|         log.error(`Filling entity changes failed for ${entityName} ${entityPrimaryKey} with error "${e.message}", continuing`); |  | ||||||
|     } |  | ||||||
| } | } | ||||||
|  |  | ||||||
| function fillAllEntityChanges() { | function fillAllEntityChanges() { | ||||||
| @@ -145,7 +138,7 @@ module.exports = { | |||||||
|     addNoteReorderingEntityChange, |     addNoteReorderingEntityChange, | ||||||
|     moveEntityChangeToTop, |     moveEntityChangeToTop, | ||||||
|     addEntityChange, |     addEntityChange, | ||||||
|     addEntityChangeWithinstanceId, |     addEntityChangeWithInstanceId, | ||||||
|     fillAllEntityChanges, |     fillAllEntityChanges, | ||||||
|     addEntityChangesForSector, |     addEntityChangesForSector, | ||||||
|     getMaxEntityChangeId: () => maxEntityChangeId |     getMaxEntityChangeId: () => maxEntityChangeId | ||||||
|   | |||||||
| @@ -54,7 +54,7 @@ function updateNormalEntity(remoteEntityChange, entity, instanceId) { | |||||||
|  |  | ||||||
|             sql.execute(`DELETE FROM ${remoteEntityChange.entityName} WHERE ${primaryKey} = ?`, remoteEntityChange.entityId); |             sql.execute(`DELETE FROM ${remoteEntityChange.entityName} WHERE ${primaryKey} = ?`, remoteEntityChange.entityId); | ||||||
|  |  | ||||||
|             entityChangesService.addEntityChangeWithinstanceId(remoteEntityChange, instanceId); |             entityChangesService.addEntityChangeWithInstanceId(remoteEntityChange, instanceId); | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|         return true; |         return true; | ||||||
| @@ -71,7 +71,7 @@ function updateNormalEntity(remoteEntityChange, entity, instanceId) { | |||||||
|         sql.transactional(() => { |         sql.transactional(() => { | ||||||
|             sql.replace(remoteEntityChange.entityName, entity); |             sql.replace(remoteEntityChange.entityName, entity); | ||||||
|  |  | ||||||
|             entityChangesService.addEntityChangeWithinstanceId(remoteEntityChange, instanceId); |             entityChangesService.addEntityChangeWithInstanceId(remoteEntityChange, instanceId); | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|         return true; |         return true; | ||||||
| @@ -86,7 +86,7 @@ function updateNoteReordering(entityChange, entity, instanceId) { | |||||||
|             sql.execute("UPDATE branches SET notePosition = ? WHERE branchId = ?", [entity[key], key]); |             sql.execute("UPDATE branches SET notePosition = ? WHERE branchId = ?", [entity[key], key]); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         entityChangesService.addEntityChangeWithinstanceId(entityChange, instanceId); |         entityChangesService.addEntityChangeWithInstanceId(entityChange, instanceId); | ||||||
|     }); |     }); | ||||||
|  |  | ||||||
|     return true; |     return true; | ||||||
| @@ -119,7 +119,7 @@ function eraseEntity(entityChange, instanceId) { | |||||||
|  |  | ||||||
|     eventService.emit(eventService.ENTITY_DELETE_SYNCED, { entityName, entityId }); |     eventService.emit(eventService.ENTITY_DELETE_SYNCED, { entityName, entityId }); | ||||||
|  |  | ||||||
|     entityChangesService.addEntityChangeWithinstanceId(entityChange, instanceId); |     entityChangesService.addEntityChangeWithInstanceId(entityChange, instanceId); | ||||||
| } | } | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user