awslabs/benchmark-ai

[bff] Bubble up schema validation error to customer

开放

#950 创建于 2019年10月15日

 (0 条评论) (0 个反应) (0 位负责人)Python (6 个派生)auto 404
enhancementgood first issue

仓库指标

星标
 (19 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

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

贡献者指南