MCPcopy Index your code
hub / github.com/FlowiseAI/Flowise / initDatabase

Method initDatabase

packages/server/src/index.ts:83–170  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

81 }
82
83 async initDatabase() {
84 // Initialize database
85 try {
86 await this.AppDataSource.initialize()
87 logger.info('📦 [server]: Data Source initialized successfully')
88
89 // Run Migrations Scripts
90 await this.AppDataSource.runMigrations({ transaction: 'each' })
91 logger.info('🔄 [server]: Database migrations completed successfully')
92
93 // Initialize Identity Manager
94 this.identityManager = await IdentityManager.getInstance()
95 logger.info('🔐 [server]: Identity Manager initialized successfully')
96
97 // Initialize nodes pool
98 this.nodesPool = new NodesPool()
99 await this.nodesPool.initialize()
100 logger.info('🔧 [server]: Nodes pool initialized successfully')
101
102 // Initialize abort controllers pool
103 this.abortControllerPool = new AbortControllerPool()
104 logger.info('⏹️ [server]: Abort controllers pool initialized successfully')
105
106 // Initialize encryption key
107 await getEncryptionKey()
108 logger.info('🔑 [server]: Encryption key initialized successfully')
109
110 // Initialize auth secrets (env → AWS Secrets Manager → filesystem)
111 await initAuthSecrets()
112 logger.info('🔐 [server]: Auth initialized successfully')
113
114 // Initialize Rate Limit
115 this.rateLimiterManager = RateLimiterManager.getInstance()
116 await this.rateLimiterManager.initializeRateLimiters(await getDataSource().getRepository(ChatFlow).find())
117 logger.info('🚦 [server]: Rate limiters initialized successfully')
118
119 // Initialize cache pool
120 this.cachePool = new CachePool()
121 logger.info('💾 [server]: Cache pool initialized successfully')
122
123 // Initialize usage cache manager
124 this.usageCacheManager = await UsageCacheManager.getInstance()
125 logger.info('📊 [server]: Usage cache manager initialized successfully')
126
127 // Initialize telemetry
128 this.telemetry = new Telemetry()
129 logger.info('📈 [server]: Telemetry initialized successfully')
130
131 // Initialize SSE Streamer
132 this.sseStreamer = new SSEStreamer()
133 this.sseStreamer.startHeartbeat()
134 logger.info('🌊 [server]: SSE Streamer initialized successfully')
135
136 // Init Queues
137 if (process.env.MODE === MODE.QUEUE) {
138 this.queueManager = QueueManager.getInstance()
139 const serverAdapter = new ExpressAdapter()
140 serverAdapter.setBasePath('/admin/queues')

Callers 1

startFunction · 0.80

Calls 12

getEncryptionKeyFunction · 0.90
initAuthSecretsFunction · 0.90
getDataSourceFunction · 0.90
startHeartbeatMethod · 0.80
setupAllQueuesMethod · 0.80
startPeriodicCleanupMethod · 0.80
initMethod · 0.65
initializeMethod · 0.45
getInstanceMethod · 0.45
connectMethod · 0.45

Tested by

no test coverage detected