new version of contrib-intarray

Started by Oleg Bartunovalmost 25 years ago21 messages
#1Oleg Bartunov
oleg@sai.msu.su

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

#2Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Oleg Bartunov (#1)
Re: new version of contrib-intarray

Oleg, do you want this in /contrib for 7.1?

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#3Oleg Bartunov
oleg@sai.msu.su
In reply to: Bruce Momjian (#2)
Re: new version of contrib-intarray

On Sat, 27 Jan 2001, Bruce Momjian wrote:

Oleg, do you want this in /contrib for 7.1?

yes, if it's possible.
btw, is there way to specify default ops for index ?
We have two methods of index creation for intarrays and
would like to define which should be used by default

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Oleg Bartunov (#3)
Re: new version of contrib-intarray

Oleg Bartunov <oleg@sai.msu.su> writes:

btw, is there way to specify default ops for index ?

Sure, that's what pg_opclass is for. Just insert the opclass name
and the OID of the type you want it to be the default index opclass
for.

regards, tom lane

#5Oleg Bartunov
oleg@sai.msu.su
In reply to: Tom Lane (#4)
Re: new version of contrib-intarray

On Sat, 27 Jan 2001, Tom Lane wrote:

Oleg Bartunov <oleg@sai.msu.su> writes:

btw, is there way to specify default ops for index ?

Sure, that's what pg_opclass is for. Just insert the opclass name
and the OID of the type you want it to be the default index opclass
for.

Tom, we already did this. Here is what we have in pg_opclass:

gist__int_ops | 1007
gist__intbig_ops | 1007
(32 rows)

we want gist__int_ops to be default index opclass.
If we delete gist__intbig_ops entry from opclass, then we couldn't use
gist__intbig_ops !

Regards,
Oleg

regards, tom lane

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Oleg Bartunov (#5)
Re: new version of contrib-intarray

Oleg Bartunov <oleg@sai.msu.su> writes:

gist__int_ops | 1007
gist__intbig_ops | 1007

we want gist__int_ops to be default index opclass.
If we delete gist__intbig_ops entry from opclass, then we couldn't use
gist__intbig_ops !

Put in gist__intbig_ops with zero for the default type. You should
never have more than one entry in pg_opclass claiming to be the default
for a given type OID.

regards, tom lane

#7Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Oleg Bartunov (#1)
Re: new version of contrib-intarray

Seems we have an older version in CVS. I will update it now. I assume
/contrib is available for changes up until release, as usual.

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#8Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Oleg Bartunov (#1)
Re: new version of contrib-intarray

Installed in CVS. Thanks.

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#9Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#8)
Re: new version of contrib-intarray

Bruce Momjian writes:

Installed in CVS. Thanks.

You overwrote the changes that other people have made meanwhile.

Mark,

we prepared new version of contrib-intarray -
index support for 1-D integer arrays using GiST.

Changes:

- Improved regression test
- Current implementation provides index support for one-dimensional
array of int4's - gist__int_ops, suitable for small and medium size
of arrays, and gist__intbig_ops for indexing large arrays
(we use superimposed signature with length of 4096 bits to represent sets,
see Sven Helmer,1997).

Archive is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/

#10Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Peter Eisentraut (#9)
1 attachment(s)
Re: new version of contrib-intarray

I checked README.intarray to see what the most recent date was, and it
was Jan 10, so I knew that this version was newer. I then did a diff -c
against the current CVS and I didn't see anything unusual in the
changes.

Attached is the CVS diff command line showing me all the changes made:

cvs diff -c -D '2001-01-13 00:00:00' -D'2001-03-16 00:00:00' .

I see change of += in CFLAGS (harmless), movement of #include
<postgres.h>, and removal of // comments, which don't appear anymore in
the code.

Do you see anything else? This one was easy to track because it was
installed only recently, but other /contrib stuff is much tougher
because you never know what the original install date was.

I usually only look at Makefile changes in /contrib because that is
where most of the customization is, and I don't see any changes made to
Makefile by the patch. It doesn't even touch the CFLAGS += change.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Attachments:

/bjm/difftext/plainDownload
? Makefile.703
Index: Makefile
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/contrib/intarray/Makefile,v
retrieving revision 1.2
retrieving revision 1.3
diff -c -r1.2 -r1.3
*** Makefile	2001/01/13 02:18:31	1.2
--- Makefile	2001/02/20 19:20:27	1.3
***************
*** 1,4 ****
! # $Header: /home/projects/pgsql/cvsroot/pgsql/contrib/intarray/Makefile,v 1.2 2001/01/13 02:18:31 petere Exp $
  
  subdir = contrib/intarray
  top_builddir = ../..
--- 1,4 ----
! # $Header: /home/projects/pgsql/cvsroot/pgsql/contrib/intarray/Makefile,v 1.3 2001/02/20 19:20:27 petere Exp $
  
  subdir = contrib/intarray
  top_builddir = ../..
***************
*** 12,18 ****
  SO_MAJOR_VERSION= 1
  SO_MINOR_VERSION= 0
  
! override CPPFLAGS += -I$(srcdir) -DPGSQL71
  
  OBJS= _int.o
  
--- 12,18 ----
  SO_MAJOR_VERSION= 1
  SO_MINOR_VERSION= 0
  
! override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DPGSQL71
  
  OBJS= _int.o
  
Index: _int.c
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/contrib/intarray/_int.c,v
retrieving revision 1.1
retrieving revision 1.3
diff -c -r1.1 -r1.3
*** _int.c	2001/01/12 00:16:23	1.1
--- _int.c	2001/02/12 18:30:52	1.3
***************
*** 4,14 ****
    format for these routines is dictated by Postgres architecture.
  ******************************************************************************/
  
! #include <stdio.h>
  #include <float.h>
  #include <string.h>
  
- #include "postgres.h"
  #include "access/gist.h"
  #include "access/itup.h"
  #include "access/rtree.h"
--- 4,14 ----
    format for these routines is dictated by Postgres architecture.
  ******************************************************************************/
  
! #include "postgres.h"
! 
  #include <float.h>
  #include <string.h>
  
  #include "access/gist.h"
  #include "access/itup.h"
  #include "access/rtree.h"
***************
*** 194,200 ****
  
  #ifdef GIST_DEBUG
      elog(NOTICE, "COMP IN: %d leaf; %d rel; %d page; %d offset; %d bytes; %d elems", entry->leafkey, (int)entry->rel, (int)entry->page, (int)entry->offset, (int)entry->bytes, len);
!     //printarr( r, len );
  #endif
  
      if ( len >= 2*MAXNUMRANGE ) {  /*compress*/
--- 194,200 ----
  
  #ifdef GIST_DEBUG
      elog(NOTICE, "COMP IN: %d leaf; %d rel; %d page; %d offset; %d bytes; %d elems", entry->leafkey, (int)entry->rel, (int)entry->page, (int)entry->offset, (int)entry->bytes, len);
!     /* printarr( r, len ); */
  #endif
  
      if ( len >= 2*MAXNUMRANGE ) {  /*compress*/
***************
*** 260,266 ****
  
  #ifdef GIST_DEBUG
      elog(NOTICE, "DECOMP IN: %d leaf; %d rel; %d page; %d offset; %d bytes; %d elems", entry->leafkey, (int)entry->rel, (int)entry->page, (int)entry->offset, (int)entry->bytes, lenin);
!     //printarr( in, lenin );
  #endif
  
      lenr = internal_size(din, lenin);
--- 260,266 ----
  
  #ifdef GIST_DEBUG
      elog(NOTICE, "DECOMP IN: %d leaf; %d rel; %d page; %d offset; %d bytes; %d elems", entry->leafkey, (int)entry->rel, (int)entry->page, (int)entry->offset, (int)entry->bytes, lenin);
!     /* printarr( in, lenin ); */
  #endif
  
      lenr = internal_size(din, lenin);
***************
*** 653,659 ****
  	int i,j;
  
  #ifdef GIST_DEBUG
!     //elog(NOTICE, "inner_union %d %d", ARRISNULL( a ) , ARRISNULL( b ) );
  #endif
  
  	if ( ARRISNULL( a ) && ARRISNULL( b ) ) return new_intArrayType(0);
--- 653,659 ----
  	int i,j;
  
  #ifdef GIST_DEBUG
!     /* elog(NOTICE, "inner_union %d %d", ARRISNULL( a ) , ARRISNULL( b ) ); */
  #endif
  
  	if ( ARRISNULL( a ) && ARRISNULL( b ) ) return new_intArrayType(0);
***************
*** 709,715 ****
  	int i,j;
  
  #ifdef GIST_DEBUG
!     //elog(NOTICE, "inner_inter %d %d", ARRISNULL( a ), ARRISNULL( b ) );
  #endif
  
  	if ( ARRISNULL( a ) || ARRISNULL( b ) ) return NULL;
--- 709,715 ----
  	int i,j;
  
  #ifdef GIST_DEBUG
!     /* elog(NOTICE, "inner_inter %d %d", ARRISNULL( a ), ARRISNULL( b ) ); */
  #endif
  
  	if ( ARRISNULL( a ) || ARRISNULL( b ) ) return NULL;
#11Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#10)
Re: new version of contrib-intarray

Bruce Momjian writes:

I see change of += in CFLAGS (harmless),

Not.

movement of #include
<postgres.h>, and removal of // comments, which don't appear anymore in
the code.

I only saw that the Makefile is back to how it looked at rev 1.1 before I
did some work on it. AFAICT the Makefile should be reverted back to the
previous revision, since the code change does not require any changes to
the Makefile.

--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/

#12Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#11)
Re: new version of contrib-intarray

Peter Eisentraut <peter_e@gmx.net> writes:

I only saw that the Makefile is back to how it looked at rev 1.1 before I
did some work on it. AFAICT the Makefile should be reverted back to the
previous revision, since the code change does not require any changes to
the Makefile.

I did this, also reinstalled the include-file changes I had made, and
then spent several fruitless hours trying to find why the "intbig" index
operators fail selftest here (on HP-PA). I suppose it's a portability
problem, since presumably they pass for Oleg ... but I don't see it.

Who else finds that the new contrib/intarray code passes or fails its
selftest, and on what platforms?

regards, tom lane

#13Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tom Lane (#12)
Re: new version of contrib-intarray

I wrote:

I did this, also reinstalled the include-file changes I had made, and
then spent several fruitless hours trying to find why the "intbig" index
operators fail selftest here (on HP-PA). I suppose it's a portability
problem, since presumably they pass for Oleg ... but I don't see it.

Further experimentation shows that intbig fails selftest on ALL
platforms under 7.1. I see the problem: the intarray operators are
mostly unprepared to cope with TOASTed input arrays. In particular,
_intbig_union() generates an erroneous "null" result for a compressed
input array, leading to completely incorrect GiST index trees in the
self-test example.

A somewhat-related error in this code is that some routines feel free
to scribble on their input. This is tres uncool, because they may be
scribbling on disk buffers. Example:

regression=# create table foo(f1 int4[]);
CREATE
regression=# insert into foo values ('{10,1,2,1,4}');
INSERT 150265 1
regression=# select * from foo;
f1
--------------
{10,1,2,1,4}
(1 row)

regression=# select * from foo where f1 && '{4}';
f1
--------------
{1,1,2,4,10}
(1 row)

regression=# select * from foo;
f1
--------------
{1,1,2,4,10}
(1 row)

And you thought SELECT was a read-only operation ...

I do not have time to work on this stuff now, but as it stands the
contrib/intarray code is unusable in 7.1. Unless Oleg can find the
time to fix these issues before release, I will recommend that we
not ship contrib/intarray in 7.1.

regards, tom lane

#14Oleg Bartunov
oleg@sai.msu.su
In reply to: Tom Lane (#13)
Re: new version of contrib-intarray

I just returned from vacation and identified the problem.
We'll fix it.

Regards,
Oleg
On Sun, 18 Mar 2001, Tom Lane wrote:

I wrote:

I did this, also reinstalled the include-file changes I had made, and
then spent several fruitless hours trying to find why the "intbig" index
operators fail selftest here (on HP-PA). I suppose it's a portability
problem, since presumably they pass for Oleg ... but I don't see it.

Further experimentation shows that intbig fails selftest on ALL
platforms under 7.1. I see the problem: the intarray operators are
mostly unprepared to cope with TOASTed input arrays. In particular,
_intbig_union() generates an erroneous "null" result for a compressed
input array, leading to completely incorrect GiST index trees in the
self-test example.

A somewhat-related error in this code is that some routines feel free
to scribble on their input. This is tres uncool, because they may be
scribbling on disk buffers. Example:

regression=# create table foo(f1 int4[]);
CREATE
regression=# insert into foo values ('{10,1,2,1,4}');
INSERT 150265 1
regression=# select * from foo;
f1
--------------
{10,1,2,1,4}
(1 row)

regression=# select * from foo where f1 && '{4}';
f1
--------------
{1,1,2,4,10}
(1 row)

regression=# select * from foo;
f1
--------------
{1,1,2,4,10}
(1 row)

And you thought SELECT was a read-only operation ...

I do not have time to work on this stuff now, but as it stands the
contrib/intarray code is unusable in 7.1. Unless Oleg can find the
time to fix these issues before release, I will recommend that we
not ship contrib/intarray in 7.1.

regards, tom lane

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

http://www.postgresql.org/users-lounge/docs/faq.html

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

#15Oleg Bartunov
oleg@sai.msu.su
In reply to: Oleg Bartunov (#14)
New version of contrib-intarray is ready !

Hi,

New version of contrib-intarray is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

From README.intarray:

March 19, 2001
1. Added support for toastable keys
2. Improved split algorithm for intbig (selection speedup is about 30%)

Regards,
Oleg

On Mon, 19 Mar 2001, Oleg Bartunov wrote:

I just returned from vacation and identified the problem.
We'll fix it.

Regards,
Oleg
On Sun, 18 Mar 2001, Tom Lane wrote:

I wrote:

I did this, also reinstalled the include-file changes I had made, and
then spent several fruitless hours trying to find why the "intbig" index
operators fail selftest here (on HP-PA). I suppose it's a portability
problem, since presumably they pass for Oleg ... but I don't see it.

Further experimentation shows that intbig fails selftest on ALL
platforms under 7.1. I see the problem: the intarray operators are
mostly unprepared to cope with TOASTed input arrays. In particular,
_intbig_union() generates an erroneous "null" result for a compressed
input array, leading to completely incorrect GiST index trees in the
self-test example.

A somewhat-related error in this code is that some routines feel free
to scribble on their input. This is tres uncool, because they may be
scribbling on disk buffers. Example:

regression=# create table foo(f1 int4[]);
CREATE
regression=# insert into foo values ('{10,1,2,1,4}');
INSERT 150265 1
regression=# select * from foo;
f1
--------------
{10,1,2,1,4}
(1 row)

regression=# select * from foo where f1 && '{4}';
f1
--------------
{1,1,2,4,10}
(1 row)

regression=# select * from foo;
f1
--------------
{1,1,2,4,10}
(1 row)

And you thought SELECT was a read-only operation ...

I do not have time to work on this stuff now, but as it stands the
contrib/intarray code is unusable in 7.1. Unless Oleg can find the
time to fix these issues before release, I will recommend that we
not ship contrib/intarray in 7.1.

regards, tom lane

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

http://www.postgresql.org/users-lounge/docs/faq.html

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

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

http://www.postgresql.org/users-lounge/docs/faq.html

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83

#16Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Peter Eisentraut (#11)
Re: new version of contrib-intarray

Sorry, I have again messed up this Makefile, and I am glad Tom has put
things back.

Seems I am no longer capable of understanding the affects of such
changes as this:

! override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DPGSQL71

! override CPPFLAGS += -I$(srcdir) -DPGSQL71

Having $(srcdir) before $(CPPFLAGS) must be significant.

I am going to make a proposal that we partition off certain areas to be
handled by certain people so I don't mess things up again. Look for my
email in a few minutes.

Bruce Momjian writes:

I see change of += in CFLAGS (harmless),

Not.

movement of #include
<postgres.h>, and removal of // comments, which don't appear anymore in
the code.

I only saw that the Makefile is back to how it looked at rev 1.1 before I
did some work on it. AFAICT the Makefile should be reverted back to the
previous revision, since the code change does not require any changes to
the Makefile.

--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#17Tom Lane
tgl@sss.pgh.pa.us
In reply to: Oleg Bartunov (#15)
Re: New version of contrib-intarray is ready !

Oleg Bartunov <oleg@sai.msu.su> writes:

New version of contrib-intarray is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

Got it, will review it ASAP ...

regards, tom lane

#18Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Bruce Momjian (#16)
Re: new version of contrib-intarray

Bruce Momjian writes:

Seems I am no longer capable of understanding the affects of such
changes as this:

! override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DPGSQL71

! override CPPFLAGS += -I$(srcdir) -DPGSQL71

Having $(srcdir) before $(CPPFLAGS) must be significant.

The CVS log message says:

: Make sure -L and -I's for our source tree are always before system include
: or library directories on the command line.

That's all this does.

Makes sense. See my new email about patches. I think I need to rely
more on you and others to help me evaluate these changes. We have much
more expertice in the group than I can hope to comprehend.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#19Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#16)
Re: new version of contrib-intarray

Bruce Momjian writes:

Seems I am no longer capable of understanding the affects of such
changes as this:

! override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DPGSQL71

! override CPPFLAGS += -I$(srcdir) -DPGSQL71

Having $(srcdir) before $(CPPFLAGS) must be significant.

The CVS log message says:

: Make sure -L and -I's for our source tree are always before system include
: or library directories on the command line.

That's all this does.

--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/

#20Tom Lane
tgl@sss.pgh.pa.us
In reply to: Oleg Bartunov (#15)
Re: New version of contrib-intarray is ready !

Oleg Bartunov <oleg@sai.msu.su> writes:

New version of contrib-intarray is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

I have made some further changes (you weren't quite there on not
scribbling on input datums, for example) and committed the updates.
Thanks!

regards, tom lane

#21Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Tom Lane (#20)
Re: New version of contrib-intarray is ready !

Oleg, can you grab the CVS copy and use that for further patches?
Thanks.

Oleg Bartunov <oleg@sai.msu.su> writes:

New version of contrib-intarray is available from
http://www.sai.msu.su/~megera/postgres/gist/code/7.1/contrib-intarray.tar.gz

I have made some further changes (you weren't quite there on not
scribbling on input datums, for example) and committed the updates.
Thanks!

regards, tom lane

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026