Vote needed: revert beta2 changes or not?

Started by Tom Laneover 20 years ago44 messages
#1Tom Lane
tgl@sss.pgh.pa.us

Just before 8.1beta2 went out, Neil made the following changes:

Rename pg_complete_relation_size() to
pg_total_relation_size(), for the sake of brevity and clarity.

Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or
failure.

(BTW, this is by no means solely Neil's fault, because both Bruce and I
encouraged him to proceed.)

Several people have opined that we ought to revert one or both of these
changes. The arguments in favor of reversion are basically

(a) we failed to follow normal development process. The names and
APIs of these functions were already hashed out in long discussions
months ago, so second-guessing them with relatively little discussion
is at best impolite.

(b) pg_cancel_backend() was already in 8.0, and so changing it now
represents an API break, for which being "a little cleaner" is not
sufficient justification.

As against that, changing them back now might just confuse matters even
more. And I tend to agree with Neil's judgment that the new definitions
are cleaner in themselves.

We need to make a decision before releasing beta3. We've already forced
an initdb for beta3, so we can change "for free" now, but it's entirely
possible that there will be no additional opportunity before 8.1 final.

Some private discussion among core didn't result in any clear consensus,
so it seems the best thing to do is throw the matter out for a vote on
pgsql-hackers.

The plausible alternatives seem to be:

1. Leave it as-is.

2. Revert the result type of pg_cancel_backend() to int, but leave the
rest as-is (minimum change to avoid a compatibility break with 8.0).

3. Revert all three result-type changes, in the name of consistency.

4. Revert all four changes, on the grounds that we shouldn't allow such
a violation of process.

Opinions please?

regards, tom lane

#2Noname
mark@mark.mielke.cc
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me. It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

Cheers,
mark

On Thu, Oct 06, 2005 at 09:27:55PM -0400, Tom Lane wrote:

Just before 8.1beta2 went out, Neil made the following changes:

Rename pg_complete_relation_size() to
pg_total_relation_size(), for the sake of brevity and clarity.

Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or
failure.

(BTW, this is by no means solely Neil's fault, because both Bruce and I
encouraged him to proceed.)

Several people have opined that we ought to revert one or both of these
changes. The arguments in favor of reversion are basically

(a) we failed to follow normal development process. The names and
APIs of these functions were already hashed out in long discussions
months ago, so second-guessing them with relatively little discussion
is at best impolite.

(b) pg_cancel_backend() was already in 8.0, and so changing it now
represents an API break, for which being "a little cleaner" is not
sufficient justification.

As against that, changing them back now might just confuse matters even
more. And I tend to agree with Neil's judgment that the new definitions
are cleaner in themselves.

We need to make a decision before releasing beta3. We've already forced
an initdb for beta3, so we can change "for free" now, but it's entirely
possible that there will be no additional opportunity before 8.1 final.

Some private discussion among core didn't result in any clear consensus,
so it seems the best thing to do is throw the matter out for a vote on
pgsql-hackers.

The plausible alternatives seem to be:

1. Leave it as-is.

2. Revert the result type of pg_cancel_backend() to int, but leave the
rest as-is (minimum change to avoid a compatibility break with 8.0).

3. Revert all three result-type changes, in the name of consistency.

4. Revert all four changes, on the grounds that we shouldn't allow such
a violation of process.

Opinions please?

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

--
mark@mielke.cc / markm@ncf.ca / markm@nortel.com __________________________
. . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder
|\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ |
| | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada

One ring to rule them all, one ring to find them, one ring to bring them all
and in the darkness bind them...

http://mark.mielke.cc/

#3Rod Taylor
pg@rbt.ca
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

On Thu, 2005-10-06 at 21:27 -0400, Tom Lane wrote:

Just before 8.1beta2 went out, Neil made the following changes:

Rename pg_complete_relation_size() to
pg_total_relation_size(), for the sake of brevity and clarity.

Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or
failure.

The plausible alternatives seem to be:

1. Leave it as-is.

+1

I prefer the changes and if the choice is do it now or do them in 8.2
(they are improvements), then I choose to take them now.

--

#4Marc G. Fournier
scrappy@postgresql.org
In reply to: Noname (#2)
Re: Vote needed: revert beta2 changes or not?

On Thu, 6 Oct 2005, mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me. It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

If we don't enforce the process this time, why would we enforce it next
time?

You either always enforce it, or never ... you don't pick and choose
though ...

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#5Marc G. Fournier
scrappy@postgresql.org
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

On Thu, 6 Oct 2005, Tom Lane wrote:

Just before 8.1beta2 went out, Neil made the following changes:

Rename pg_complete_relation_size() to
pg_total_relation_size(), for the sake of brevity and clarity.

Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or
failure.

(BTW, this is by no means solely Neil's fault, because both Bruce and I
encouraged him to proceed.)

Several people have opined that we ought to revert one or both of these
changes. The arguments in favor of reversion are basically

(a) we failed to follow normal development process. The names and
APIs of these functions were already hashed out in long discussions
months ago, so second-guessing them with relatively little discussion
is at best impolite.

(b) pg_cancel_backend() was already in 8.0, and so changing it now
represents an API break, for which being "a little cleaner" is not
sufficient justification.

As against that, changing them back now might just confuse matters even
more. And I tend to agree with Neil's judgment that the new definitions
are cleaner in themselves.

We need to make a decision before releasing beta3. We've already forced
an initdb for beta3, so we can change "for free" now, but it's entirely
possible that there will be no additional opportunity before 8.1 final.

Some private discussion among core didn't result in any clear consensus,
so it seems the best thing to do is throw the matter out for a vote on
pgsql-hackers.

The plausible alternatives seem to be:

1. Leave it as-is.

2. Revert the result type of pg_cancel_backend() to int, but leave the
rest as-is (minimum change to avoid a compatibility break with 8.0).

3. Revert all three result-type changes, in the name of consistency.

4. Revert all four changes, on the grounds that we shouldn't allow such
a violation of process.

I vote for this one, else we are setting a precedent that this sort of
thing during a beta freeze is acceptable, which it shouldn't be :(

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#6Greg Sabino Mullane
greg@turnstep.com
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The plausible alternatives seem to be:

1. Leave it as-is.

I vote for this. It's not an ideal situation, but the names should
be changed at some point - better now than later, as it reduces the
lifetime of the "bad" names. Put a large warning (and a small apology)
in the release notes.

- --
Greg Sabino Mullane greg@turnstep.com
PGP Key: 0x14964AC8 200510062202
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8

-----BEGIN PGP SIGNATURE-----

iD8DBQFDRdenvJuQZxSWSsgRAniyAJ9hjJBYdGl1PttvZm1VrfR+vPnI1wCeMW/t
u8dv1J8fD4ayUUEFSkhPNrY=
=brzE
-----END PGP SIGNATURE-----

#7David Fetter
david@fetter.org
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

On Thu, Oct 06, 2005 at 09:27:55PM -0400, Tom Lane wrote:

Just before 8.1beta2 went out, Neil made the following changes:

Rename pg_complete_relation_size() to
pg_total_relation_size(), for the sake of brevity and clarity.

Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or
failure.

(BTW, this is by no means solely Neil's fault, because both Bruce and I
encouraged him to proceed.)

Several people have opined that we ought to revert one or both of these
changes. The arguments in favor of reversion are basically

(a) we failed to follow normal development process. The names and
APIs of these functions were already hashed out in long discussions
months ago, so second-guessing them with relatively little discussion
is at best impolite.

(b) pg_cancel_backend() was already in 8.0, and so changing it now
represents an API break, for which being "a little cleaner" is not
sufficient justification.

As against that, changing them back now might just confuse matters even
more. And I tend to agree with Neil's judgment that the new definitions
are cleaner in themselves.

We need to make a decision before releasing beta3. We've already forced
an initdb for beta3, so we can change "for free" now, but it's entirely
possible that there will be no additional opportunity before 8.1 final.

Some private discussion among core didn't result in any clear consensus,
so it seems the best thing to do is throw the matter out for a vote on
pgsql-hackers.

The plausible alternatives seem to be:

1. Leave it as-is.

+1, for what it's worth.

Cheers,
D
--
David Fetter david@fetter.org http://fetter.org/
phone: +1 510 893 6100 mobile: +1 415 235 3778

Remember to vote!

#8Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Noname (#2)
Re: Vote needed: revert beta2 changes or not?

mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me. It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

I agree with this sentiment. It is not like this happens regularly and
we need to punish someone. Mistakes happen in process, but it is
usually not intentional, meaning fear of punishment isn't effective, or
even desirable.

If it happened regularly by a single individual, that would be a
different story.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#9Joshua D. Drake
jd@commandprompt.com
In reply to: Marc G. Fournier (#5)
Re: Vote needed: revert beta2 changes or not?

1. Leave it as-is.

+1 From here..

Joshua D. Drake

--
Your PostgreSQL solutions company - Command Prompt, Inc. 1.800.492.2240
PostgreSQL Replication, Consulting, Custom Programming, 24x7 support
Managed Services, Shared and Dedicated Hosting
Co-Authors: plPHP, plPerlNG - http://www.commandprompt.com/

#10Alvaro Herrera
alvherre@alvh.no-ip.org
In reply to: Marc G. Fournier (#4)
Re: Vote needed: revert beta2 changes or not?

On Thu, Oct 06, 2005 at 10:57:33PM -0300, Marc G. Fournier wrote:

On Thu, 6 Oct 2005, mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me.

It's not just for the sake of process. It's because the pgAdmin guys,
who were the ones which invented the API and the users of it, are
already using it with this interface. Changing it means they take the
compatibility hit. However, I question how hard the compatibility hit
is -- for the return type, isn't it a matter of testing two possible
values instead of one? The naming case is harder, but how much?

My vote is to not change them again.

It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

If we don't enforce the process this time, why would we enforce it next
time?

Because we will know better.

--
Alvaro Herrera Architect, http://www.EnterpriseDB.com
"La fuerza no est� en los medios f�sicos
sino que reside en una voluntad indomable" (Gandhi)

#11Jonah H. Harris
jonah.harris@gmail.com
In reply to: Alvaro Herrera (#10)
Re: Vote needed: revert beta2 changes or not?

Just my two cents... but I prefer option 1.

2005/10/6, Alvaro Herrera <alvherre@alvh.no-ip.org>:

On Thu, Oct 06, 2005 at 10:57:33PM -0300, Marc G. Fournier wrote:

On Thu, 6 Oct 2005, mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me.

It's not just for the sake of process. It's because the pgAdmin guys,
who were the ones which invented the API and the users of it, are
already using it with this interface. Changing it means they take the
compatibility hit. However, I question how hard the compatibility hit
is -- for the return type, isn't it a matter of testing two possible
values instead of one? The naming case is harder, but how much?

My vote is to not change them again.

It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

If we don't enforce the process this time, why would we enforce it next
time?

Because we will know better.

--
Alvaro Herrera Architect, http://www.EnterpriseDB.com
"La fuerza no está en los medios físicos
sino que reside en una voluntad indomable" (Gandhi)

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faq

--
Respectfully,

Jonah H. Harris, Database Internals Architect
EnterpriseDB Corporation
http://www.enterprisedb.com/

#12Dave Page
dpage@vale-housing.co.uk
In reply to: Jonah H. Harris (#11)
Re: Vote needed: revert beta2 changes or not?

-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Tom Lane
Sent: 07 October 2005 02:28
To: pgsql-hackers@postgresql.org
Subject: [HACKERS] Vote needed: revert beta2 changes or not?

2. Revert the result type of pg_cancel_backend() to int, but
leave the
rest as-is (minimum change to avoid a compatibility break
with 8.0).

+1 (I do know people who will need to modify scripts because of this
change), though I'm obviously not going to win having already scanned
the entire thread :-)

/D

#13Dave Page
dpage@vale-housing.co.uk
In reply to: Dave Page (#12)
Re: Vote needed: revert beta2 changes or not?

-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of
Alvaro Herrera
Sent: 07 October 2005 03:32
To: Marc G. Fournier
Cc: mark@mark.mielke.cc; Tom Lane; pgsql-hackers@postgresql.org
Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?

On Thu, Oct 06, 2005 at 10:57:33PM -0300, Marc G. Fournier wrote:

On Thu, 6 Oct 2005, mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user,

that I get

generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.

I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me.

It's not just for the sake of process. It's because the pgAdmin guys,
who were the ones which invented the API and the users of it, are
already using it with this interface. Changing it means they take the
compatibility hit. However, I question how hard the compatibility hit
is -- for the return type, isn't it a matter of testing two possible
values instead of one? The naming case is harder, but how much?

Thanks Alvaro :-). More by luck than judgement we actually weren't
affected by any of the changes in the end. I do think that
pg_cancel_backend should be reverted given that it is a change from 8.0
as opposed to being completely new, and I definitely think we need to
ensure that this sort of thing doesn't happen again in beta without very
good reason.

Regards, Dave.

#14Andreas Pflug
pgadmin@pse-consulting.de
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

Tom Lane wrote:

As against that, changing them back now might just confuse matters even
more. And I tend to agree with Neil's judgment that the new definitions
are cleaner in themselves.

When talking about cleanliness of the definition, a name like
"pg_stat_file" seems quite unfortunate since in the presence of many
pg_stat_* statistics functions it sounds like a function dealing with
statistics files. The pg_*_file names were actually not discussed
exhaustively, originally posted as pg_file_*.

Taking from this, a clean naming convention would require
pg_backend_cancel (and pg_file_stat), extending this beta2->beta3
changes even more but leaving backward compatibility if the int
pg_cancel_backend isn't replaced, but accompanied by a clean bool version.

As Dave already pointed out, pgAdmin isn't affected itself, since we
need some additional functions anyway to remain 8.0 compatibility.

Regards,
Andreas

#15Noname
mark@mark.mielke.cc
In reply to: Alvaro Herrera (#10)
Re: Vote needed: revert beta2 changes or not?

Not that I want this to become a flame war - but because two separate
people challenged my opinion, and I only wish to clarify what it is... :-)

On Thu, Oct 06, 2005 at 10:32:12PM -0400, Alvaro Herrera wrote:

On Thu, Oct 06, 2005 at 10:57:33PM -0300, Marc G. Fournier wrote:

On Thu, 6 Oct 2005, mark@mark.mielke.cc wrote:

I don't get a vote - but I do want to suggest, as a user, that I get
generally annoyed with the presence of interfaces with names that
were chosen for historical reasons, but are maintained only for
compatibility, and either never did, or no longer apply.
I'd rather you left it fixed. Returning it to the old name, for the
sake of process, and no other good reason, doesn't appeal to me.

It's not just for the sake of process. It's because the pgAdmin guys,
who were the ones which invented the API and the users of it, are
already using it with this interface. Changing it means they take the
compatibility hit. However, I question how hard the compatibility hit
is -- for the return type, isn't it a matter of testing two possible
values instead of one? The naming case is harder, but how much?

If it is to be changed in the future, say, 8.2, I don't believe this
point has merit. If, however, it would not be changed in the future,
say, 8.2, you are correct.

It is
a lesson learned. We move on. Enforce the process next time. Self
inflicted punishment is somewhat masochistic. :-)

If we don't enforce the process this time, why would we enforce it next
time?

Because we will know better.

Yes. And because the people involved are not children. They are mature
adults. :-)

Cheers,
mark

--
mark@mielke.cc / markm@ncf.ca / markm@nortel.com __________________________
. . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder
|\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ |
| | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada

One ring to rule them all, one ring to find them, one ring to bring them all
and in the darkness bind them...

http://mark.mielke.cc/

#16Robert Treat
xzilla@users.sourceforge.net
In reply to: Dave Page (#12)
Re: Vote needed: revert beta2 changes or not?

On Friday 07 October 2005 03:50, Dave Page wrote:

-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Tom Lane
Sent: 07 October 2005 02:28
To: pgsql-hackers@postgresql.org
Subject: [HACKERS] Vote needed: revert beta2 changes or not?

2. Revert the result type of pg_cancel_backend() to int, but
leave the
rest as-is (minimum change to avoid a compatibility break
with 8.0).

+1 (I do know people who will need to modify scripts because of this
change), though I'm obviously not going to win having already scanned
the entire thread :-)

I'm sympathetic to this, but doesn't it seem worse to have this one function
return int if all the others return boolean? Also they don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to return int
based on the boolean version?

--
Robert Treat
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL

#17Dave Page
dpage@vale-housing.co.uk
In reply to: Robert Treat (#16)
Re: Vote needed: revert beta2 changes or not?

-----Original Message-----
From: Robert Treat [mailto:xzilla@users.sourceforge.net]
Sent: 07 October 2005 16:36
To: pgsql-hackers@postgresql.org
Cc: Dave Page; Tom Lane
Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?

On Friday 07 October 2005 03:50, Dave Page wrote:

-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Tom Lane
Sent: 07 October 2005 02:28
To: pgsql-hackers@postgresql.org
Subject: [HACKERS] Vote needed: revert beta2 changes or not?

2. Revert the result type of pg_cancel_backend() to int, but
leave the
rest as-is (minimum change to avoid a compatibility break
with 8.0).

+1 (I do know people who will need to modify scripts because of this
change), though I'm obviously not going to win having

already scanned

the entire thread :-)

I'm sympathetic to this, but doesn't it seem worse to have
this one function
return int if all the others return boolean?

It's not pretty, but then how many other names might we change these
days because they don't fit in with current thinking?

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Regards, Dave.

#18Tom Lane
tgl@sss.pgh.pa.us
In reply to: Dave Page (#17)
Re: Vote needed: revert beta2 changes or not?

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

regards, tom lane

#19Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Tom Lane (#18)
Re: Vote needed: revert beta2 changes or not?

Tom Lane wrote:

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

-1, too confusing. We have always been willing to modify API's,
especially for admin stuff, as we add features. If we keep everything
around, we end up like Oracle. That has VARCHAR2 written all over it. :-)

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#20Alvaro Herrera
alvherre@alvh.no-ip.org
In reply to: Tom Lane (#18)
Re: Vote needed: revert beta2 changes or not?

On Fri, Oct 07, 2005 at 11:56:50AM -0400, Tom Lane wrote:

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

+1

--
Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34
"Siempre hay que alimentar a los dioses, aunque la tierra est� seca" (Orual)

#21Noname
Anjali.Sinha@relianceinfo.com
In reply to: Alvaro Herrera (#20)
Re: Vote needed: revert beta2 changes or not?

Unsubscribe me. Or Can anyone forward me the emailId of the concerned
person..??

Regards,
Anjali Sinha
ASCG, Reliance Infocomm
J Block, SB-11, 2nd Floor,
Dhirubhai Ambani Knowledge City,
Thane Belapur Road, New Mumbai India, 400 709
DID: 91 22 30387862
____________________________________________

Alvaro Herrera
<alvherre@alvh.no-ip.or To: Tom Lane <tgl@sss.pgh.pa.us>
g> cc: Dave Page <dpage@vale-housing.co.uk>, Robert Treat
Sent by: <xzilla@users.sourceforge.net>, pgsql-hackers@postgresql.org, (bcc: Anjali
pgsql-hackers-owner@pos Sinha/INFOCOMM/RIL)
tgresql.org Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?
Importance: Normal Sender's OU: Reliance |------------------|
| [ ] Confidential |
10/07/2005 09:38 PM |------------------|

On Fri, Oct 07, 2005 at 11:56:50AM -0400, Tom Lane wrote:

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a

hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

+1

--
Alvaro Herrera
http://www.amazon.com/gp/registry/DXLWNGRJD34
"Siempre hay que alimentar a los dioses, aunque la tierra esté seca"
(Orual)

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

#22Jonah H. Harris
jonah.harris@gmail.com
In reply to: Tom Lane (#18)
Re: Vote needed: revert beta2 changes or not?

IMHO, it leads to more maintenance work to support backward
compatibility. Can we give it a desupport version such as saying,
"it's currently deprecated and will be completely removed in 8.2, 8.3,
...?" That way, supporting the both for the short-term wouldn't be
too wasteful.

( sorry Tom, GMAIL defaults to REPLY not REPLY ALL :( )

2005/10/7, Tom Lane <tgl@sss.pgh.pa.us>:

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faq

--
Respectfully,

Jonah H. Harris, Database Internals Architect
EnterpriseDB Corporation
http://www.enterprisedb.com/

#23Joshua D. Drake
jd@commandprompt.com
In reply to: Alvaro Herrera (#20)
Re: Vote needed: revert beta2 changes or not?

On Fri, 2005-10-07 at 12:08 -0400, Alvaro Herrera wrote:

On Fri, Oct 07, 2005 at 11:56:50AM -0400, Tom Lane wrote:

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

+1

I would vote for this "if" we deprecate the old one and say that it will
be removed for 8.2.

Sincerely,

Joshua D. Drake

--
Your PostgreSQL solutions company - Command Prompt, Inc. 1.800.492.2240
PostgreSQL Replication, Consulting, Custom Programming, 24x7 support
Managed Services, Shared and Dedicated Hosting
Co-Authors: plPHP, plPerlNG - http://www.commandprompt.com/

#24Rod Taylor
pg@rbt.ca
In reply to: Tom Lane (#18)
Re: Vote needed: revert beta2 changes or not?

On Fri, 2005-10-07 at 11:56 -0400, Tom Lane wrote:

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

I could vote for:

bool pg_query_cancel(int)

backend_cancel or cancel_backend sounds like it should terminate the
entire backend like kill -TERM would do.
--

#25Dave Page
dpage@vale-housing.co.uk
In reply to: Rod Taylor (#24)
Re: Vote needed: revert beta2 changes or not?

-----Original Message-----
From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
Sent: 07 October 2005 16:57
To: Dave Page
Cc: Robert Treat; pgsql-hackers@postgresql.org
Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type.

I suppose

they could write it to take an int8 pid or something, but

that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

Oh no, what have I started!! :-)

Let's just make the change and let the few people affected modify their
scripts, otherwise this is gonna get very messy.

Thankfully I think we've all learnt from this :-)

Regards, Dave.

#26Aly S.P Dharshi
aly.dharshi@telus.net
In reply to: Jonah H. Harris (#22)
Re: Vote needed: revert beta2 changes or not?

Yeah this is a good point, if you say okay folks we will keep this for you
till version 8.2 or whatever and then you are on your own, with major
notices wherever reasonable, manuals et al. then I would throw my vote for
this, given I am entitled to a vote.

ASD.

On Fri, 7 Oct 2005, Jonah H. Harris wrote:

IMHO, it leads to more maintenance work to support backward
compatibility. Can we give it a desupport version such as saying,
"it's currently deprecated and will be completely removed in 8.2, 8.3,
...?" That way, supporting the both for the short-term wouldn't be
too wasteful.

( sorry Tom, GMAIL defaults to REPLY not REPLY ALL :( )

--
Aly S.P Dharshi
aly.dharshi@telus.net

"A good speech is like a good dress
that's short enough to be interesting
and long enough to cover the subject"

#27Marc G. Fournier
scrappy@postgresql.org
In reply to: Bruce Momjian (#19)
Re: Vote needed: revert beta2 changes or not?

On Fri, 7 Oct 2005, Bruce Momjian wrote:

Tom Lane wrote:

"Dave Page" <dpage@vale-housing.co.uk> writes:

Also they
don't need to modify
scripts, can't they just write thier own pg_cacnel_backend to
return int
based on the boolean version?

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

-1, too confusing. We have always been willing to modify API's,
especially for admin stuff, as we add features. If we keep everything
around, we end up like Oracle. That has VARCHAR2 written all over it. :-)

Actually, my only argument *against* the change was that it was during a
period where such changes were not supposed to happen ... so I vote in
favor of reverting (as Tom suggests above) and then removing
pg_cancel_backend altogether for 8.2 ...

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#28Marc G. Fournier
scrappy@postgresql.org
In reply to: Joshua D. Drake (#23)
Re: Vote needed: revert beta2 changes or not?

On Fri, 7 Oct 2005, Joshua D. Drake wrote:

On Fri, 2005-10-07 at 12:08 -0400, Alvaro Herrera wrote:

On Fri, Oct 07, 2005 at 11:56:50AM -0400, Tom Lane wrote:

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

+1

I would vote for this "if" we deprecate the old one and say that it will
be removed for 8.2.

Agreed 100% ...

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#29Marc G. Fournier
scrappy@postgresql.org
In reply to: Noname (#21)
Re: Vote needed: revert beta2 changes or not?

See the bottom of the email that has links to how to unsubscribe from the
list .. *all* lists have this appended to the bottom of the emails ...

On Fri, 7 Oct 2005, Anjali.Sinha@relianceinfo.com wrote:

Unsubscribe me. Or Can anyone forward me the emailId of the concerned
person..??

Regards,
Anjali Sinha
ASCG, Reliance Infocomm
J Block, SB-11, 2nd Floor,
Dhirubhai Ambani Knowledge City,
Thane Belapur Road, New Mumbai India, 400 709
DID: 91 22 30387862
____________________________________________

Alvaro Herrera
<alvherre@alvh.no-ip.or To: Tom Lane <tgl@sss.pgh.pa.us>
g> cc: Dave Page <dpage@vale-housing.co.uk>, Robert Treat
Sent by: <xzilla@users.sourceforge.net>, pgsql-hackers@postgresql.org, (bcc: Anjali
pgsql-hackers-owner@pos Sinha/INFOCOMM/RIL)
tgresql.org Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?
Importance: Normal Sender's OU: Reliance |------------------|
| [ ] Confidential |
10/07/2005 09:38 PM |------------------|

On Fri, Oct 07, 2005 at 11:56:50AM -0400, Tom Lane wrote:

No, because you can't overload based purely on return type. I suppose
they could write it to take an int8 pid or something, but that's a

hack.

Well, how many people want to vote for Andreas' suggestion of having
both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward compatibility?

+1

--
Alvaro Herrera
http://www.amazon.com/gp/registry/DXLWNGRJD34
"Siempre hay que alimentar a los dioses, aunque la tierra esté seca"
(Orual)

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#30Andreas Pflug
pgadmin@pse-consulting.de
In reply to: Dave Page (#25)
Re: Vote needed: revert beta2 changes or not?

Dave Page wrote:

Oh no, what have I started!! :-)

In order to keep traffic on this list low, both of us should be
excluded...;-)

Regards,
Andreas

#31Magnus Hagander
mha@sollentuna.net
In reply to: Andreas Pflug (#30)
Re: Vote needed: revert beta2 changes or not?

Well, how many people want to vote for Andreas' suggestion

of having

both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward

compatibility?

Oh no, what have I started!! :-)

Let's just make the change and let the few people affected
modify their scripts, otherwise this is gonna get very messy.

Yeah. As one who has been bitten when I tested a system on the new
version, I still think it's reasonably easy. It's not like queries using
pg_cancel_backend are scattered throughout an app. In my case it's in a
single place, and it's easy enough to work around it.
(My solution: write a tiny wrapper SQL function that looks different
when running on 8.0 and 8.1)

If we deprecate it and say "gone in 8.2", I'm going to have to write
this wrapper anyway. And if we don't set a schedule for when it's gone,
we might as well not deprecate it, and that would make it very messy...

Thankfully I think we've all learnt from this :-)

Yup, that's the main thing. This time it wasn't too bad (as it only
affected a seldom-used function), it might not be next time if we do it
again.

//Magnus

#32Magnus Hagander
mha@sollentuna.net
In reply to: Magnus Hagander (#31)
Re: Vote needed: revert beta2 changes or not?

No, because you can't overload based purely on return type. I
suppose they could write it to take an int8 pid or

something, but that's a hack.

Well, how many people want to vote for Andreas' suggestion

of having

both

int pg_cancel_backend(int)
bool pg_backend_cancel(int)

with the former deprecated but still there for backward

compatibility?

I could vote for:

bool pg_query_cancel(int)

backend_cancel or cancel_backend sounds like it should
terminate the entire backend like kill -TERM would do.

IIRC, the original discussion had a possible pg_query_cancel(int)
functoin that would cancel a query based on XID or something like that,
and we wanted to differentiate from that. (No such function was ever
created, but it was the reason, IIRC)

Note that at this time there was also a pg_backend_terminate(int) that
would terminate the backend (in fact, IIRC it's still in the code, but
commented out). When both exist, the difference is clear...

//Magnus

#33Tom Lane
tgl@sss.pgh.pa.us
In reply to: Magnus Hagander (#32)
Re: Vote needed: revert beta2 changes or not?

"Magnus Hagander" <mha@sollentuna.net> writes:

I could vote for:

bool pg_query_cancel(int)

backend_cancel or cancel_backend sounds like it should
terminate the entire backend like kill -TERM would do.

IIRC, the original discussion had a possible pg_query_cancel(int)
functoin that would cancel a query based on XID or something like that,
and we wanted to differentiate from that. (No such function was ever
created, but it was the reason, IIRC)

Right. Rod's suggestion is superficially more logical, but it doesn't
fit into the plans for future extension of the capability.

regards, tom lane

#34Dave Page
dpage@vale-housing.co.uk
In reply to: Tom Lane (#33)
Re: Vote needed: revert beta2 changes or not?

You're absolutely right of course...

/D
-----Original Message-----
From: "Andreas Pflug"<pgadmin@pse-consulting.de>
Sent: 07/10/05 18:49:49
To: "Dave Page"<dpage@vale-housing.co.uk>
Cc: "pgsql-hackers@postgresql.org"<pgsql-hackers@postgresql.org>
Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?

Dave Page wrote:

Oh no, what have I started!! :-)

In order to keep traffic on this list low, both of us should be
excluded...;-)

Regards,
Andreas

-----Unmodified Original Message-----
Dave Page wrote:

Oh no, what have I started!! :-)

In order to keep traffic on this list low, both of us should be
excluded...;-)

Regards,
Andreas

#35sandeep satpal
sandeep@it.iitb.ac.in
In reply to: Dave Page (#34)
Issue is changing _bt_compare function and btcompare.c file

Hello all,

In _bt_compare function , instead of calling FunctionCall2 , I want to
call FunctionCall3 with three parameter and in
btcompare.c "btname_pattern_cmp" function will take three parameter and
i want to change this function according to third parameter.

But the biggest issue is initdb is also using this index for creating and
initializing its own index structure ( may be meta index sorts of )

So how I solve this issue...please guide me...
thanx
sandeep

On Fri, 7 Oct 2005, Dave Page wrote:

You're absolutely right of course...

/D
-----Original Message-----
From: "Andreas Pflug"<pgadmin@pse-consulting.de>
Sent: 07/10/05 18:49:49
To: "Dave Page"<dpage@vale-housing.co.uk>
Cc: "pgsql-hackers@postgresql.org"<pgsql-hackers@postgresql.org>
Subject: Re: [HACKERS] Vote needed: revert beta2 changes or not?

Dave Page wrote:

Oh no, what have I started!! :-)

In order to keep traffic on this list low, both of us should be
excluded...;-)

Regards,
Andreas

-----Unmodified Original Message-----
Dave Page wrote:

Oh no, what have I started!! :-)

In order to keep traffic on this list low, both of us should be
excluded...;-)

Regards,
Andreas

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

--
------------------
| Sandeep Satpal |
| M.Tech Student |
| Lab 212 KReSIT |
------------------

#36Neil Conway
neilc@samurai.com
In reply to: sandeep satpal (#35)
Re: Issue is changing _bt_compare function and

On Sat, 2005-08-10 at 00:42 +0530, sandeep satpal wrote:

... please guide me

Two suggestions:

(1) Don't start new threads by replying to an existing thread of no
relevance to the new subject

(2) Spend some time phrasing your question in a coherent manner --
you're more likely to get a useful response. Read

http://www.catb.org/~esr/faqs/smart-questions.html

For example, what is the actual high-level problem you are trying to
solve? How are you attempting to solve it, and exactly what difficulties
have you encountered in doing so?

-Neil

#37Simon Riggs
simon@2ndquadrant.com
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

On Thu, 2005-10-06 at 21:27 -0400, Tom Lane wrote:

(b) pg_cancel_backend() was already in 8.0, and so changing it now
represents an API break, for which being "a little cleaner" is not
sufficient justification.

2. Revert the result type of pg_cancel_backend() to int, but leave the
rest as-is (minimum change to avoid a compatibility break with 8.0).

Seems like the best way to go, without reading other posts.

ISTM one day somebody will want to return an error state other than
success/fail from that function and we would end up back here anyway.

Best Regards, Simon Riggs

#38sandeep satpal
sandeep@it.iitb.ac.in
In reply to: Neil Conway (#36)
Re: Issue is changing _bt_compare function and

Hello,
Sorry for last mail.
I hope this time I will explain my doubt more clearly.

The _bt_compare function in "nbtree.c" file calls "FunctionCall2" and it
passes two arguments , one is the scankey which we want to search on and
other key is on current b-tree node.

My problem is I want to pass three parameter and the third argument will
be used for taking decision during comparision that whether I want
case-sensitive comparision or case-insensitive.

But "initdb" also uses the same _bt_compare function for creating its own
indexes.
For eg.
when we write /usr/pgsql/bin/initdb -D /usr/local/data
And my modification may create problems.
How I solve this ??
Hope this time I had explained in more clear way...
thanx,

--
------------------
| Sandeep Satpal |
| M.Tech Student |
| Lab 212 KReSIT |
------------------

#39Martijn van Oosterhout
kleptog@svana.org
In reply to: sandeep satpal (#38)
Re: Issue is changing _bt_compare function and

On Sat, Oct 08, 2005 at 12:48:50PM +0530, sandeep satpal wrote:

The _bt_compare function in "nbtree.c" file calls "FunctionCall2" and it
passes two arguments , one is the scankey which we want to search on and
other key is on current b-tree node.

My problem is I want to pass three parameter and the third argument will
be used for taking decision during comparision that whether I want
case-sensitive comparision or case-insensitive.

Well, if you want to pass a third argument, go ahead. Just make sure
you update all the appropriate function calls.

But "initdb" also uses the same _bt_compare function for creating its own
indexes.
For eg.
when we write /usr/pgsql/bin/initdb -D /usr/local/data
And my modification may create problems.
How I solve this ??

Well, _bt_compare is used for every btree index in the system,
including all the system indexes. A fresh initdb already has several
dozen indexes already so your code has to deal with that.

Remember, _bt_compare compares strings, integers, floats, dates, etc
and your code needs to work for all of them too... What does it mean to
compare dates case-insensetivly?

Hope this helps,
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/

Show quoted text

Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
tool for doing 5% of the work and then sitting around waiting for someone
else to do the other 95% so you can sue them.

#40Alvaro Herrera
alvherre@alvh.no-ip.org
In reply to: sandeep satpal (#38)
Re: Issue is changing _bt_compare function and

sandeep satpal wrote:

The _bt_compare function in "nbtree.c" file calls "FunctionCall2" and it
passes two arguments , one is the scankey which we want to search on and
other key is on current b-tree node.

My problem is I want to pass three parameter and the third argument will
be used for taking decision during comparision that whether I want
case-sensitive comparision or case-insensitive.

This is certainly the wrong layer to be making these changes. Have you
considered using the citext type? If it doesn't suit you, you could use
it as a foundation for developing your own.

What you need to change is the function stored in the scankey.

--
Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34
Voy a acabar con todos los humanos / con los humanos yo acabar�
voy a acabar con todos / con todos los humanos acabar� (Bender)

#41Jim C. Nasby
jnasby@pervasive.com
In reply to: Rod Taylor (#24)
Re: Vote needed: revert beta2 changes or not?

On Fri, Oct 07, 2005 at 12:22:14PM -0400, Rod Taylor wrote:

I could vote for:

bool pg_query_cancel(int)

backend_cancel or cancel_backend sounds like it should terminate the
entire backend like kill -TERM would do.

Agreed. In fact, I thought that's what it actually did.
--
Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

#42Jim C. Nasby
jnasby@pervasive.com
In reply to: Tom Lane (#1)
Re: Vote needed: revert beta2 changes or not?

While it's important to stick with policies lest they become useless, I
think the bigger picture needs to be remembered: the policies are in
place to produce good design decisions and to not let the development
cycle drag out uncontrollably. In this case, ISTM that there is now a
better naming scheme than what was originally discussed, and IMHO it's
defeatist to ignore that just because we're in beta. It would absolutely
have been better to have changed the names before entering beta, just
like it's absolutely better to change the names now rather than after
8.1.

I'd vote for officially #1 + depricating the old cancel_backend as of a
specific version (ie 8.2 or 8.3).
--
Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

#43Marc G. Fournier
scrappy@postgresql.org
In reply to: Jim C. Nasby (#41)
Re: Vote needed: revert beta2 changes or not?

On Sat, 8 Oct 2005, Jim C. Nasby wrote:

On Fri, Oct 07, 2005 at 12:22:14PM -0400, Rod Taylor wrote:

I could vote for:

bool pg_query_cancel(int)

backend_cancel or cancel_backend sounds like it should terminate the
entire backend like kill -TERM would do.

Agreed. In fact, I thought that's what it actually did.

Oh good, I wasn't going to say anything, but that was what I thought it
did too :(

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#44Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Martijn van Oosterhout (#39)
Re: Issue is changing _bt_compare function and

Well, _bt_compare is used for every btree index in the system,
including all the system indexes. A fresh initdb already has several
dozen indexes already so your code has to deal with that.

Remember, _bt_compare compares strings, integers, floats, dates, etc
and your code needs to work for all of them too... What does it mean to
compare dates case-insensetivly?

Yes, shouldn't you just be making a simple new string type that's case
insensitive?

Chris