public inbox for [email protected]  
help / color / mirror / Atom feed
From: Stephan Szabo <[email protected]>
To: Shachar Shemesh <[email protected]>
Cc: Robert Treat <[email protected]>
Cc: Dennis Bjorklund <[email protected]>
Cc: Bruce Momjian <[email protected]>
Cc: PostgreSQL-development <[email protected]>
Cc: PostgreSQL advocacy <[email protected]>
Subject: Re: [HACKERS] What can we learn from MySQL?
Date: Fri, 23 Apr 2004 13:31:16 -0700 (PDT)
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<1082735128.22969.1106.camel@camel>
	<[email protected]>
	<[email protected]>
	<[email protected]>


On Fri, 23 Apr 2004, Stephan Szabo wrote:

> On Fri, 23 Apr 2004, Shachar Shemesh wrote:
>
> > Stephan Szabo wrote:
> >
> > >I've tried just changing the parser to unconditionally casefold to upper.
> > >First thing that happens is that initdb breaks. In addition, you have
> > >potential issues with comparisons against the catalog's versions of
> > >standard functions as such if you allow the case folding to be changed
> > >after the catalogs are setup.
> > >
> > >
> > That's not the migration path I was thinking of.
> >
> > What I was thinking of was:
> > 1. Have a setting, probably per-session. Per database works too.
> > 2. Aside from the folder upper and folder lower, have a third option.
> > This is "fold upper, if fails, fold lower. If succeeds, issue a
> > warning". This should allow programs that rely on the folding (such as
> > initdb) to be debugged during the transition period.
>
> If you can do this in a clean fashion without tromping all around the
> code, that'd be reasonable, however, istm that you'd need to either
> pre-fold both directions from the given identifier string and pass an
> extra copy around or pass the original identifier and its quoted status
> and fold on use.  I think either of these are likely to be very intrusive
> for what essentially amounts to a transitional feature.
>
> In addition, I'm not sure that this would always work in any case, since
> some of those usages may be quoted identifiers that were once generated
> from a case-folded string (for example, looking up a name in the catalogs
> and quoting it).

To clarify, I'm thinking about things where an application had gotten a
quoted name and is now trying to use it where the object's canonical name
was changed due to quoting changes. This only happens when quoting
is inconsistently applied, but that's most of the problem.




view thread (145+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: [HACKERS] What can we learn from MySQL?
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox