Indexer error handling improvement

Improves handling of erroneous schemas, currently indexer does not index any record if Schema service schema cannot be parsed correctly by Indexer. Indexer must index meta-attribute at very minimum if indexing fails for Schema processing.

  • Try to get as many errors as possible from the schema converter
  • Return null if schema has an error

Here is some of common mistakes users are making on Schema service schema

  • missing type attributes -- it's required attribute for indexer
  • ref cannot be resolved for various reason, here some examples where indexer schema processing will fail
    • "$ref":"slb:wks:toManyRelationship:1.0.0" -- missing definitions
    • "$ref":"#/definitions/relationships" – where ‘relationships’ does not exist on ‘definitions’.
    • "$ref":"#/definitions/Relationships" – ‘definition’ section has ‘relationship’ (all lower case).
    • "$ref":"#/definitions/relationsh" -- definition’ section has ‘relationship’ (spelling mistakes)

Errors are available in provider error logs as well as indexed documents. Users can search those via this query

Edited by Neelesh Thakur