mirror of
https://github.com/farcasclaudiu/Flowise.git
synced 2026-06-29 11:01:18 +03:00
handles scenario where NodesPool require call fails
Currently, the following file results in an error: Flowise/packages/components/dist/nodes/documentloaders/Subtitles/Subtitles.js:3:15 The result is that initializeNodes fails on all nodes, and all other code in initDatabase fails to load
This commit is contained in:
@@ -4,6 +4,7 @@ import { Dirent } from 'fs'
|
|||||||
import { getNodeModulesPackagePath } from './utils'
|
import { getNodeModulesPackagePath } from './utils'
|
||||||
import { promises } from 'fs'
|
import { promises } from 'fs'
|
||||||
import { ICommonObject } from 'flowise-components'
|
import { ICommonObject } from 'flowise-components'
|
||||||
|
import logger from './utils/logger'
|
||||||
|
|
||||||
export class NodesPool {
|
export class NodesPool {
|
||||||
componentNodes: IComponentNodes = {}
|
componentNodes: IComponentNodes = {}
|
||||||
@@ -28,6 +29,7 @@ export class NodesPool {
|
|||||||
return Promise.all(
|
return Promise.all(
|
||||||
nodeFiles.map(async (file) => {
|
nodeFiles.map(async (file) => {
|
||||||
if (file.endsWith('.js')) {
|
if (file.endsWith('.js')) {
|
||||||
|
try {
|
||||||
const nodeModule = await require(file)
|
const nodeModule = await require(file)
|
||||||
|
|
||||||
if (nodeModule.nodeClass) {
|
if (nodeModule.nodeClass) {
|
||||||
@@ -59,6 +61,9 @@ export class NodesPool {
|
|||||||
this.componentNodes[newNodeInstance.name] = newNodeInstance
|
this.componentNodes[newNodeInstance.name] = newNodeInstance
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (err) {
|
||||||
|
logger.error(`❌ [server]: Error during initDatabase with file ${file}:`, err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -85,7 +85,7 @@ export class App {
|
|||||||
// Initialize database
|
// Initialize database
|
||||||
this.AppDataSource.initialize()
|
this.AppDataSource.initialize()
|
||||||
.then(async () => {
|
.then(async () => {
|
||||||
logger.info('📦 [server]: Data Source has been initialized!')
|
logger.info('📦 [server]: Data Source is being initialized!')
|
||||||
|
|
||||||
// Run Migrations Scripts
|
// Run Migrations Scripts
|
||||||
await this.AppDataSource.runMigrations({ transaction: 'each' })
|
await this.AppDataSource.runMigrations({ transaction: 'each' })
|
||||||
@@ -112,6 +112,7 @@ export class App {
|
|||||||
|
|
||||||
// Initialize telemetry
|
// Initialize telemetry
|
||||||
this.telemetry = new Telemetry()
|
this.telemetry = new Telemetry()
|
||||||
|
logger.info('📦 [server]: Data Source has been initialized!')
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
logger.error('❌ [server]: Error during Data Source initialization:', err)
|
logger.error('❌ [server]: Error during Data Source initialization:', err)
|
||||||
|
|||||||
Reference in New Issue
Block a user