# error audit
error block
```shell=
error: error: insert or update on table "task" violates foreign key constraint "FK_task_id"
at Parser.parseErrorMessage (/opt/app/node_modules/pg-protocol/dist/parser.js:287:98)
at Parser.handlePacket (/opt/app/node_modules/pg-protocol/dist/parser.js:126:29)
at Parser.parse (/opt/app/node_modules/pg-protocol/dist/parser.js:39:38)
at Socket.<anonymous> (/opt/app/node_modules/pg-protocol/dist/index.js:11:42)
at Socket.emit (node:events:513:28)
at Socket.emit (node:domain:489:12)
at addChunk (node:internal/streams/readable:315:12)
at readableAddChunk (node:internal/streams/readable:289:9)
at Socket.Readable.push (node:internal/streams/readable:228:10)
at TCP.onStreamRead (node:internal/stream_base_commons:190:23) {
length: 232,
severity: 'ERROR',
code: '23503',
detail: 'Key (id)=(6689) is not present in table "task_assignment".',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'task',
column: undefined,
dataType: undefined,
constraint: 'FK_task_id',
file: 'ri_triggers.c',
line: '2476',
routine: 'ri_ReportViolation'
}
```
full log
```shell=
{"app":"@endpoint/task-service","appVersion":"0.74.0+b05103a.3916168452.20230114","context":"HTTP","host":"task-service-d5fbdc9d5-6jrjv","message":{"httpVersion":"1.1","method":"POST","url":"/tasks/todo","statusCode":500,"contentLength":"52","userAgent":"PostmanRuntime/7.30.0","ip":"::ffff:172.25.0.132","responseTimeMs":954},"level":"log","timestamp":"2023-01-14T02:35:02.205Z"}
query: SELECT DISTINCT "distinctAlias"."Task_id" AS "ids_Task_id" FROM (SELECT "Task"."id" AS "Task_id", "Task"."external_id" AS "Task_external_id", "Task"."milestone_type" AS "Task_milestone_type", "Task"."name" AS "Task_name", "Task"."created_on" AS "Task_created_on", "Task"."created_by" AS "Task_created_by", "Task"."transaction_id" AS "Task_transaction_id", "Task"."stage_id" AS "Task_stage_id", "Task"."task_definition_id" AS "Task_task_definition_id", "Task_taskAssignment"."id" AS "Task_taskAssignment_id", "Task_taskAssignment"."assignee_id" AS "Task_taskAssignment_assignee_id", "Task_taskAssignment"."assignee_name" AS "Task_taskAssignment_assignee_name", "Task_taskAssignment"."task_status_id" AS "Task_taskAssignment_task_status_id", "Task_taskAssignment"."squad_id" AS "Task_taskAssignment_squad_id", "Task_taskAssignment"."updated_on" AS "Task_taskAssignment_updated_on", "Task_taskAssignment"."due_on" AS "Task_taskAssignment_due_on", "Task_taskDefinition"."id" AS "Task_taskDefinition_id", "Task_taskDefinition"."key" AS "Task_taskDefinition_key", "Task_taskDefinition"."version" AS "Task_taskDefinition_version", "Task_taskDefinition"."description" AS "Task_taskDefinition_description", "Task_taskDefinition"."schema" AS "Task_taskDefinition_schema", "Task_taskDefinition"."status" AS "Task_taskDefinition_status", "Task_taskDefinition"."is_latest" AS "Task_taskDefinition_is_latest", "Task_taskDefinition"."organization_id" AS "Task_taskDefinition_organization_id", "Task_taskDefinition"."type" AS "Task_taskDefinition_type", "Task_taskDefinition"."default_name" AS "Task_taskDefinition_default_name", "Task_taskDefinition"."default_squad" AS "Task_taskDefinition_default_squad", "Task_taskDefinition"."default_todo_key" AS "Task_taskDefinition_default_todo_key", "Task_taskDefinition"."default_due_on_offset" AS "Task_taskDefinition_default_due_on_offset", "Task_taskDefinition"."default_due_on_anchor" AS "Task_taskDefinition_default_due_on_anchor", "Task_taskDefinition"."default_milestone_type" AS "Task_taskDefinition_default_milestone_type", "Task_taskDefinition"."default_stage_id" AS "Task_taskDefinition_default_stage_id", "Task_taskDefinition"."default_todo_recipient" AS "Task_taskDefinition_default_todo_recipient", "Task_taskDefinition"."default_prefix_with_transaction_role" AS "Task_taskDefinition_default_prefix_with_transaction_role", "Task_steps"."id" AS "Task_steps_id", "Task_steps"."key" AS "Task_steps_key", "Task_steps"."created_on" AS "Task_steps_created_on", "Task_steps"."updated_on" AS "Task_steps_updated_on", "Task_steps"."response" AS "Task_steps_response", "Task_steps"."is_completed" AS "Task_steps_is_completed", "Task_steps"."title" AS "Task_steps_title", "Task_steps"."task_id" AS "Task_steps_task_id" FROM "task" "Task" LEFT JOIN "task_assignment" "Task_taskAssignment" ON "Task_taskAssignment"."id"="Task"."id" LEFT JOIN "task_definition" "Task_taskDefinition" ON "Task_taskDefinition"."id"="Task"."task_definition_id" LEFT JOIN "task_step" "Task_steps" ON "Task_steps"."task_id"="Task"."id" WHERE ("Task"."external_id" = $1)) "distinctAlias" ORDER BY "Task_id" ASC LIMIT 1 -- PARAMETERS: ["LOCK#TRANSACTION#fSZCMxSySv9Yn26iVgald#TODO#2RQxc_8U6mhKVrIKD-he5#b_confirm_funds_check"]
{"app":"@endpoint/task-service","appVersion":"0.74.0+b05103a.3916168452.20230114","context":"HTTP","host":"task-service-d5fbdc9d5-6jrjv","message":{"httpVersion":"1.1","method":"GET","url":"/tasks/LOCK%23TRANSACTION%23fSZCMxSySv9Yn26iVgald%23TODO%232RQxc_8U6mhKVrIKD-he5%23b_confirm_funds_check","statusCode":404,"contentLength":"40","userAgent":"@endpoint/api/3.258.1+2e5b5f06.3916094286.20230114","ip":"::ffff:172.25.0.21","responseTimeMs":6,"responseBody":"{\"statusCode\":404,\"message\":\"Not Found\"}"},"level":"log","timestamp":"2023-01-14T02:35:02.701Z"}
query: WITH matching_task_ids AS (
SELECT id as taskId FROM task INTERSECT SELECT id as taskId FROM task_assignment INTERSECT SELECT task_id as taskId FROM task_entity WHERE entity_id = $1 AND entity_type = $2
)
SELECT COUNT(1) as count FROM matching_task_ids; -- PARAMETERS: ["YE0OdRPYDD7JJkKSz0FgI","todo"]
query: WITH matching_task_ids AS (
SELECT id as taskId FROM task INTERSECT SELECT id as taskId FROM task_assignment INTERSECT SELECT task_id as taskId FROM task_entity WHERE entity_id = $1 AND entity_type = $2
)
SELECT * FROM matching_task_ids m
INNER JOIN task t ON m.taskId = t.id
INNER JOIN task_assignment ta ON t.id = ta.id
ORDER BY t.created_on ASC
LIMIT 10 OFFSET 0; -- PARAMETERS: ["YE0OdRPYDD7JJkKSz0FgI","todo"]
{"app":"@endpoint/task-service","appVersion":"0.74.0+b05103a.3916168452.20230114","context":"HTTP","host":"task-service-d5fbdc9d5-6jrjv","message":{"httpVersion":"1.1","method":"POST","url":"/search","statusCode":200,"contentLength":"95","userAgent":"@endpoint/api/3.258.1+2e5b5f06.3916094286.20230114","ip":"::ffff:172.25.1.117","responseTimeMs":19},"level":"log","timestamp":"2023-01-14T02:35:02.832Z"}
query: SELECT DISTINCT "distinctAlias"."Task_id" AS "ids_Task_id" FROM (SELECT "Task"."id" AS "Task_id", "Task"."external_id" AS "Task_external_id", "Task"."milestone_type" AS "Task_milestone_type", "Task"."name" AS "Task_name", "Task"."created_on" AS "Task_created_on", "Task"."created_by" AS "Task_created_by", "Task"."transaction_id" AS "Task_transaction_id", "Task"."stage_id" AS "Task_stage_id", "Task"."task_definition_id" AS "Task_task_definition_id", "Task_taskAssignment"."id" AS "Task_taskAssignment_id", "Task_taskAssignment"."assignee_id" AS "Task_taskAssignment_assignee_id", "Task_taskAssignment"."assignee_name" AS "Task_taskAssignment_assignee_name", "Task_taskAssignment"."task_status_id" AS "Task_taskAssignment_task_status_id", "Task_taskAssignment"."squad_id" AS "Task_taskAssignment_squad_id", "Task_taskAssignment"."updated_on" AS "Task_taskAssignment_updated_on", "Task_taskAssignment"."due_on" AS "Task_taskAssignment_due_on", "Task_taskDefinition"."id" AS "Task_taskDefinition_id", "Task_taskDefinition"."key" AS "Task_taskDefinition_key", "Task_taskDefinition"."version" AS "Task_taskDefinition_version", "Task_taskDefinition"."description" AS "Task_taskDefinition_description", "Task_taskDefinition"."schema" AS "Task_taskDefinition_schema", "Task_taskDefinition"."status" AS "Task_taskDefinition_status", "Task_taskDefinition"."is_latest" AS "Task_taskDefinition_is_latest", "Task_taskDefinition"."organization_id" AS "Task_taskDefinition_organization_id", "Task_taskDefinition"."type" AS "Task_taskDefinition_type", "Task_taskDefinition"."default_name" AS "Task_taskDefinition_default_name", "Task_taskDefinition"."default_squad" AS "Task_taskDefinition_default_squad", "Task_taskDefinition"."default_todo_key" AS "Task_taskDefinition_default_todo_key", "Task_taskDefinition"."default_due_on_offset" AS "Task_taskDefinition_default_due_on_offset", "Task_taskDefinition"."default_due_on_anchor" AS "Task_taskDefinition_default_due_on_anchor", "Task_taskDefinition"."default_milestone_type" AS "Task_taskDefinition_default_milestone_type", "Task_taskDefinition"."default_stage_id" AS "Task_taskDefinition_default_stage_id", "Task_taskDefinition"."default_todo_recipient" AS "Task_taskDefinition_default_todo_recipient", "Task_taskDefinition"."default_prefix_with_transaction_role" AS "Task_taskDefinition_default_prefix_with_transaction_role", "Task_steps"."id" AS "Task_steps_id", "Task_steps"."key" AS "Task_steps_key", "Task_steps"."created_on" AS "Task_steps_created_on", "Task_steps"."updated_on" AS "Task_steps_updated_on", "Task_steps"."response" AS "Task_steps_response", "Task_steps"."is_completed" AS "Task_steps_is_completed", "Task_steps"."title" AS "Task_steps_title", "Task_steps"."task_id" AS "Task_steps_task_id" FROM "task" "Task" LEFT JOIN "task_assignment" "Task_taskAssignment" ON "Task_taskAssignment"."id"="Task"."id" LEFT JOIN "task_definition" "Task_taskDefinition" ON "Task_taskDefinition"."id"="Task"."task_definition_id" LEFT JOIN "task_step" "Task_steps" ON "Task_steps"."task_id"="Task"."id" WHERE ("Task"."external_id" = $1)) "distinctAlias" ORDER BY "Task_id" ASC LIMIT 1 -- PARAMETERS: ["q1nlW1mhLFQ4U25QDE4gL"]
query: SELECT DISTINCT "distinctAlias"."Task_id" AS "ids_Task_id" FROM (SELECT "Task"."id" AS "Task_id", "Task"."external_id" AS "Task_external_id", "Task"."milestone_type" AS "Task_milestone_type", "Task"."name" AS "Task_name", "Task"."created_on" AS "Task_created_on", "Task"."created_by" AS "Task_created_by", "Task"."transaction_id" AS "Task_transaction_id", "Task"."stage_id" AS "Task_stage_id", "Task"."task_definition_id" AS "Task_task_definition_id", "Task_taskAssignment"."id" AS "Task_taskAssignment_id", "Task_taskAssignment"."assignee_id" AS "Task_taskAssignment_assignee_id", "Task_taskAssignment"."assignee_name" AS "Task_taskAssignment_assignee_name", "Task_taskAssignment"."task_status_id" AS "Task_taskAssignment_task_status_id", "Task_taskAssignment"."squad_id" AS "Task_taskAssignment_squad_id", "Task_taskAssignment"."updated_on" AS "Task_taskAssignment_updated_on", "Task_taskAssignment"."due_on" AS "Task_taskAssignment_due_on", "Task_taskDefinition"."id" AS "Task_taskDefinition_id", "Task_taskDefinition"."key" AS "Task_taskDefinition_key", "Task_taskDefinition"."version" AS "Task_taskDefinition_version", "Task_taskDefinition"."description" AS "Task_taskDefinition_description", "Task_taskDefinition"."schema" AS "Task_taskDefinition_schema", "Task_taskDefinition"."status" AS "Task_taskDefinition_status", "Task_taskDefinition"."is_latest" AS "Task_taskDefinition_is_latest", "Task_taskDefinition"."organization_id" AS "Task_taskDefinition_organization_id", "Task_taskDefinition"."type" AS "Task_taskDefinition_type", "Task_taskDefinition"."default_name" AS "Task_taskDefinition_default_name", "Task_taskDefinition"."default_squad" AS "Task_taskDefinition_default_squad", "Task_taskDefinition"."default_todo_key" AS "Task_taskDefinition_default_todo_key", "Task_taskDefinition"."default_due_on_offset" AS "Task_taskDefinition_default_due_on_offset", "Task_taskDefinition"."default_due_on_anchor" AS "Task_taskDefinition_default_due_on_anchor", "Task_taskDefinition"."default_milestone_type" AS "Task_taskDefinition_default_milestone_type", "Task_taskDefinition"."default_stage_id" AS "Task_taskDefinition_default_stage_id", "Task_taskDefinition"."default_todo_recipient" AS "Task_taskDefinition_default_todo_recipient", "Task_taskDefinition"."default_prefix_with_transaction_role" AS "Task_taskDefinition_default_prefix_with_transaction_role", "Task_steps"."id" AS "Task_steps_id", "Task_steps"."key" AS "Task_steps_key", "Task_steps"."created_on" AS "Task_steps_created_on", "Task_steps"."updated_on" AS "Task_steps_updated_on", "Task_steps"."response" AS "Task_steps_response", "Task_steps"."is_completed" AS "Task_steps_is_completed", "Task_steps"."title" AS "Task_steps_title", "Task_steps"."task_id" AS "Task_steps_task_id" FROM "task" "Task" LEFT JOIN "task_assignment" "Task_taskAssignment" ON "Task_taskAssignment"."id"="Task"."id" LEFT JOIN "task_definition" "Task_taskDefinition" ON "Task_taskDefinition"."id"="Task"."task_definition_id" LEFT JOIN "task_step" "Task_steps" ON "Task_steps"."task_id"="Task"."id" WHERE ("Task"."external_id" = $1)) "distinctAlias" ORDER BY "Task_id" ASC LIMIT 1 -- PARAMETERS: ["q1nlW1mhLFQ4U25QDE4gL"]
query: SELECT "TaskDefinition"."id" AS "TaskDefinition_id", "TaskDefinition"."key" AS "TaskDefinition_key", "TaskDefinition"."version" AS "TaskDefinition_version", "TaskDefinition"."description" AS "TaskDefinition_description", "TaskDefinition"."schema" AS "TaskDefinition_schema", "TaskDefinition"."status" AS "TaskDefinition_status", "TaskDefinition"."is_latest" AS "TaskDefinition_is_latest", "TaskDefinition"."organization_id" AS "TaskDefinition_organization_id", "TaskDefinition"."type" AS "TaskDefinition_type", "TaskDefinition"."default_name" AS "TaskDefinition_default_name", "TaskDefinition"."default_squad" AS "TaskDefinition_default_squad", "TaskDefinition"."default_todo_key" AS "TaskDefinition_default_todo_key", "TaskDefinition"."default_due_on_offset" AS "TaskDefinition_default_due_on_offset", "TaskDefinition"."default_due_on_anchor" AS "TaskDefinition_default_due_on_anchor", "TaskDefinition"."default_milestone_type" AS "TaskDefinition_default_milestone_type", "TaskDefinition"."default_stage_id" AS "TaskDefinition_default_stage_id", "TaskDefinition"."default_todo_recipient" AS "TaskDefinition_default_todo_recipient", "TaskDefinition"."default_prefix_with_transaction_role" AS "TaskDefinition_default_prefix_with_transaction_role" FROM "task_definition" "TaskDefinition" WHERE ("TaskDefinition"."organization_id" = $1 AND "TaskDefinition"."key" = $2 AND "TaskDefinition"."is_latest" = $3) LIMIT 1 -- PARAMETERS: [1,"b_confirm_funds_check",true]
query: SELECT "Transaction"."id" AS "Transaction_id", "Transaction"."file_number" AS "Transaction_file_number", "Transaction"."address_formatted" AS "Transaction_address_formatted", "Transaction"."organization_id" AS "Transaction_organization_id", "Transaction"."market_id" AS "Transaction_market_id", "Transaction"."refresh_requested" AS "Transaction_refresh_requested" FROM "transaction" "Transaction" WHERE "Transaction"."id" IN ($1) -- PARAMETERS: ["fSZCMxSySv9Yn26iVgald"]
query: SELECT "Squad"."id" AS "Squad_id", "Squad"."label" AS "Squad_label", "Squad"."enabled" AS "Squad_enabled" FROM "squad" "Squad" WHERE "Squad"."id" IN ($1) -- PARAMETERS: [1]
query: START TRANSACTION
query: INSERT INTO "task_assignment"("assignee_id", "assignee_name", "task_status_id", "squad_id", "updated_on", "due_on") VALUES (DEFAULT, $1, $2, $3, DEFAULT, $4) RETURNING "id", "updated_on" -- PARAMETERS: ["",1,1,"2023-01-17T02:35:02.866Z"]
query: INSERT INTO "task"("external_id", "milestone_type", "name", "created_on", "created_by", "transaction_id", "stage_id", "task_definition_id") VALUES ($1, $2, $3, $4, $5, $6, $7, $8) RETURNING "id", "milestone_type", "created_on" -- PARAMETERS: ["q1nlW1mhLFQ4U25QDE4gL","BUYER_CLOSING_DOCUMENTS_SIGNED","Submit Closing Check","2023-01-14T02:35:03.210Z","@endpoint/api@3.258.1+2e5b5f06.3916094286.20230114","fSZCMxSySv9Yn26iVgald","nAAge3S-XA-60CxQqlDbJ","aefe4169-b154-4b6b-a9fe-214e4f6fb4f1"]
query failed: INSERT INTO "task"("external_id", "milestone_type", "name", "created_on", "created_by", "transaction_id", "stage_id", "task_definition_id") VALUES ($1, $2, $3, $4, $5, $6, $7, $8) RETURNING "id", "milestone_type", "created_on" -- PARAMETERS: ["q1nlW1mhLFQ4U25QDE4gL","BUYER_CLOSING_DOCUMENTS_SIGNED","Submit Closing Check","2023-01-14T02:35:03.210Z","@endpoint/api@3.258.1+2e5b5f06.3916094286.20230114","fSZCMxSySv9Yn26iVgald","nAAge3S-XA-60CxQqlDbJ","aefe4169-b154-4b6b-a9fe-214e4f6fb4f1"]
error: error: insert or update on table "task" violates foreign key constraint "FK_task_id"
at Parser.parseErrorMessage (/opt/app/node_modules/pg-protocol/dist/parser.js:287:98)
at Parser.handlePacket (/opt/app/node_modules/pg-protocol/dist/parser.js:126:29)
at Parser.parse (/opt/app/node_modules/pg-protocol/dist/parser.js:39:38)
at Socket.<anonymous> (/opt/app/node_modules/pg-protocol/dist/index.js:11:42)
at Socket.emit (node:events:513:28)
at Socket.emit (node:domain:489:12)
at addChunk (node:internal/streams/readable:315:12)
at readableAddChunk (node:internal/streams/readable:289:9)
at Socket.Readable.push (node:internal/streams/readable:228:10)
at TCP.onStreamRead (node:internal/stream_base_commons:190:23) {
length: 232,
severity: 'ERROR',
code: '23503',
detail: 'Key (id)=(6689) is not present in table "task_assignment".',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'task',
column: undefined,
dataType: undefined,
constraint: 'FK_task_id',
file: 'ri_triggers.c',
line: '2476',
routine: 'ri_ReportViolation'
}
query: ROLLBACK
{"app":"@endpoint/task-service","appVersion":"0.74.0+b05103a.3916168452.20230114","context":"ExceptionsHandler","host":"task-service-d5fbdc9d5-6jrjv","message":{"text":"insert or update on table \"task\" violates foreign key constraint \"FK_task_id\""},"level":"error","timestamp":"2023-01-14T02:35:03.218Z","trace":"QueryFailedError: insert or update on table \"task\" violates foreign key constraint \"FK_task_id\"\n at PostgresQueryRunner.query (/opt/app/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:211:19)\n at processTicksAndRejections (node:internal/process/task_queues:96:5)\n at async InsertQueryBuilder.execute (/opt/app/node_modules/typeorm/query-builder/InsertQueryBuilder.js:106:33)\n at async SubjectExecutor.executeInsertOperations (/opt/app/node_modules/typeorm/persistence/SubjectExecutor.js:260:42)\n at async SubjectExecutor.execute (/opt/app/node_modules/typeorm/persistence/SubjectExecutor.js:92:9)\n at async EntityPersistExecutor.execute (/opt/app/node_modules/typeorm/persistence/EntityPersistExecutor.js:147:21)\n at async TaskCreateService.storeTask (/opt/app/dist/src/core/tasks/create/TaskCreateService.js:191:28)\n at async TaskCreateController.create (/opt/app/dist/src/core/tasks/create/TaskCreateController.js:39:20)"}
```