Re: Driver Module

From: Robert Eckhardt <reckhardt(at)pivotal(dot)io>
To: Dave Page <dpage(at)pgadmin(dot)org>
Cc: George Gelashvili <ggelashvili(at)pivotal(dot)io>, "pgadmin-hackers(at)postgresql(dot)org" <pgadmin-hackers(at)postgresql(dot)org>, "plumadmin(at)pivotal(dot)io" <plumadmin(at)pivotal(dot)io>, Ashesh Vashi <ashesh(dot)vashi(at)enterprisedb(dot)com>
Subject: Re: Driver Module
Date: 2017-01-12 04:24:44
Message-ID: CAAtBm9X4vaL5Ni3axtn-oxmZ3LDN5M8oNgDWZC9uf5dADs9wkw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

On Wed, Jan 11, 2017 at 8:07 PM, Dave Page <dpage(at)pgadmin(dot)org> wrote:

> Hi
>
> On Wed, Jan 11, 2017 at 10:24 PM, George Gelashvili
> <ggelashvili(at)pivotal(dot)io> wrote:
> > Hi Dave,
> >
> > Thanks for the pointer.
> > We realized that many of the changes we would need to make for supporting
> > Greenplum would need to go where there is pg version checking throughout
> the
> > code. This is because unlike PPAS which mostly adds additional features,
> > Greenplum is based on postgres 8.3.
>
> Isn't Heikki fixing that for your next release?
>

The current release is 8.2, we aren't trying to make that work with
pgAdmin4. Heikki did a yeomans work and the next release will be based on
8.3. Future releases should be more than one Postgres version at a time but
there was a lot of cleanup to do before we could start the Postgres
merging.

>
> > It looks like much of the version checking logic is repeated at points
> where
> > the features are differentiated by postgres version.
> >
> > It might make sense at this point to refactor the way that feature
> flagging
> > is done to be a little bit more unified between server types and postgres
> > versions so that we could for example have logic along the lines of:
> >
> > feature_enablement = FeatureEnablement(postgres_flavor,
> postgres_version)
> >
> > #...
> >
> > if(feature_enablement.check_internal_triggers ):
> > # feature call here
> >
> > and then in a feature enablement class, reference the various versions
> and
> > flavors of postgres.
> >
> > Any thoughts on this?
>
> I worry that the list of features would end up being huge - we're not
> just talking about basic things like whether DDL triggers are
> supported, but the catalog schema (e.g. procpid vs. pid in
> pg_stat_activity) and small things like whether a particular GUC can
> be set on a tablespace.
>
> Ultimately, you have to do a version check at some point though
> (unless you're proposing to do something similar to probing the DOM in
> a browser at runtime). Doesn't GP's version string contain additional
> info beyond '8.3'? In pgAdmin 3 we had a EdbMinimumVersion(int major,
> int minor) function in the connection class that basically did:
>
> return isEdb && BackendMinimumVersion(x, y);
>
> Something like that could check other elements of the GP version number.
>

Greenplum is about to start leveraging semantic versioning. The version
number for the next release will be 5.0.0.

>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
>
> --
> Sent via pgadmin-hackers mailing list (pgadmin-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgadmin-hackers
>

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Fahar Abbas 2017-01-12 05:47:13 Re: PATCH: RM# 1679 - Background process for "restore" not reporting status back to pgAdmin
Previous Message Dave Page 2017-01-12 04:07:37 Re: Driver Module