chore(proxy): remove enum and composite type queries (#11178)

In our json encoding, we only need to know about array types.
Information about composites or enums are not actually used.

Enums are quite popular, needing to type query them when not needed can
add some latency cost for no gain.
This commit is contained in:
Conrad Ludgate
2025-03-12 15:47:17 +00:00
committed by GitHub
parent 40672b739e
commit 7aec1364dd
6 changed files with 69 additions and 224 deletions

View File

@@ -860,7 +860,13 @@ impl QueryData {
let cancel_token = inner.cancel_token();
let res = match select(
pin!(query_to_json(config, &*inner, self, &mut 0, parsed_headers)),
pin!(query_to_json(
config,
&mut *inner,
self,
&mut 0,
parsed_headers
)),
pin!(cancel.cancelled()),
)
.await
@@ -944,7 +950,7 @@ impl BatchQueryData {
builder = builder.deferrable(true);
}
let transaction = builder
let mut transaction = builder
.start()
.await
.inspect_err(|_| {
@@ -957,7 +963,7 @@ impl BatchQueryData {
let json_output = match query_batch(
config,
cancel.child_token(),
&transaction,
&mut transaction,
self,
parsed_headers,
)
@@ -1009,7 +1015,7 @@ impl BatchQueryData {
async fn query_batch(
config: &'static HttpConfig,
cancel: CancellationToken,
transaction: &Transaction<'_>,
transaction: &mut Transaction<'_>,
queries: BatchQueryData,
parsed_headers: HttpHeaders,
) -> Result<String, SqlOverHttpError> {
@@ -1047,7 +1053,7 @@ async fn query_batch(
async fn query_to_json<T: GenericClient>(
config: &'static HttpConfig,
client: &T,
client: &mut T,
data: QueryData,
current_size: &mut usize,
parsed_headers: HttpHeaders,