Problems converting process incoming request to use new searchData worker

This commit is contained in:
mrfry 2020-10-14 10:22:21 +02:00
parent c846d2591e
commit 63b08244dc
4 changed files with 233 additions and 228 deletions

View file

@ -22,7 +22,6 @@
const express = require('express')
const bodyParser = require('body-parser')
const busboy = require('connect-busboy')
const { Worker } = require('worker_threads')
const { v4: uuidv4 } = require('uuid')
const fs = require('fs')
const app = express()
@ -33,10 +32,9 @@ const utils = require('../../utils/utils.js')
const actions = require('../../utils/actions.js')
const dbtools = require('../../utils/dbtools.js')
const auth = require('../../middlewares/auth.middleware.js')
const { dataToString } = require('../../utils/classes.js')
const { dataToString, searchData } = require('../../utils/classes.js')
// files
const searchDataWorkerFile = './src/utils/searchData.js'
const msgFile = 'stats/msgs'
const passwordFile = 'data/dataEditorPasswords.json'
const dataEditsLog = 'stats/dataEdits'
@ -763,53 +761,29 @@ function GetApp() {
)
}
const worker = new Worker(searchDataWorkerFile, {
workerData: {
data,
question,
subj,
recData,
},
})
worker.on('error', (err) => {
logger.Log('Search Data Worker error!', logger.GetColor('redbg'))
console.error(err)
res.json({
message: `There was an error processing the question: ${err.message}`,
result: [],
recievedData: JSON.stringify(req.query),
success: false,
})
})
worker.on('exit', (code) => {
logger.DebugLog('Search Data exit, code: ' + code, 'actions', 1)
if (code !== 0) {
logger.Log(
'Search Data Worker error! Exit code is not 0',
logger.GetColor('redbg')
searchData(data, question, subj, recData)
.then((result) => {
res.json({
result: result,
success: true,
})
logger.DebugLog(
`Question result length: ${result.length}`,
'ask',
1
)
}
})
worker.on('message', (workerMsg) => {
const result = workerMsg
res.json({
result: result,
success: true,
logger.DebugLog(result, 'ask', 2)
})
.catch((err) => {
logger.Log('Search Data error!', logger.GetColor('redbg'))
console.error(err)
res.json({
message: `There was an error processing the question: ${err.message}`,
result: [],
recievedData: JSON.stringify(req.query),
success: false,
})
})
logger.DebugLog(`Question result length: ${result.length}`, 'ask', 1)
logger.DebugLog(result, 'ask', 2)
})
// let result = data.Search(question, subj, recData)
// res.json({
// result: result,
// success: true,
// })
// logger.DebugLog(`Question result length: ${result.length}`, 'ask', 1)
// logger.DebugLog(result, 'ask', 2)
} else {
logger.DebugLog(`Invalid question`, 'ask', 1)
res.json({