From db91b3df21f98ed0a102f3cb8e13f4ff48396ec1 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 22 Jul 2022 02:23:25 +0200 Subject: [PATCH] Fix error when using _both_ `types=true` and `error_trace=true` options --- src/crate/client/http.py | 4 ++-- src/crate/client/test_http.py | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/crate/client/http.py b/src/crate/client/http.py index c6dd1ff0c..e932f732e 100644 --- a/src/crate/client/http.py +++ b/src/crate/client/http.py @@ -315,7 +315,7 @@ class Client(object): Crate connection client using CrateDB's HTTP API. """ - SQL_PATH = '/_sql?types' + SQL_PATH = '/_sql?types=true' """Crate URI path for issuing SQL statements.""" retry_interval = 30 @@ -385,7 +385,7 @@ def __init__(self, self.path = self.SQL_PATH if error_trace: - self.path += '?error_trace=true' + self.path += '&error_trace=true' def close(self): for server in self.server_pool.values(): diff --git a/src/crate/client/test_http.py b/src/crate/client/test_http.py index fdd5ce151..5c22c0b6d 100644 --- a/src/crate/client/test_http.py +++ b/src/crate/client/test_http.py @@ -431,12 +431,13 @@ def test_params(self): client = Client(['127.0.0.1:4200'], error_trace=True) parsed = urlparse(client.path) params = parse_qs(parsed.query) - self.assertEqual(params["types?error_trace"], ["true"]) + self.assertEqual(params["types"], ["true"]) + self.assertEqual(params["error_trace"], ["true"]) client.close() def test_no_params(self): client = Client() - self.assertEqual(client.path, "/_sql?types") + self.assertEqual(client.path, "/_sql?types=true") client.close()