mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 10:26:08 +01:00 
			
		
		
		
	reset embedding_queue where objects are "isprocessing"
This commit is contained in:
		| @@ -3,6 +3,29 @@ import options from "../../options.js"; | |||||||
| import { initEmbeddings } from "./index.js"; | import { initEmbeddings } from "./index.js"; | ||||||
| import providerManager from "./providers.js"; | import providerManager from "./providers.js"; | ||||||
| import sqlInit from "../../sql_init.js"; | import sqlInit from "../../sql_init.js"; | ||||||
|  | import sql from "../../sql.js"; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Reset any stuck embedding queue items that were left in processing state | ||||||
|  |  * from a previous server shutdown | ||||||
|  |  */ | ||||||
|  | async function resetStuckEmbeddingQueue() { | ||||||
|  |     try { | ||||||
|  |         const stuckCount = await sql.getValue( | ||||||
|  |             "SELECT COUNT(*) FROM embedding_queue WHERE isProcessing = 1" | ||||||
|  |         ) as number; | ||||||
|  |  | ||||||
|  |         if (stuckCount > 0) { | ||||||
|  |             log.info(`Resetting ${stuckCount} stuck items in embedding queue from previous shutdown`); | ||||||
|  |  | ||||||
|  |             await sql.execute( | ||||||
|  |                 "UPDATE embedding_queue SET isProcessing = 0 WHERE isProcessing = 1" | ||||||
|  |             ); | ||||||
|  |         } | ||||||
|  |     } catch (error: any) { | ||||||
|  |         log.error(`Error resetting stuck embedding queue: ${error.message || error}`); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Initialize the embedding system |  * Initialize the embedding system | ||||||
| @@ -17,6 +40,9 @@ export async function initializeEmbeddings() { | |||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         // Reset any stuck embedding queue items from previous server shutdown | ||||||
|  |         await resetStuckEmbeddingQueue(); | ||||||
|  |  | ||||||
|         // Initialize default embedding providers |         // Initialize default embedding providers | ||||||
|         await providerManager.initializeDefaultProviders(); |         await providerManager.initializeDefaultProviders(); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user