-
Notifications
You must be signed in to change notification settings - Fork 96
Open
Labels
Milestone
Description
Is your feature request related to a problem? Please describe.
Creating an order with invalid band math entries results in the order being run for several minutes before the order finally fails. There is no pre-validation.
Describe the solution you'd like
Pre-validate band math entries before an order is run. This would likely happen in the band_math tool itself.
Describe alternatives you've considered
Additional context
Here's an order request with an invalid band math entry for b2.
{
"name": "name",
"products": [
{
"item_ids": [
"20230322_161237_04_24ca"
],
"item_type": "PSScene",
"product_bundle": "analytic_udm2"
}
],
"tools": [
{
"bandmath": {
"b1": "2*b1",
"b2": "3*before",
"pixel_type": "Auto"
}
}
]
}
kevinlacaille
Metadata
Metadata
Assignees
Labels
Type
Projects
Milestone
Relationships
Development
Select code repository
Activity
jreiberkyle commentedon Mar 22, 2023
pre-validation could occur on a test 1x1xnum_bands numpy array, using regex to replace e.g. b1 with test_array[:,:,0] then run the expression and look for errors. note: requires numpy, which is currently not a dependency
jreiberkyle commentedon Mar 22, 2023
for now, hold off on this to discuss a broader strategy for pre-validation of various tools although this is probably the tool that would benefit from pre-validation the most
tbarsballe commentedon Aug 22, 2024
This still seems reasonable enough to do using AST parsing