Re: Do we prefer software that works or software that looks good? - Mailing list pgsql-hackers

From Shachar Shemesh
Subject Re: Do we prefer software that works or software that looks good?
Date
Msg-id 408A2905.6030401@shemesh.biz
Whole thread Raw
In response to Re: Do we prefer software that works or software that looks good?  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
Responses Re: Do we prefer software that works or software that looks good?
List pgsql-hackers
Stephan Szabo wrote:

>[ Tom, we know your opinion on the first part of the next paragraph, so
>you don't need to reply to that part. ;) ]
>
>Are we going to get rid of the current behavior entirely?
>
I doubt that will be a good idea. You want to let applications created 
for previous versions of PostgreSQL continue to work. The idea, I think, 
is to have either a DB wide, or a session wide, option to have it either 
way. We may have to create a DB conversion tool, that converts a DB from 
one way to the other (and changes the case of functions, along the way).

> If so, how are
>we going to handle issues like current databases with names like foo and
>"FOO" (and what if the name was given as "foo")?
>
I think these are really rare. The conversion tool can warn about these 
cases.

> If not, when can one set
>the folding options and how do we (in the long term) make the database
>work properly in both settings.
>
I don't think having the same DB work in both folding options is really 
a big issue. Having two databases on the same server, one this way and 
one the other is, however. You don't want to install two database 
servers, merely because you have two applications developed for two 
different PG versions.

> Things like "don't worry about the catalog
>entries" don't fly when your standard functions are defined and
>looked up there.
>  
>
Answer above.

>Depending on the answers to the above, we need to think about things like
>the transitional plans put forth. Do these plans actually help transition
>things.
>
I think they do. The idea is to be as complaining and as verbose during 
transition as possible. Ideally, if some breakpoint can be triggered 
each time a double lookup takes place (thus knowing that the client app 
is calling the wrong way), this will allow converting apps in almost no 
time at all.

> The fold up and down compare one then the other on a failure of
>the first may be fairly invasive changes,
>
In what way invasive?

> still has problems when quotes
>are used inconsistently
>
The main issue, as far as I'm concerned, is not with PG apps that need 
to be ported to the new scheme. I don't have any qualm with never 
deprecating the lowercase folding. This, of course, puts a burden on 
utilities that work as infrastructure to always quote or always 
not-quote (depending on exact semantics), but that, I believe, is solveable.

My problem is with applications written for other, more standard 
complient, databases, and with porting these into PG. As such, if the 
app uses inconsistent quoting, it today relies on uppercase folding, and 
will not have any problem.

> and can also silently change behavior from old
>versions (on that database mentioned above, what does select * from foo
>do, is it the same as before?). These may or may not be huge issues and it
>may or may not be easily solvable, but these things need to be figured out
>IMHO before something can be considered a solution.
>  
>
I agree. It's just that I don't think this is a big issue, given the 
fact that I don't think we intend to deprecate the lowercase folding any 
time soon.
         Shachar

Remove advocacy from the CC. I don't think it's related there any more.

-- 
Shachar Shemesh
Lingnu Open Source Consulting
http://www.lingnu.com/



pgsql-hackers by date:

Previous
From: "Dave Page"
Date:
Subject: Re: Do we prefer software that works or software that looks good?
Next
From: Gaetano Mendola
Date:
Subject: Invalid pg_hba.conf => Postgres crash