From f77a41a75237b8c816e0c9ca7217dfacc32cc7d0 Mon Sep 17 00:00:00 2001 From: MohamedBassem Date: Sun, 14 Jul 2024 20:42:06 +0000 Subject: chore: Add a new sqlite based queue package --- packages/queue/drizzle/0000_wonderful_talisman.sql | 18 +++ packages/queue/drizzle/meta/0000_snapshot.json | 130 +++++++++++++++++++++ packages/queue/drizzle/meta/_journal.json | 13 +++ 3 files changed, 161 insertions(+) create mode 100644 packages/queue/drizzle/0000_wonderful_talisman.sql create mode 100644 packages/queue/drizzle/meta/0000_snapshot.json create mode 100644 packages/queue/drizzle/meta/_journal.json (limited to 'packages/queue/drizzle') diff --git a/packages/queue/drizzle/0000_wonderful_talisman.sql b/packages/queue/drizzle/0000_wonderful_talisman.sql new file mode 100644 index 00000000..e042ab92 --- /dev/null +++ b/packages/queue/drizzle/0000_wonderful_talisman.sql @@ -0,0 +1,18 @@ +CREATE TABLE `tasks` ( + `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, + `queue` text NOT NULL, + `payload` text NOT NULL, + `createdAt` integer NOT NULL, + `status` text DEFAULT 'pending' NOT NULL, + `expireAt` integer, + `allocationId` text NOT NULL, + `numRunsLeft` integer NOT NULL, + `maxNumRuns` integer NOT NULL +); +--> statement-breakpoint +CREATE INDEX `tasks_queue_idx` ON `tasks` (`queue`);--> statement-breakpoint +CREATE INDEX `tasks_status_idx` ON `tasks` (`status`);--> statement-breakpoint +CREATE INDEX `tasks_expire_at_idx` ON `tasks` (`expireAt`);--> statement-breakpoint +CREATE INDEX `tasks_num_runs_left_idx` ON `tasks` (`numRunsLeft`);--> statement-breakpoint +CREATE INDEX `tasks_max_num_runs_idx` ON `tasks` (`maxNumRuns`);--> statement-breakpoint +CREATE INDEX `tasks_allocation_id_idx` ON `tasks` (`allocationId`); \ No newline at end of file diff --git a/packages/queue/drizzle/meta/0000_snapshot.json b/packages/queue/drizzle/meta/0000_snapshot.json new file mode 100644 index 00000000..57c7c2f4 --- /dev/null +++ b/packages/queue/drizzle/meta/0000_snapshot.json @@ -0,0 +1,130 @@ +{ + "version": "5", + "dialect": "sqlite", + "id": "3094773c-0138-46b2-b617-4b10093b0f53", + "prevId": "00000000-0000-0000-0000-000000000000", + "tables": { + "tasks": { + "name": "tasks", + "columns": { + "id": { + "name": "id", + "type": "integer", + "primaryKey": true, + "notNull": true, + "autoincrement": true + }, + "queue": { + "name": "queue", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "payload": { + "name": "payload", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "createdAt": { + "name": "createdAt", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'pending'" + }, + "expireAt": { + "name": "expireAt", + "type": "integer", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "allocationId": { + "name": "allocationId", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "numRunsLeft": { + "name": "numRunsLeft", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "maxNumRuns": { + "name": "maxNumRuns", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": { + "tasks_queue_idx": { + "name": "tasks_queue_idx", + "columns": [ + "queue" + ], + "isUnique": false + }, + "tasks_status_idx": { + "name": "tasks_status_idx", + "columns": [ + "status" + ], + "isUnique": false + }, + "tasks_expire_at_idx": { + "name": "tasks_expire_at_idx", + "columns": [ + "expireAt" + ], + "isUnique": false + }, + "tasks_num_runs_left_idx": { + "name": "tasks_num_runs_left_idx", + "columns": [ + "numRunsLeft" + ], + "isUnique": false + }, + "tasks_max_num_runs_idx": { + "name": "tasks_max_num_runs_idx", + "columns": [ + "maxNumRuns" + ], + "isUnique": false + }, + "tasks_allocation_id_idx": { + "name": "tasks_allocation_id_idx", + "columns": [ + "allocationId" + ], + "isUnique": false + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + } + }, + "enums": {}, + "_meta": { + "schemas": {}, + "tables": {}, + "columns": {} + } +} \ No newline at end of file diff --git a/packages/queue/drizzle/meta/_journal.json b/packages/queue/drizzle/meta/_journal.json new file mode 100644 index 00000000..2b14f895 --- /dev/null +++ b/packages/queue/drizzle/meta/_journal.json @@ -0,0 +1,13 @@ +{ + "version": "5", + "dialect": "sqlite", + "entries": [ + { + "idx": 0, + "version": "5", + "when": 1720992922192, + "tag": "0000_wonderful_talisman", + "breakpoints": true + } + ] +} \ No newline at end of file -- cgit v1.2.3-70-g09d2