-
Notifications
You must be signed in to change notification settings - Fork 6.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(core): Add check that queue is defined and remove cyclic dependency #7404
fix(core): Add check that queue is defined and remove cyclic dependency #7404
Conversation
Great PR! Please pay attention to the following items before merging: Files matching
Files matching
Make sure to check off this list before asking for review. |
packages/cli/src/Queue.ts
Outdated
async add(jobData: JobData, jobOptions: object): Promise<Job> { | ||
return this.jobQueue.add(jobData, jobOptions); | ||
} | ||
|
||
async getJob(jobId: JobId): Promise<Job | null> { | ||
return this.jobQueue.getJob(jobId); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
instead of removing these, can we update the code elsewhere to use these methods instead of using the jobQueue
directly?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do these methods offer any value? they don't do any additional checks or operations but just tunnel the method call through the service
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm working on adding metrics for queue for auto-scaling, and in that branch, it was helpful to have all bull specific code in a single class, instead of being spread across multiple files.
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #7404 +/- ##
==========================================
- Coverage 33.50% 33.50% -0.01%
==========================================
Files 3389 3390 +1
Lines 207020 207027 +7
Branches 22337 22339 +2
==========================================
Hits 69361 69361
- Misses 136538 136545 +7
Partials 1121 1121
☔ View full report in Codecov by Sentry. |
1 flaky test on run #2489 ↗︎Details:
|
Test | Artifacts | |
---|---|---|
NDV > resolves expression with default item when input node is not parent, while still pairing items |
Output
Screenshots
Video
|
Review all test suite changes for PR #7404 ↗︎
✅ All Cypress E2E specs passed |
# [1.12.0](https://github.com/n8n-io/n8n/compare/n8n@1.11.0...n8n@1.12.0) (2023-10-18) ### Bug Fixes * **core:** Add check that queue is defined and remove cyclic dependency ([#7404](#7404)) ([45f2ef3](45f2ef3)) * **core:** Do not throw when deleting workflows with executions without binary-data ([#7411](#7411)) ([2b6a15e](2b6a15e)) * **core:** Fix expression with paired item with multi-input node ([#7424](#7424)) ([ec14141](ec14141)) * **core:** Fix ignoring crashed executions without event msgs ([#7368](#7368)) ([2f4d91b](2f4d91b)) * **core:** Pg-promise de-initialization fix ([#7417](#7417)) ([7703904](7703904)) * **core:** Prevent false stalled jobs in queue mode from displaying as errored ([#7435](#7435)) ([e01b9e5](e01b9e5)) * **core:** Prevent undefined issues when restoring binary data ([#7419](#7419)) ([46977a2](46977a2)) * **editor:** Fix remote options fetching on every keystroke ([#7320](#7320)) ([367255a](367255a)) * **editor:** Open only one tab with plans page ([#7377](#7377)) ([c599006](c599006)) * **Google Sheets Node:** Update by row_number, restored 'Handling Extra Data Option', updated Cell Format default ([#7357](#7357)) ([d8531a5](d8531a5)) * **Ldap Node:** Fix issue with connections not closing correctly ([#7432](#7432)) ([c3f0be8](c3f0be8)) * **Set Node:** Null should not throw an error ([#7416](#7416)) ([e9b6ab0](e9b6ab0)) * **TheHive 5 Node:** Observable encoding in alert > create fix ([#7450](#7450)) ([a2d2e3d](a2d2e3d)) ### Features * **core:** Make executions pruning interval configurable ([#7439](#7439)) ([40707fa](40707fa)) * **Google Calendar Trigger Node:** Add support for cancelled events ([#7436](#7436)) ([9d241a0](9d241a0)) * **HubSpot Trigger Node:** Add support for ticket related events ([#7156](#7156)) ([57c6093](57c6093)) * **n8n Form Trigger Node:** New node ([#7130](#7130)) ([3ddc176](3ddc176)) * **Spreadsheet File Node:** Improve CSV parsing ([#7448](#7448)) ([79f23fb](79f23fb)) Co-authored-by: netroy <netroy@users.noreply.github.com>
Got released with |
…cy (#7404) In a rare edge case an undefined queue could be returned - this should not happen and now an error is thrown. Also using the opportunity to remove a cyclic dependency from the Queue.
# [1.12.0](https://github.com/n8n-io/n8n/compare/n8n@1.11.0...n8n@1.12.0) (2023-10-18) ### Bug Fixes * **core:** Add check that queue is defined and remove cyclic dependency ([#7404](#7404)) ([45f2ef3](45f2ef3)) * **core:** Do not throw when deleting workflows with executions without binary-data ([#7411](#7411)) ([2b6a15e](2b6a15e)) * **core:** Fix expression with paired item with multi-input node ([#7424](#7424)) ([ec14141](ec14141)) * **core:** Fix ignoring crashed executions without event msgs ([#7368](#7368)) ([2f4d91b](2f4d91b)) * **core:** Pg-promise de-initialization fix ([#7417](#7417)) ([7703904](7703904)) * **core:** Prevent false stalled jobs in queue mode from displaying as errored ([#7435](#7435)) ([e01b9e5](e01b9e5)) * **core:** Prevent undefined issues when restoring binary data ([#7419](#7419)) ([46977a2](46977a2)) * **editor:** Fix remote options fetching on every keystroke ([#7320](#7320)) ([367255a](367255a)) * **editor:** Open only one tab with plans page ([#7377](#7377)) ([c599006](c599006)) * **Google Sheets Node:** Update by row_number, restored 'Handling Extra Data Option', updated Cell Format default ([#7357](#7357)) ([d8531a5](d8531a5)) * **Ldap Node:** Fix issue with connections not closing correctly ([#7432](#7432)) ([c3f0be8](c3f0be8)) * **Set Node:** Null should not throw an error ([#7416](#7416)) ([e9b6ab0](e9b6ab0)) * **TheHive 5 Node:** Observable encoding in alert > create fix ([#7450](#7450)) ([a2d2e3d](a2d2e3d)) ### Features * **core:** Make executions pruning interval configurable ([#7439](#7439)) ([40707fa](40707fa)) * **Google Calendar Trigger Node:** Add support for cancelled events ([#7436](#7436)) ([9d241a0](9d241a0)) * **HubSpot Trigger Node:** Add support for ticket related events ([#7156](#7156)) ([57c6093](57c6093)) * **n8n Form Trigger Node:** New node ([#7130](#7130)) ([3ddc176](3ddc176)) * **Spreadsheet File Node:** Improve CSV parsing ([#7448](#7448)) ([79f23fb](79f23fb)) Co-authored-by: netroy <netroy@users.noreply.github.com>
In a rare edge case an undefined queue could be returned - this should not happen and now an error is thrown.
Also using the opportunity to remove a cyclic dependency from the Queue.