Re: PostgreSQL gaps wrt to java, and jdbc

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: PostgreSQL gaps wrt to java, and jdbc
Дата
Msg-id 559C2CA8.6000200@iki.fi
обсуждение исходный текст
Ответ на Re: PostgreSQL gaps wrt to java, and jdbc  (Kevin Wooten <kdubb@me.com>)
Ответы Re: PostgreSQL gaps wrt to java, and jdbc  (Dave Cramer <davecramer@gmail.com>)
Re: PostgreSQL gaps wrt to java, and jdbc  (Kevin Wooten <kdubb@me.com>)
Список pgsql-jdbc
On 07/07/2015 09:31 PM, Kevin Wooten wrote:
> == Binary type coercion ==
> The biggest impediment I’ve run into is the fact that PG will not
> attempt coercion on binary types. If you specify a binary type in the
> protocol, that’s the final word. A better system would be to have PG
> perform the same coercion it does for text types and then send the
> results back with coerced types, in binary; finally falling back to
> text when binary cannot be produced. This would solve almost every
> issue we have had to work around in the “ng” driver.

Can you elaborate? I'm confused, because the server can produce binary
output for any datatype that has binary output functions. That covers
all built-in datatypes and all extension datatypes people use in practice.

What I've imagined to be a problem, though, is that you have to either
understand the binary representation of all datatypes in the client, or
you have to request binary for only those datatypes you can handle. And
to know which datatype a result set's column has, you have to Describe
it before fetching the results, which adds an extra round-trip. So it
would be handy if the driver could provide the server a list of
datatypes that should be sent as binary, as a one-time operation at the
beginning of the session for example, rather than indicating for each
column in each query separately.

- Heikki



В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Kevin Wooten
Дата:
Сообщение: Re: PostgreSQL gaps wrt to java, and jdbc
Следующее
От: Dave Cramer
Дата:
Сообщение: Re: PostgreSQL gaps wrt to java, and jdbc