Avoid parsing error when loading unknown scheduler job types
This changes the fallback types in JobDefinitionConfig and JobTriggerData to not throw an error when parsing a database entry. We will log a warning instead when a fallback type is constructed.
/nocl No user-visible change
RFC: @Graylog2/architecture
With this change, we avoid errors when some code loads all job definitions or triggers and the collections contain outdated entries without subtype binding.
What do you think? If we want to merge this change, we should establish it as a generic pattern for our polymorphic types.
I think having a "fallback" config/type etc. suggests that this is meant to keep the system working in case an unknown type is encountered. If we wanted to fail fast in case an unknown type is encountered, we would just not provide a fallback config at all, right?
So yes, I think if a fallback config is provided, then it should handle the case gracefully as a general pattern.