@penkov/tasks_queue
Version:
A lightweight PostgreSQL-backed task queue system with scheduling, retries, backoff strategies, and priority handling. Designed for efficiency and observability in modern Node.js applications.
31 lines (30 loc) • 1.03 kB
JavaScript
export var TaskStatus;
(function (TaskStatus) {
TaskStatus["pending"] = "pending";
TaskStatus["in_progress"] = "in_progress";
TaskStatus["finished"] = "finished";
TaskStatus["error"] = "error";
})(TaskStatus || (TaskStatus = {}));
export var BackoffType;
(function (BackoffType) {
BackoffType["constant"] = "constant";
BackoffType["linear"] = "linear";
BackoffType["exponential"] = "exponential";
})(BackoffType || (BackoffType = {}));
export var TaskPeriodType;
(function (TaskPeriodType) {
TaskPeriodType["fixed_rate"] = "fixed_rate";
TaskPeriodType["fixed_delay"] = "fixed_delay";
})(TaskPeriodType || (TaskPeriodType = {}));
export var MissedRunStrategy;
(function (MissedRunStrategy) {
MissedRunStrategy["catch_up"] = "catch_up";
MissedRunStrategy["skip_missed"] = "skip_missed";
})(MissedRunStrategy || (MissedRunStrategy = {}));
export class TaskFailed extends Error {
payload;
constructor(message, payload) {
super(message);
this.payload = payload;
}
}