Indexer to read from Schema Service as well as Storage Schema -- non-breaking
The Indexer currently reads only from the Storage schema endpoint for schemas that describe storage records. As part of the Schema Service roadmap, Indexer needs to consume schemas from Schema Service as well as Storage. At this stage in the roadmap, Storage Schemas will not be migrated to the Schema Service, but Indexer will read from both endpoints.
The bulk of record ingestion is expected to be through ingestion services, and these will use the Schema Service schemas to describe records being ingested. So, as noted in the Schema Service roadmap, all consumers of schemas should eventually be using only the Schema Service as the SoR for storage record descriptions and tailoring those full-featured schemas to suit their consumption patterns. The interim step proposed here is that Indexer begin reading from Schema Service for schemas first (and internally flattening those schemas as needed for indexing), then checking for Storage Schemas for a kind's schema if not found in Schema Service. This approach necessitates an eventual migration of Storage Schemas to Schema Service at some point, but this is likely to be needed anyway, i.e. Schema Service as SoR drives that requirement. By not removing the Storage Service schema endpoint and having Indexer check both endpoints, a non-breaking enhancement is introduced that allows evolutionary introduction of Schema Service schemas to the indexing workflow.