Re: Removing support for < 7.4 servers

From: "Inoue, Hiroshi" <inoue(at)tpf(dot)co(dot)jp>
To: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
Cc: "pgsql-odbc(at)postgresql(dot)org" <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: Removing support for < 7.4 servers
Date: 2013-08-22 03:54:19
Message-ID: 52158B6B.1050004@tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

(2013/08/20 19:53), Heikki Linnakangas wrote:
> Hi,
>
> I've been browsing the code to figure out how we could use
> protocol-level cursors, instead of DECLARE/FETCH, to make the default
> behavior of the driver nicer.

Protocol-level cursors don't support SCROLLABLE or HOLDABLE option
unfortunately.

> However, all the different ways a query
> can be prepared and executed is making my head explode. The driver
> supports many completely obsoleted ways to do things, for the sake of
> supporting 7.3 era servers which didn't support the extended query
> protocol. There is even some code to support 6.2-era servers.
>
> I'd like to rip out all the support for pre-7.4 servers, including
> protocol version 2, to simplify the code. Any objections? If someone is
> running a really old server version, I think it's fair to insist that
> they also use a somewhat old version of the driver. (the only thing
> anyone should be doing with 7.3 servers today is pg_dump, to be honest)

Agreed.

> I pushed a patch to github to do that, to see what the effect is to the
> code:
> https://github.com/hlinnaka/psqlodbc/commit/d5cbe6e62a72d87200217b73360a2c515a2fec79
>
>
> $ git diff --stat master..require74
> columninfo.c | 51 ++-
> columninfo.h | 2 +-
> connection.c | 766 +++++++++----------------------------
> connection.h | 60 +--
> convert.c | 235 ++----------
> descriptor.c | 10 -
> dlg_specific.c | 82 ++--
> dlg_specific.h | 8 +-
> dlg_wingui.c | 24 --
> execute.c | 54 +--
> info.c | 1148
> +++++++++++++++++---------------------------------------
> info30.c | 47 +--
> misc.c | 4 +-
> multibyte.c | 33 +-
> odbcapi.c | 6 +-
> odbcapiw.c | 3 +-
> options.c | 5 -
> parse.c | 90 ++---
> pgtypes.c | 43 +--
> psqlodbc.h | 9 -
> psqlodbc.rc | 22 --
> qresult.c | 113 ++----
> resource.h | 5 -
> results.c | 167 ++++-----
> socket.c | 34 +-
> socket.h | 3 -
> statement.c | 39 +-
> statement.h | 6 -
> 28 files changed, 784 insertions(+), 2285 deletions(-)
>
> That's just the beginning though. I think we can get rid of much of the
> "premature execution" stuff, replacing it with the v3 protocol-level
> Describe functionality.

"Premature execution" should be removed completely when we remove
support for < 7.4 servers.

regards,
Hiroshi Inoue

In response to

Browse pgsql-odbc by date

  From Date Subject
Next Message Heikki Linnakangas 2013-08-22 06:50:04 Re: UseServerSidePrepare and data-at-execution
Previous Message Inoue, Hiroshi 2013-08-21 23:50:16 Re: UseServerSidePrepare and data-at-execution