diff --git a/presto-client/src/main/java/com/facebook/presto/client/QueryError.java b/presto-client/src/main/java/com/facebook/presto/client/QueryError.java index 14e31a7bf5145..733eeb171ec7f 100644 --- a/presto-client/src/main/java/com/facebook/presto/client/QueryError.java +++ b/presto-client/src/main/java/com/facebook/presto/client/QueryError.java @@ -40,7 +40,7 @@ public QueryError( @JsonProperty("errorCode") int errorCode, @JsonProperty("errorName") String errorName, @JsonProperty("errorType") String errorType, - @JsonProperty("boolean") boolean retriable, + @JsonProperty("retriable") boolean retriable, @JsonProperty("errorLocation") ErrorLocation errorLocation, @JsonProperty("failureInfo") FailureInfo failureInfo) { diff --git a/presto-client/src/test/java/com/facebook/presto/client/TestQueryError.java b/presto-client/src/test/java/com/facebook/presto/client/TestQueryError.java new file mode 100644 index 0000000000000..fd436258834bb --- /dev/null +++ b/presto-client/src/test/java/com/facebook/presto/client/TestQueryError.java @@ -0,0 +1,63 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.facebook.presto.client; + +import com.facebook.airlift.json.JsonCodec; +import org.testng.annotations.Test; + +import java.util.Collections; + +import static com.facebook.airlift.json.JsonCodec.jsonCodec; +import static org.testng.Assert.assertEquals; + +public class TestQueryError +{ + private static final JsonCodec QUERY_ERROR_CODEC = jsonCodec(QueryError.class); + + @Test + public void testToJson() + { + QueryError queryError = new QueryError( + "message", + "sqlState", + 1, + "errorName", + "errorType", + true, + new ErrorLocation(1, 2), + new FailureInfo("type", "message", null, Collections.emptyList(), Collections.emptyList(), null)); + + String json = QUERY_ERROR_CODEC.toJson(queryError); + + String expected = "{\n" + + " \"message\" : \"message\",\n" + + " \"sqlState\" : \"sqlState\",\n" + + " \"errorCode\" : 1,\n" + + " \"errorName\" : \"errorName\",\n" + + " \"errorType\" : \"errorType\",\n" + + " \"retriable\" : true,\n" + + " \"errorLocation\" : {\n" + + " \"lineNumber\" : 1,\n" + + " \"columnNumber\" : 2\n" + + " },\n" + + " \"failureInfo\" : {\n" + + " \"type\" : \"type\",\n" + + " \"message\" : \"message\",\n" + + " \"suppressed\" : [ ],\n" + + " \"stack\" : [ ]\n" + + " }\n" + + "}"; + assertEquals(json, expected); + } +}