-
Notifications
You must be signed in to change notification settings - Fork 0
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
Limit stat update range to end of AOPCADMD data #318
Conversation
@taldcroft I'm not sure how well this generalizes or if it will be perfect, but what are your thoughts on this approach in the mica guide/acq stats code to not try to process obsid events that are from maude but aren't yet in cxc archive? I'm using the fancy kadi stop filter because I'd prefer the "obsid" event (for whatever it is worth) to be fully contained. |
I did a drive-by earlier and it took me a second to understand the driver for
Some facsimile of the above should probably go in a code comment. One question I did have here is why the original processing logic used |
Right, I wasn't sure how much to comment on gotchas of kadi events in this PR. For example it looks to me like the "stop" keyword is both inclusive and filters on the start time of the obsid event, unless the extended django syntax is used in which case it looks to apply to the stop attribute of the obsid event. I don't know if that's documented someplace or if I'm just getting confused by some spot checks on behavior. |
With regard to obsids instead of kadi manvrs, I don't think it really matters - I think this code predates having the obsid available in maneuver events for example, and since it is all obsid-based anyway, just getting obsids to process made sense when this was plugged in here as a replacement for data from one of the sybase tables. |
With what we currently have in the kadi-events-from-maude data, I couldn't see a slam dunk here in functional testing. I think this is still a benign fix that can just go in - or we could skip the PR if the error condition is actually not likely to occur often. Either way. |
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.
Looks good!
Description
Limit stat update range to end of AOPCADMD data by default.
Fixes issue that more kadi.obsid events from sot/kadi#343 could cause errors out of the update code.
Interface impacts
Testing
Unit tests
Independent check of unit tests by [REVIEWER NAME]
Functional tests
For functional testing, I created a ska3 test environment with the updated kadi events3.db3 file seeded with the flight versions of the acq and guide stats tables and ran masters mica status update jobs on that and then re-seeded the tables and ran this PRs update jobs on on those tables.
Unfortunately, with the data available just now, there are no errors from the masters version - I believe this is due to the fact that there is already code to not process the obsids if 1) there is no obspar available or 2) there is no complete next manvr. So we'd need a bunch of events with obspars but no cxc aopcadmd data to hit this new filter in the new PR.
However, given the scope of this PR I think just showing that the update job processes without error using the new code is really sufficient functional testing: