mirror of
https://github.com/n8n-io/n8n.git
synced 2026-10-19 16:55:02 +02:00
Add an append-only execution ledger with one fold task every 5 seconds. Participants fold claimed rows in one transaction: workflow statistics, execution quota usage, and Insights hourly buckets. Add hard execution quotas per workflow and project. An atomic Redis or memory counter admits a run, and the started row commits with the execution row. Postgres and SQLite are both supported. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
1.9 KiB
Generated
1.9 KiB
Generated
execution_ledger
Description
Table Definition
CREATE TABLE "execution_ledger" (
"id" integer PRIMARY KEY AUTOINCREMENT NOT NULL,
"event" varchar(16) NOT NULL CHECK ("event" IN ('started', 'finished')),
"workflowId" varchar(36) NOT NULL,
"projectId" varchar(36),
"workflowName" varchar(128),
"mode" varchar(32) NOT NULL,
"status" varchar(16),
"source" varchar(32),
"delta" smallint NOT NULL DEFAULT 1,
"runtimeMs" integer,
"timeSavedMin" integer,
"createdAt" datetime(3) NOT NULL DEFAULT (STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW'))
)
Columns
| Name | Type | Default | Nullable | Children | Parents | Comment |
|---|---|---|---|---|---|---|
| createdAt | datetime(3) | STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW') | false | |||
| delta | smallint | 1 | false | |||
| event | varchar(16) | false | ||||
| id | INTEGER | false | ||||
| mode | varchar(32) | false | ||||
| projectId | varchar(36) | true | ||||
| runtimeMs | INTEGER | true | ||||
| source | varchar(32) | true | ||||
| status | varchar(16) | true | ||||
| timeSavedMin | INTEGER | true | ||||
| workflowId | varchar(36) | false | ||||
| workflowName | varchar(128) | true |
Constraints
| Name | Type | Definition |
|---|---|---|
| - | CHECK | CHECK ("event" IN ('started', 'finished')) |
| id | PRIMARY KEY | PRIMARY KEY (id) |
Relations
erDiagram
"execution_ledger" {
datetime_3_ createdAt
smallint delta
varchar_16_ event
INTEGER id
varchar_32_ mode
varchar_36_ projectId
INTEGER runtimeMs
varchar_32_ source
varchar_16_ status
INTEGER timeSavedMin
varchar_36_ workflowId
varchar_128_ workflowName
}
Generated by tbls