awslabs/benchmark-ai

[bff] Bubble up schema validation error to customer

Ouverte

#950 ouverte le 15 oct. 2019

 (0 commentaire) (0 réaction) (0 personne assignée)Python (6 forks)auto 404
enhancementgood first issue

Métriques du dépôt

Stars
 (19 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

If there is a "TOML" schema validation error the user does not get an informative error message. What they get is:

[ERROR] Submission was NOT successful - submission rejected by service:
{"status":400,"headers":{},"body":"Could Not Parse Submitted Descriptor: JSON Validation error:"}

The validation takes place here, and thus the genesis of this exception https://github.com/awslabs/benchmark-ai/blob/master/bai-bff/src/bai_bff/events.clj#L45

What it really looks like is:

Execution error (ValidationException) at org.everit.json.schema.ValidationException/prepend (ValidationException.java:395).
#/ml/args: expected type: JSONArray, found: String

So the task here is to expose that exception's details through the bubbled up exception, "handled" in the calling environment: https://github.com/awslabs/benchmark-ai/blob/master/bai-bff/src/bai_bff/http_api.clj#L38

Guide contributeur