Browse Source

Merge pull request #7382 from Budibase/handle-stalled-crons

Handle stalled crons
master
Rory Powell 4 years ago
committed by GitHub
parent
commit
16d3ee0f17
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      packages/server/src/automations/listeners.ts
  2. 4
      packages/server/src/threads/automation.ts
  3. 4
      packages/server/src/utilities/queue/inMemoryQueue.js

4
packages/server/src/automations/listeners.ts

@ -4,11 +4,11 @@ import * as automation from "../threads/automation"
export const addListeners = (queue: Queue) => {
logging(queue)
// handleStalled(queue)
handleStalled(queue)
}
const handleStalled = (queue: Queue) => {
queue.on("active", async (job: Job) => {
queue.on("stalled", async (job: Job) => {
await automation.removeStalled(job as AutomationEvent)
})
}

4
packages/server/src/threads/automation.ts

@ -473,9 +473,9 @@ export function execute(input: AutomationEvent, callback: WorkerCallback) {
})
}
export const removeStalled = (input: AutomationEvent) => {
export const removeStalled = async (input: AutomationEvent) => {
const appId = input.data.event.appId
doInAppContext(appId, async () => {
await doInAppContext(appId, async () => {
const automationOrchestrator = new Orchestrator(
input.data.automation,
input.data.event,

4
packages/server/src/utilities/queue/inMemoryQueue.js

@ -113,6 +113,10 @@ class InMemoryQueue {
async getJob() {
return {}
}
on() {
// do nothing
}
}
module.exports = InMemoryQueue

Loading…
Cancel
Save