bluesky / event-model

data model for event-based data collection and analysis
https://blueskyproject.io/event-model
BSD 3-Clause "New" or "Revised" License
15 stars 31 forks source link

RunRouter filling skips whole Event if any specs are unknown #188

Open danielballan opened 4 years ago

danielballan commented 4 years ago

The functionality of RunRouter's filling is confusing. By default, it tries to fill and silently gives up if it encounters a spec it doesn't know. You can opt in to stricter behavior. So far, so good.

https://github.com/bluesky/event-model/blob/14b082682a428d54e92676368777285b17815183/event_model/__init__.py#L1223-L1227

But when it fails to resolve a spec, it bails on filling the entire document. That is, if an Event has fields from two detectors, and we know how to fill Detector A but we don't know how to fill Detector B, neither will be filled.

I haven't given thought yet to what we should do about this, just making sure it is documented.

https://github.com/bluesky/event-model/blob/14b082682a428d54e92676368777285b17815183/event_model/__init__.py#L1342-L1349

tacaswell commented 4 years ago

I am (on 45s of thought) in favor of filling as much as we can when in forgiving mode. It gives you a nice signal of "that field is broken" ;)