Re: [PATCHES] Proposed patch to change TOAST compression strategy

2008-02-18 Thread Teodor Sigaev

 This proposed patch addresses some issues in TOAST compression strategy that

I have not done any performance testing of these changes --- does
anyone have specific test scenarios they'd like to try?


That's very important change for text search, because of tsvector storage. 
Headline and rank reads a lot of tsvectors. It seems to me that ranking test 
will be very clear: rank function reads whole tsvector and returns small amount 
of data (just a number).


Another testing focus may be a lossy indexes, like a index over polygons.

--
Teodor Sigaev   E-mail: [EMAIL PROTECTED]
   WWW: http://www.sigaev.ru/

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


Re: [PATCHES] tzcode update

2008-02-18 Thread Magnus Hagander
On Mon, Feb 18, 2008 at 04:32:58PM +0100, Bjorn Munch wrote:
 On 13/02 10.51, Heikki Linnakangas wrote:
  Heikki Linnakangas wrote:
  I'll add some tests to cover timestamps  2038.
  
  Attached is a new patch, with a couple of new regression tests. No other 
  changes.
 
 Ouch!  This fails on our Solaris builds, because we build with the
 Solaris timezone files.  And these apparently don't work beyond 2038
 and don't know that Finland plans to have DST also in the summer of
 2050...
 
 I haven't studied this in depth but I'm afraid the answer is fix your
 own timezone files?

Or use the ones shipping with pg ;-)

This sounds exactly like the problem scenario brought forward when the
patch to use OS timezonedata was added. But I'd assume there are plans for
Solaris to include this data as well in the future, no? You'll have to
eventually

//Magnus

---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster


Re: [PATCHES] tzcode update

2008-02-18 Thread Bjorn Munch
On 13/02 10.51, Heikki Linnakangas wrote:
 Heikki Linnakangas wrote:
 I'll add some tests to cover timestamps  2038.
 
 Attached is a new patch, with a couple of new regression tests. No other 
 changes.

Ouch!  This fails on our Solaris builds, because we build with the
Solaris timezone files.  And these apparently don't work beyond 2038
and don't know that Finland plans to have DST also in the summer of
2050...

I haven't studied this in depth but I'm afraid the answer is fix your
own timezone files?

-- 
Bjorn Munch
Database Technology Group, Sun Microsystems
Trondheim, Norway



---(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


[PATCHES] Backend makefile refactoring

2008-02-18 Thread Peter Eisentraut
I want to work on getting rid of the SUBSYS.o things in the backend build, 
ideally in some way to supports both the current and the new way of building 
things (details to be defined).  To prepare for that, I have refactored some 
common rules in the backend makefiles.  See attached patch.  This should not 
change any functionality of the build system at the moment.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/
diff --git a/src/backend/access/Makefile b/src/backend/access/Makefile
index 4753eac..df05f8e 100644
--- a/src/backend/access/Makefile
+++ b/src/backend/access/Makefile
@@ -9,19 +9,5 @@ top_builddir = ../../..
 include $(top_builddir)/src/Makefile.global
 
 SUBDIRS	= common gist hash heap index nbtree transam gin
-SUBDIROBJS  = $(SUBDIRS:%=%/SUBSYS.o)
 
-all: SUBSYS.o
-
-SUBSYS.o: $(SUBDIROBJS)
-	$(LD) $(LDREL) $(LDOUT) $@ $^
-
-$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ;
-
-.PHONY: $(SUBDIRS:%=%-recursive)
-$(SUBDIRS:%=%-recursive):
-	$(MAKE) -C $(subst -recursive,,$@) SUBSYS.o
-
-clean:
-	for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done
-	rm -f SUBSYS.o
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/common/Makefile b/src/backend/access/common/Makefile
index 7adc66b..a334816 100644
--- a/src/backend/access/common/Makefile
+++ b/src/backend/access/common/Makefile
@@ -16,8 +16,4 @@ OBJS = heaptuple.o indextuple.o printtup.o reloptions.o scankey.o tupdesc.o
 
 all: SUBSYS.o
 
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/gin/Makefile b/src/backend/access/gin/Makefile
index 5bab415..c5872d3 100644
--- a/src/backend/access/gin/Makefile
+++ b/src/backend/access/gin/Makefile
@@ -16,10 +16,4 @@ OBJS = ginutil.o gininsert.o ginxlog.o ginentrypage.o gindatapage.o \
 	ginbtree.o ginscan.o ginget.o ginvacuum.o ginarrayproc.o \
 	ginbulk.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/gist/Makefile b/src/backend/access/gist/Makefile
index d1e3266..8d3a6d0 100644
--- a/src/backend/access/gist/Makefile
+++ b/src/backend/access/gist/Makefile
@@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global
 OBJS = gist.o gistutil.o gistxlog.o gistvacuum.o gistget.o gistscan.o \
gistproc.o gistsplit.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/hash/Makefile b/src/backend/access/hash/Makefile
index f653a83..df7563c 100644
--- a/src/backend/access/hash/Makefile
+++ b/src/backend/access/hash/Makefile
@@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global
 OBJS = hash.o hashfunc.o hashinsert.o hashovfl.o hashpage.o hashscan.o \
hashsearch.o hashutil.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/heap/Makefile b/src/backend/access/heap/Makefile
index abd3212..1674467 100644
--- a/src/backend/access/heap/Makefile
+++ b/src/backend/access/heap/Makefile
@@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global
 
 OBJS = heapam.o hio.o pruneheap.o rewriteheap.o syncscan.o tuptoaster.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/index/Makefile b/src/backend/access/index/Makefile
index d849b26..5469970 100644
--- a/src/backend/access/index/Makefile
+++ b/src/backend/access/index/Makefile
@@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global
 
 OBJS = genam.o indexam.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/nbtree/Makefile b/src/backend/access/nbtree/Makefile
index b833ef9..323a2f3 100644
--- a/src/backend/access/nbtree/Makefile
+++ b/src/backend/access/nbtree/Makefile
@@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global
 OBJS = nbtcompare.o nbtinsert.o nbtpage.o nbtree.o nbtsearch.o \
nbtutils.o nbtsort.o nbtxlog.o
 
-all: SUBSYS.o
-
-SUBSYS.o: $(OBJS)
-	$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
-
-clean: 
-	rm -f SUBSYS.o $(OBJS)
+include $(top_srcdir)/src/backend/common.mk
diff --git a/src/backend/access/transam/Makefile b/src/backend/access/transam/Makefile
index 9d7c23c..8532d28 100644
--- a/src/backend/access/transam/Makefile
+++ b/src/backend/access/transam/Makefile
@@ -14,13 +14,7 @@ include $(top_builddir)/src/Makefile.global
 
 OBJS = clog.o transam.o varsup.o xact.o xlog.o xlogutils.o rmgr.o slru.o subtrans.o multixact.o twophase.o 

Re: [PATCHES] Proposed patch to change TOAST compression strategy

2008-02-18 Thread Tom Lane
Teodor Sigaev [EMAIL PROTECTED] writes:
 I have not done any performance testing of these changes --- does
 anyone have specific test scenarios they'd like to try?

 That's very important change for text search, because of tsvector storage. 
 Headline and rank reads a lot of tsvectors. It seems to me that ranking test 
 will be very clear: rank function reads whole tsvector and returns small 
 amount 
 of data (just a number).

I have no test data sets with large tsvector fields.  If you do, could
you try it with this patch and see what the results are like?

regards, tom lane

---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster


Re: [PATCHES] tzcode update

2008-02-18 Thread Tom Lane
Magnus Hagander [EMAIL PROTECTED] writes:
 On Mon, Feb 18, 2008 at 04:32:58PM +0100, Bjorn Munch wrote:
 Ouch!  This fails on our Solaris builds, because we build with the
 Solaris timezone files.  And these apparently don't work beyond 2038
 and don't know that Finland plans to have DST also in the summer of
 2050...
 
 I haven't studied this in depth but I'm afraid the answer is fix your
 own timezone files?

 Or use the ones shipping with pg ;-)

Yeah.  I included the far-future cases in the committed patch
specifically to make it obvious if you were using tz files that lacked
post-2038 support.

I can't imagine that fixing this isn't pretty darn high on the Solaris
to-do list, anyway.  Financial apps doing, say, 30-year mortgage
projections are broken *today* on platforms without post-Y2038 calendar
support.

regards, tom lane

---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
   subscribe-nomail command to [EMAIL PROTECTED] so that your
   message can get through to the mailing list cleanly


Re: [PATCHES] tzcode update

2008-02-18 Thread Bjorn Munch
On 18/02 14.22, Tom Lane wrote:
 I can't imagine that fixing this isn't pretty darn high on the Solaris
 to-do list, anyway.  Financial apps doing, say, 30-year mortgage
 projections are broken *today* on platforms without post-Y2038 calendar
 support.

Well, it IS mentioned in the BUGS section of at least one man page
(localtime), so it's clearly a known problem.

I don't know about 30-year mortgage, I don't think such financial apps
care whether the day 30 days into the future has DST or not. :-)  And
apart from that, the date was correct.

- Bjorn Munch

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