Re: Re: unixODBC again :-(

From: Nick Gorham <nick(at)lurcher(dot)org>
To: peter_e(at)gmx(dot)net
Cc: pgman(at)candle(dot)pha(dot)pa(dot)us, pgsql-hackers(at)postgreSQL(dot)org, pgsql-odbc(at)postgreSQL(dot)org
Subject: Re: Re: unixODBC again :-(
Date: 2001-01-24 22:37:52
Message-ID: 3A6F5940.5E4F9199@lurcher.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-odbc

peter_e(at)gmx(dot)net wrote:

> Nick Gorham writes:
>
> > Well because the driver does not know where to get the config info
> > from,
>
> Then the driver should be fixed to do that, with or without unixODBC.

Well yes, but again, using the Windows situation as a model (not that
I would normally suggest windows as a role model for anything), its not the
drivers job to know or care where the info comes from, that the job of the
(a) driver manager.

> > libodbcinst.so in unixODBC provides SQLGetPrivateProfileString,
> > the location of user and system ini files are defined by this lib, if
> > it doesn't do this you may have the situation where the driver manager
> > gets information from one ini file and the driver from a different
> > one.
>
> --with-odbcinst=DIRECTORY

Yes but there are two places, the user ~/.odbc.ini directory, and the
system /sysconfdir/odbc.ini.

using the odbcinst lib, means all drivers can use the same info store, and
you can just install a binary driver without having to set any
configuration.

> > > > Add the option to detect a
> > > > server name of localhost, and open the unix domain socket,
> > >
> > > I don't think so. localhost is a valid host name.
> >
> > Ok, but don't you think it is worth having some way to get it to use
> > UNIX domain sockets instead of TCP ones, for instance if postmaster
> > isn't started with a -i ?
>
> Yes, that would be okay, but it's not okay to eliminate a feature to add
> another one.

I would agree with that, I just did it the way I did as it fitted what some
users needed. Not sure how many people would have a network setup with
localhost set in dns to point to another machine, Though I agree there is
no reason why you couldn't do it.

> > > We have a general approach to non-standard socket names now.
> >
> > Great, thats a non problem then, what do you do ?
>
> Pick up DEFAULT_PGSOCKET_DIR from config.h.

Thats ok, but if I was to keep a driver in unixODBC distrib, I would have
to have a --postgres-socket= option in the config, same problem with
odbcinst but in reverse. Maybe no simple answer to that one.

All I do at the moment, is have the driver try the two places it knows
about, maybe it should be in the ini file, perhaps if the socket_location
is set it would connect via that. It would fix the problem with using
localhost to switch the connection method.

--
Nick Gorham
When I die, I want to go like my grandfather did, gently while sleeping,
and not like his passangers, screaming in a panic, looking for the
inflatable raft. -- Seen on ./

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2001-01-24 22:42:04 Re: Open 7.1 items
Previous Message Jan Wieck 2001-01-24 22:35:54 Re: This script will crash the connection

Browse pgsql-odbc by date

  From Date Subject
Next Message Bruce Momjian 2001-01-24 23:47:33 Re: Re: unixODBC again :-(
Previous Message Dave Page 2001-01-24 22:35:48 Additional ODBC patch