mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +01:00 
			
		
		
		
	Allows setting of some pragma values through environment variables
This commit is contained in:
		
							parent
							
								
									e096da1b4d
								
							
						
					
					
						commit
						23067e1818
					
				| @ -226,6 +226,28 @@ class Database { | ||||
| 
 | ||||
|     try { | ||||
|       await this.sequelize.authenticate() | ||||
| 
 | ||||
|       // Set SQLite pragmas from environment variables
 | ||||
|       const allowedPragmas = [ | ||||
|         { name: 'mmap_size', env: 'SQLITE_MMAP_SIZE' }, | ||||
|         { name: 'cache_size', env: 'SQLITE_CACHE_SIZE' }, | ||||
|         { name: 'temp_store', env: 'SQLITE_TEMP_STORE' } | ||||
|       ] | ||||
| 
 | ||||
|       for (const pragma of allowedPragmas) { | ||||
|         const value = process.env[pragma.env] | ||||
|         if (value !== undefined) { | ||||
|           try { | ||||
|             Logger.info(`[Database] Running "PRAGMA ${pragma.name} = ${value}"`) | ||||
|             await this.sequelize.query(`PRAGMA ${pragma.name} = ${value}`) | ||||
|             const [result] = await this.sequelize.query(`PRAGMA ${pragma.name}`) | ||||
|             Logger.debug(`[Database] "PRAGMA ${pragma.name}" query result:`, result) | ||||
|           } catch (error) { | ||||
|             Logger.error(`[Database] Failed to set SQLite pragma ${pragma.name}`, error) | ||||
|           } | ||||
|         } | ||||
|       } | ||||
| 
 | ||||
|       if (process.env.NUSQLITE3_PATH) { | ||||
|         await this.loadExtension(process.env.NUSQLITE3_PATH) | ||||
|         Logger.info(`[Database] Db supports unaccent and unicode foldings`) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user