File tree Expand file tree Collapse file tree 2 files changed +11
-1
lines changed
compiler/crates/persist-query/src Expand file tree Collapse file tree 2 files changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -34,4 +34,10 @@ pub enum PersistError {
34
34
#[ from]
35
35
source : std:: io:: Error ,
36
36
} ,
37
+
38
+ #[ error( "Failed parsing response: {source}. Raw response: {raw_response}" ) ]
39
+ DetailedResponseParseError {
40
+ source : serde_json:: Error ,
41
+ raw_response : String ,
42
+ } ,
37
43
}
Original file line number Diff line number Diff line change @@ -72,7 +72,11 @@ pub async fn persist(
72
72
let client = Client :: builder ( ) . build ( https) ;
73
73
let res = client. request ( req) . await ?;
74
74
let bytes = hyper:: body:: to_bytes ( res. into_body ( ) ) . await ?;
75
- let result: Response = serde_json:: from_slice ( & bytes) ?;
75
+ let result: Response =
76
+ serde_json:: from_slice ( & bytes) . map_err ( |err| PersistError :: DetailedResponseParseError {
77
+ source : err,
78
+ raw_response : String :: from_utf8_lossy ( & bytes) . to_string ( ) ,
79
+ } ) ?;
76
80
77
81
match result {
78
82
Response :: Success { id } => Ok ( id) ,
You can’t perform that action at this time.
0 commit comments