-
Notifications
You must be signed in to change notification settings - Fork 51
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
HARMONY-2007: Add is_sequential: true where missing for query-cmr in services.yml and validations for same #698
Conversation
…services.yml and validation for same
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 couldn't find documentation for is_sequential
- can you make sure to add something in the adapting services guide in the section where we have an example service chain definition.
@@ -109,6 +110,10 @@ function validateServiceConfigSteps(config: ServiceConfig<unknown>): void { | |||
+ `Configured to use ${maxBatchInputs}, but will be limited to ${env.maxGranuleLimit}`); | |||
} | |||
} | |||
if (step.image.match(/harmonyservices\/query\-cmr:.*/) && !step.is_sequential) { | |||
|
|||
throw new TypeError(`Invalid is_sequential ${step.is_sequential}. query-cmr steps must always have sequential = true.`); |
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.
nit: should we remove the is_sequential: true
setting from query-cmr
step and enforce it in the code? This feels like leaking unnecessary implementation details to the client.
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.
This is not a client error. This is an error that shows up when you start Harmony if it is misconfigured. I think I want to keep it this way instead of adding separate handling for query-cmr.
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 should have said service provider rather than client. The service providers shouldn't have to know the query-cmr
step is sequential when they set up the service chain in services.yml. The fact that Harmony always execute query cmr sequentially shouldn't have to be spelled out in the service configuration especially when it is something the service providers doesn't care or know. Like I said that I am ok with having it spelled out because we do have other steps that also use the is_sequential
attribute, but I don't think it is necessary.
Done |
Add is_sequential: true where missing for query-cmr in services.yml and validation for same
Jira Issue ID
HARMONY-2007
Description
This fixes a configuration error where some query-cmr steps did not have
sequential: true
. This was causing jobs to move fromRUNNING_WITH_ERRORS
toCOMPLETED_WITH_ERRORS
prematurely. It also adds a validation for this setting and tests for the validation.Local Test Steps
This job will run very slowly due to issues with getting file sizes from S3 when updating work-items from query-cmr. Eventually it should move to

RUNNING_WITH_ERRORS
, and then after about an hourCOMPLETED_WITH_ERRORS
.3. Use the workflow-ui to verify that there are no running work-items. Or check the database.
You should see something like this if you set a
status: running
filter (no work-items runniing)PR Acceptance Checklist