Re: [HACKERS] add server include files to default installation?

2004-05-18 Thread Fabien COELHO

> This is from an extension module author's point of view. My module will
> reference these two files only:
>
> Makefile.global
> Makefile.shlib

These files possibly include other makefiles.

> I'm not the least interested in how these files are organized internally

Sure.

> If I have a "pg_config --makefiledir" that tells me where to find the
> files, that should be all I need:
>
>  makefiledir := $(shell pg_config --makefiledir)
>  include $(makefiledir)/Makefile.global
> ...
> Just trying to give you a bit more freedom to place your files :-)

You do not understand how bad it is from the inside;-)
In the current Makefile.global, you find things like:

include $(top_...)/src/Makefile.port

That is the makefile knows where it is expected to reside wrt the source
tree, and use this information. In order to allow what you describe, I
would have to fix this issue, that is rewrite somehow Makefile.global and
other makefiles. Maybe I could do that, but I was trying hard to avoid
it, as there may be some kind of portability issues.

Thanks for you comment,

-- 
Fabien Coelho - [EMAIL PROTECTED]

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake




Tatsuo Ishii wrote:

  
At least in Japan PHP is much more popular than Python. If we have
plpython in core, I see no reason we do not have plPHP in core at
least from the "popularity" point of view.
  


Well I don't know anywhere that PHP isn't more popular than Python. The
question I think
is a technical one. Python is a better "language" that PHP is. Perl is
as well but that is a whole
other argument.

PHP is what I call the "Dumb Monkey" language. It isn't meant to be
rude, but the reality is
that almost any dumb monkey can code something in PHP. Python takes
actual thought to
produce something useful.

Whether or not that is a bad thing is for another argument :)

Sincerely,

Joshua D. Drake




  --
Tatsuo Ishii

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org
  



-- 
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL




Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

So, why tie it into the PostgreSQL source tree?  Won't it be popular
enough to live on its own, that it has to be distributed as part of the
core?
 

Honestly, I don't know if it would be popular enough on its own. Now the 
plPerlNG that Andrew
and us are working, yes but plPHP? It is nifty, it is cool, it is very 
capable but it is still PHP.

I think the point of having it in core is that the three most popular 
user space languages are:

Python
Perl
PHP
If those are covered within core under the pl* then we have all bases 
covered.

I am not saying that it should be in core (although I definately think 
plPerlNG should be). This all
started because it was suggested it could be :)

J




Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664
 


--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL
---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [HACKERS] pg_autovacuum seems to be a neat freak and cleans

2004-05-18 Thread Matthew T. O'Connor
On Tue, 2004-05-18 at 22:21, Brian Hirt wrote:
> there might be another similar bug that was fixed in 7.4.2

This bug is fixed, but it didn't make in 7.4.2, it is in CVS (both 7.4
and HEAD).  Please grab pg_autovacuum.c and .h from CVS, if that doesn't
fix it please let me know.

Thanks,

Matthew



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


Re: [HACKERS] psql weirdness in HEAD

2004-05-18 Thread Bruce Momjian
Christopher Kings-Lynne wrote:
> I run psql and I get this:
> 
> -bash-2.05b$ psql template1
> Welcome to psql 7.5devel, the PostgreSQL interactive terminal.
> 
> Type:  \copyright for distribution terms
> \h for help with SQL commands
> \? for help with psql commands
> \g or terminate with semicolon to execute query
> \q to quit
> 
> could not stat "/sbin/psql": mcould not stat "/bin/psql": mcould not 
> stat "/usr/sbin/psql": mcould not stat "/usr/bin/psql": mcould not stat 
> "/usr/games/psql": mcould not stat "/usr/local/sbin/psql": mcould not 
> stat "/usr/local/bin/psql": mcould not stat "/usr/X11R6/bin/psql": 
> mcould not stat "/home/chriskl/bin/psql": mtemplate1=#
> 
> I do have the tablespaces patch applied, but I can't see anything that 
> could have caused this.  It seems more likely do be a relocatable 
> install bug...  Maybe some leftover debug code?

Just fixed.  Thanks.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Bruce Momjian
Marc G. Fournier wrote:
> On Mon, 17 May 2004, Alvaro Herrera Munoz wrote:
> 
> > I have some confidence in that I will be able to deliver it maybe the last
> > week of May.  I can only hope, however, that it will not be rejected because
> > it's presented too close to feature freeze.
> 
> There is no such thing as "too close to feature freeze", nor has there
> ever been in the past ...  other then missing it altogether.  Unless there
> are some serious flaws in the implementation, submitting it on May 31st
> would get it in ...it isn't expecting to be rock solid, bug free, that is
> what the beta period is to work out ...
> 
> What is expected, though, is that you won't disappear after its committed,
> so that you can fix any bugs reported in a timely manner ...

Not completely true.  If a patch needs major rework or the implemention
isn't acceptable, it might be rejected and have to wait --- it has
happened before, and PITR might not make it because the April 1 patch
wasn't an acceptable implementation.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Tatsuo Ishii
> On Tue, 18 May 2004, Joshua D. Drake wrote:
> 
> > Actually plPHP doesn't require the PostgreSQL source tree... you would
> > just have to modify the Make file to point to the right places.
> 
> So, why tie it into the PostgreSQL source tree?  Won't it be popular
> enough to live on its own, that it has to be distributed as part of the
> core?

At least in Japan PHP is much more popular than Python. If we have
plpython in core, I see no reason we do not have plPHP in core at
least from the "popularity" point of view.
--
Tatsuo Ishii

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Marc G. Fournier
On Mon, 17 May 2004, Alvaro Herrera Munoz wrote:

> I have some confidence in that I will be able to deliver it maybe the last
> week of May.  I can only hope, however, that it will not be rejected because
> it's presented too close to feature freeze.

There is no such thing as "too close to feature freeze", nor has there
ever been in the past ...  other then missing it altogether.  Unless there
are some serious flaws in the implementation, submitting it on May 31st
would get it in ...it isn't expecting to be rock solid, bug free, that is
what the beta period is to work out ...

What is expected, though, is that you won't disappear after its committed,
so that you can fix any bugs reported in a timely manner ...


Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Clean-up callbacks for non-SR functions

2004-05-18 Thread Tom Lane
James William Pye <[EMAIL PROTECTED]> writes:
> I know I can use RegisterExprContextCallback and the RSI's econtext to
> register a callback for SRFs, but this--or similar
> functionality--does not appear to be available for non-SRFs.

Hm?  That functionality works for any function, whether it returns a set
or not.

regards, tom lane

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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] [GENERAL] PgSQL 7.4.2 - NaN on Tru64 UNIX

2004-05-18 Thread Tom Lane
Nikola Milutinovic <[EMAIL PROTECTED]> writes:
> [ about NaN on Tru64 ]
> This compiles on Tru64 4.0D (the compiler swallows it), but fails on 
> Tru64 UNIX 5.1B. Both basic CC and DTK Compaq CC break on that file 
> complaining on that constant evaluation. The best way to solve it is to 
> use system definition of "Infinity Constants":
> ...
> + #define NAN   DBL_INFINITY

Current CVS tip will probably fail with this, because we expect the
platform to distinguish between NaN and Infinity.  Could you retry your
experiments with a recent snapshot and let us know what seems best now?

regards, tom lane

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Marc G. Fournier
On Tue, 18 May 2004, Joshua D. Drake wrote:

> Actually plPHP doesn't require the PostgreSQL source tree... you would
> just have to modify the Make file to point to the right places.

So, why tie it into the PostgreSQL source tree?  Won't it be popular
enough to live on its own, that it has to be distributed as part of the
core?


Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Marc G. Fournier
On Tue, 18 May 2004, Heikki Linnakangas wrote:

> I'd like to get the patch committed as soon as the 7.6 release cycle
> begins, with whatever limitations it has at that time.

The nice thing of this is that then you have a development cycle for
others to help ... your patch lays down the "this is the direction, now
add to it" ...

I'd love to see 7.6 start off with a bunch of very large patches that can
be then fleshed out over the course of the development cycle ... instead
of a bunch of patches at the end of teh development cycle cause everyone
is trying to squeeze things in ...



Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

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


Re: [HACKERS] psql weirdness in HEAD

2004-05-18 Thread Christopher Kings-Lynne
I get a similar failure running pg_dumpall and initdb as well.
Chris
Christopher Kings-Lynne wrote:
I run psql and I get this:
-bash-2.05b$ psql template1
Welcome to psql 7.5devel, the PostgreSQL interactive terminal.
Type:  \copyright for distribution terms
   \h for help with SQL commands
   \? for help with psql commands
   \g or terminate with semicolon to execute query
   \q to quit
could not stat "/sbin/psql": mcould not stat "/bin/psql": mcould not 
stat "/usr/sbin/psql": mcould not stat "/usr/bin/psql": mcould not stat 
"/usr/games/psql": mcould not stat "/usr/local/sbin/psql": mcould not 
stat "/usr/local/bin/psql": mcould not stat "/usr/X11R6/bin/psql": 
mcould not stat "/home/chriskl/bin/psql": mtemplate1=#

I do have the tablespaces patch applied, but I can't see anything that 
could have caused this.  It seems more likely do be a relocatable 
install bug...  Maybe some leftover debug code?

Chris
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


[HACKERS] psql weirdness in HEAD

2004-05-18 Thread Christopher Kings-Lynne
I run psql and I get this:
-bash-2.05b$ psql template1
Welcome to psql 7.5devel, the PostgreSQL interactive terminal.
Type:  \copyright for distribution terms
   \h for help with SQL commands
   \? for help with psql commands
   \g or terminate with semicolon to execute query
   \q to quit
could not stat "/sbin/psql": mcould not stat "/bin/psql": mcould not 
stat "/usr/sbin/psql": mcould not stat "/usr/bin/psql": mcould not stat 
"/usr/games/psql": mcould not stat "/usr/local/sbin/psql": mcould not 
stat "/usr/local/bin/psql": mcould not stat "/usr/X11R6/bin/psql": 
mcould not stat "/home/chriskl/bin/psql": mtemplate1=#

I do have the tablespaces patch applied, but I can't see anything that 
could have caused this.  It seems more likely do be a relocatable 
install bug...  Maybe some leftover debug code?

Chris
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Lamar Owen
On Tuesday 18 May 2004 21:58, Joshua D. Drake wrote:
> > So you then have to build PHP twice, in an RPM build environment.  You
> > mean I can't just have the headers installed to build plPHP?  So, follow
> > the

> No you need to make sure that PHP is available as a shared lib.

Which requires you to build PHP.  PHP is only going to get built once; do you 
build with or without PostgreSQL client support?  As an RPM builder, you 
cannot build it one way, then rebuild it again another way.  It's not 
self-hosting at that point.

> > Try building the RPMs for PHP plus PostgreSQL and plPHP, then tell me how
> > you solved the circular dependency.

> Actually plPHP doesn't require the PostgreSQL source tree... you would
> just have to modify the Make file to point to the right places.

Then it can easily be a standalone project, and the issues go away.
-- 
Lamar Owen
Director of Information Technology
Pisgah Astronomical Research Institute
1 PARI Drive
Rosman, NC  28772
(828)862-5554
www.pari.edu

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


Re: [HACKERS] pg_autovacuum seems to be a neat freak and cleans way too much

2004-05-18 Thread Brian Hirt
there might be another similar bug that was fixed in 7.4.2
i just doubled checked the 7.4.2 tarball, and it does have this problem.
you might want to double check to see if it's fixed in 7.4.3, or i can  
grab cvs and check it if you like.

On May 18, 2004, at 8:06 PM, Bruce Momjian wrote:
I think we already fixed that in 7.4.2.  We also have a few bugs still
in 7.4.2 and we need to get those fixed soon and release 7.4.3.
--- 


Brian Hirt wrote:
I'm following up on my own email and cross posting to hackers, because
there is a bug that needs fixed.   I spent some more time digging into
this, and I found the cause of the problem.
reltuples in pg_class is defined as a real,  reltuples in  
pg_autovacuum
is defined as an int.   the query used to get reltuples returns
scientific notation for my larg tables, '4.06927e+06' for the one i
mention below.pg_autovacuum happily converts that to a '4' by  
doing
atoi('4.06927e+06'), which is why it's all fubar for my large tables
with over a million tuples.

my real quick hack of changing the define in pg_autovacuum.h to cast
reltuples to ::int4 makes it work
line: 37
#define TABLE_STATS_QUERY   "select
a.oid,a.relname,a.relnamespace,a.relpages,a.relisshared,a.reltuples::
int4,b.schemaname,b.n_tup_ins,b.n_tup_upd,b.n_tup_del from pg_class a,
pg_stat_all_tables b where a.oid=b.relid and a
.relkind = 'r'"
#define PAGES_QUERY "select oid,reltuples::int4,relpages from pg_class
where oid=%i"
however, i think a better fix would be to change the autovacuum to use
a double instead of an int.   if it's going to stay at int, it should
probably be increased to long and the casts changed to ::int8
any suggestions on how best way to fix?
i'll supply a patch once the approach is agreed upon and the problem
has been verified.
best regards,
--brian
On May 18, 2004, at 7:37 PM, Brian Hirt wrote:
I've having a strange issue with pg_autovacuum.   I have a table with
about 4 million rows in 20,000 pages.   autovacuum likes to vacuum
and/or analyze  it every 45 minutes or so, but it probably doesn't
have more that a few hundred rows changed every few hours.   when i
run autovacuum with -d3 it says
[2004-05-18 07:04:26 PM]   table name:
basement_nightly."public"."search_words4"
[2004-05-18 07:04:26 PM]  relid: 396238832;   relisshared: 0
[2004-05-18 07:04:26 PM]  reltuples: 4;  relpages: 20013
[2004-05-18 07:04:26 PM]  curr_analyze_count:  0;
cur_delete_count:   0
[2004-05-18 07:04:26 PM]  ins_at_last_analyze: 0;
del_at_last_vacuum: 0
[2004-05-18 07:04:26 PM]  insert_threshold:504;
delete_threshold1008
reltuples: 4 seems wrong.  I would expect a table with 4m rows and  
20k
pages to have more than 4 tuples.   I think this is why the insert
threshhold is all messed up -- which is why it gets analyzed way too
frequently.

this happens with other big tables too.   the autovacuum is from
7.4.2, some information is below.
output from vacuum:
basement=# vacuum ANALYZE verbose search_words4;
INFO:  vacuuming "public.search_words4"
INFO:  index "search_words4_data_id" now contains 4069268 row  
versions
in 15978 pages
DETAIL:  479 index row versions were removed.
1 index pages have been deleted, 0 are currently reusable.
CPU 0.42s/0.70u sec elapsed 29.48 sec.
INFO:  index "search_words4_pkey" now contains 4069268 row versions  
in
17576 pages
DETAIL:  479 index row versions were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.77s/0.74u sec elapsed 150.19 sec.
INFO:  "search_words4": removed 479 row versions in 6 pages
DETAIL:  CPU 0.00s/0.00u sec elapsed 0.00 sec.
INFO:  "search_words4": found 479 removable, 4069268 nonremovable row
versions in 19950 pages
DETAIL:  0 dead row versions cannot be removed yet.
There were 0 unused item pointers.
0 pages are entirely empty.
CPU 1.30s/1.61u sec elapsed 179.96 sec.
INFO:  analyzing "public.search_words4"
INFO:  "search_words4": 19950 pages, 3000 rows sampled, 4069800
estimated total rows
VACUUM
basement=#


here's the frequency
[2004-05-18 12:12:54 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 01:59:13 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 02:05:36 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 02:29:25 PM] Performing: VACUUM ANALYZE
"public"."search_words4"
[2004-05-18 02:46:09 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 03:39:31 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 05:20:45 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 06:08:03 PM] Performing: VACUUM ANALYZE
"public"."search_words4"
[2004-05-18 06:18:34 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 07:34:27 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 07:43:18 PM] Performing: ANALYZE "public"."search_words4"

---(end of  
broadcast)---
TIP 6: Have you searched our list archives?


Re: [HACKERS] pg_autovacuum seems to be a neat freak and cleans way

2004-05-18 Thread Bruce Momjian

I think we already fixed that in 7.4.2.  We also have a few bugs still
in 7.4.2 and we need to get those fixed soon and release 7.4.3.

---

Brian Hirt wrote:
> I'm following up on my own email and cross posting to hackers, because  
> there is a bug that needs fixed.   I spent some more time digging into  
> this, and I found the cause of the problem.
> 
> reltuples in pg_class is defined as a real,  reltuples in pg_autovacuum  
> is defined as an int.   the query used to get reltuples returns  
> scientific notation for my larg tables, '4.06927e+06' for the one i  
> mention below.pg_autovacuum happily converts that to a '4' by doing  
> atoi('4.06927e+06'), which is why it's all fubar for my large tables  
> with over a million tuples.
> 
> my real quick hack of changing the define in pg_autovacuum.h to cast  
> reltuples to ::int4 makes it work
> 
> line: 37
> #define TABLE_STATS_QUERY   "select  
> a.oid,a.relname,a.relnamespace,a.relpages,a.relisshared,a.reltuples:: 
> int4,b.schemaname,b.n_tup_ins,b.n_tup_upd,b.n_tup_del from pg_class a,  
> pg_stat_all_tables b where a.oid=b.relid and a
> .relkind = 'r'"
> 
> #define PAGES_QUERY "select oid,reltuples::int4,relpages from pg_class  
> where oid=%i"
> 
> however, i think a better fix would be to change the autovacuum to use  
> a double instead of an int.   if it's going to stay at int, it should  
> probably be increased to long and the casts changed to ::int8
> 
> any suggestions on how best way to fix?
> 
> i'll supply a patch once the approach is agreed upon and the problem  
> has been verified.
> 
> 
> best regards,
> 
> --brian
> 
> On May 18, 2004, at 7:37 PM, Brian Hirt wrote:
> 
> > I've having a strange issue with pg_autovacuum.   I have a table with  
> > about 4 million rows in 20,000 pages.   autovacuum likes to vacuum  
> > and/or analyze  it every 45 minutes or so, but it probably doesn't  
> > have more that a few hundred rows changed every few hours.   when i  
> > run autovacuum with -d3 it says
> >
> > [2004-05-18 07:04:26 PM]   table name:  
> > basement_nightly."public"."search_words4"
> > [2004-05-18 07:04:26 PM]  relid: 396238832;   relisshared: 0
> > [2004-05-18 07:04:26 PM]  reltuples: 4;  relpages: 20013
> > [2004-05-18 07:04:26 PM]  curr_analyze_count:  0;  
> > cur_delete_count:   0
> > [2004-05-18 07:04:26 PM]  ins_at_last_analyze: 0;  
> > del_at_last_vacuum: 0
> > [2004-05-18 07:04:26 PM]  insert_threshold:504;  
> > delete_threshold1008
> >
> > reltuples: 4 seems wrong.  I would expect a table with 4m rows and 20k  
> > pages to have more than 4 tuples.   I think this is why the insert  
> > threshhold is all messed up -- which is why it gets analyzed way too  
> > frequently.
> >
> > this happens with other big tables too.   the autovacuum is from  
> > 7.4.2, some information is below.
> >
> >
> > output from vacuum:
> >
> > basement=# vacuum ANALYZE verbose search_words4;
> > INFO:  vacuuming "public.search_words4"
> > INFO:  index "search_words4_data_id" now contains 4069268 row versions  
> > in 15978 pages
> > DETAIL:  479 index row versions were removed.
> > 1 index pages have been deleted, 0 are currently reusable.
> > CPU 0.42s/0.70u sec elapsed 29.48 sec.
> > INFO:  index "search_words4_pkey" now contains 4069268 row versions in  
> > 17576 pages
> > DETAIL:  479 index row versions were removed.
> > 0 index pages have been deleted, 0 are currently reusable.
> > CPU 0.77s/0.74u sec elapsed 150.19 sec.
> > INFO:  "search_words4": removed 479 row versions in 6 pages
> > DETAIL:  CPU 0.00s/0.00u sec elapsed 0.00 sec.
> > INFO:  "search_words4": found 479 removable, 4069268 nonremovable row  
> > versions in 19950 pages
> > DETAIL:  0 dead row versions cannot be removed yet.
> > There were 0 unused item pointers.
> > 0 pages are entirely empty.
> > CPU 1.30s/1.61u sec elapsed 179.96 sec.
> > INFO:  analyzing "public.search_words4"
> > INFO:  "search_words4": 19950 pages, 3000 rows sampled, 4069800  
> > estimated total rows
> > VACUUM
> > basement=#
> >
> >
> >
> > here's the frequency
> > [2004-05-18 12:12:54 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 01:59:13 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 02:05:36 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 02:29:25 PM] Performing: VACUUM ANALYZE  
> > "public"."search_words4"
> > [2004-05-18 02:46:09 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 03:39:31 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 05:20:45 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 06:08:03 PM] Performing: VACUUM ANALYZE  
> > "public"."search_words4"
> > [2004-05-18 06:18:34 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 07:34:27 PM] Performing: ANALYZE "public"."search_words4"
> > [2004-05-18 07:43:18 PM] Performing: ANALYZE "public"."search_w

Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake
So you then have to build PHP twice, in an RPM build environment.  You mean I 
can't just have the headers installed to build plPHP?  So, follow the 
No you need to make sure that PHP is available as a shared lib.

1.) Build PostgreSQL
2.) Build PHP (with PostgreSQL client support)
3.) Build plPHP (with PostgreSQL SPI support, or maybe even PostgreSQL client 
support for cross database queries? :-))
Right.
Try building the RPMs for PHP plus PostgreSQL and plPHP, then tell me how you 
solved the circular dependency.
Actually plPHP doesn't require the PostgreSQL source tree... you would 
just have to modify the Make file to point to the right places.

J
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
   (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] pg_autovacuum seems to be a neat freak and cleans way too much

2004-05-18 Thread Brian Hirt
I'm following up on my own email and cross posting to hackers, because  
there is a bug that needs fixed.   I spent some more time digging into  
this, and I found the cause of the problem.

reltuples in pg_class is defined as a real,  reltuples in pg_autovacuum  
is defined as an int.   the query used to get reltuples returns  
scientific notation for my larg tables, '4.06927e+06' for the one i  
mention below.pg_autovacuum happily converts that to a '4' by doing  
atoi('4.06927e+06'), which is why it's all fubar for my large tables  
with over a million tuples.

my real quick hack of changing the define in pg_autovacuum.h to cast  
reltuples to ::int4 makes it work

line: 37
#define TABLE_STATS_QUERY   "select  
a.oid,a.relname,a.relnamespace,a.relpages,a.relisshared,a.reltuples:: 
int4,b.schemaname,b.n_tup_ins,b.n_tup_upd,b.n_tup_del from pg_class a,  
pg_stat_all_tables b where a.oid=b.relid and a
.relkind = 'r'"

#define PAGES_QUERY "select oid,reltuples::int4,relpages from pg_class  
where oid=%i"

however, i think a better fix would be to change the autovacuum to use  
a double instead of an int.   if it's going to stay at int, it should  
probably be increased to long and the casts changed to ::int8

any suggestions on how best way to fix?
i'll supply a patch once the approach is agreed upon and the problem  
has been verified.

best regards,
--brian
On May 18, 2004, at 7:37 PM, Brian Hirt wrote:
I've having a strange issue with pg_autovacuum.   I have a table with  
about 4 million rows in 20,000 pages.   autovacuum likes to vacuum  
and/or analyze  it every 45 minutes or so, but it probably doesn't  
have more that a few hundred rows changed every few hours.   when i  
run autovacuum with -d3 it says

[2004-05-18 07:04:26 PM]   table name:  
basement_nightly."public"."search_words4"
[2004-05-18 07:04:26 PM]  relid: 396238832;   relisshared: 0
[2004-05-18 07:04:26 PM]  reltuples: 4;  relpages: 20013
[2004-05-18 07:04:26 PM]  curr_analyze_count:  0;  
cur_delete_count:   0
[2004-05-18 07:04:26 PM]  ins_at_last_analyze: 0;  
del_at_last_vacuum: 0
[2004-05-18 07:04:26 PM]  insert_threshold:504;  
delete_threshold1008

reltuples: 4 seems wrong.  I would expect a table with 4m rows and 20k  
pages to have more than 4 tuples.   I think this is why the insert  
threshhold is all messed up -- which is why it gets analyzed way too  
frequently.

this happens with other big tables too.   the autovacuum is from  
7.4.2, some information is below.

output from vacuum:
basement=# vacuum ANALYZE verbose search_words4;
INFO:  vacuuming "public.search_words4"
INFO:  index "search_words4_data_id" now contains 4069268 row versions  
in 15978 pages
DETAIL:  479 index row versions were removed.
1 index pages have been deleted, 0 are currently reusable.
CPU 0.42s/0.70u sec elapsed 29.48 sec.
INFO:  index "search_words4_pkey" now contains 4069268 row versions in  
17576 pages
DETAIL:  479 index row versions were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.77s/0.74u sec elapsed 150.19 sec.
INFO:  "search_words4": removed 479 row versions in 6 pages
DETAIL:  CPU 0.00s/0.00u sec elapsed 0.00 sec.
INFO:  "search_words4": found 479 removable, 4069268 nonremovable row  
versions in 19950 pages
DETAIL:  0 dead row versions cannot be removed yet.
There were 0 unused item pointers.
0 pages are entirely empty.
CPU 1.30s/1.61u sec elapsed 179.96 sec.
INFO:  analyzing "public.search_words4"
INFO:  "search_words4": 19950 pages, 3000 rows sampled, 4069800  
estimated total rows
VACUUM
basement=#


here's the frequency
[2004-05-18 12:12:54 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 01:59:13 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 02:05:36 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 02:29:25 PM] Performing: VACUUM ANALYZE  
"public"."search_words4"
[2004-05-18 02:46:09 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 03:39:31 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 05:20:45 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 06:08:03 PM] Performing: VACUUM ANALYZE  
"public"."search_words4"
[2004-05-18 06:18:34 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 07:34:27 PM] Performing: ANALYZE "public"."search_words4"
[2004-05-18 07:43:18 PM] Performing: ANALYZE "public"."search_words4"

---(end of broadcast)---
TIP 6: Have you searched our list archives?
  http://archives.postgresql.org


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Lamar Owen
On Tuesday 18 May 2004 17:33, Joshua D. Drake wrote:
> > But most binary packages do, and they are the ones I'm talking about.
> > And surely you do not advocate that, in order to build PL/PHP, the
> > packagers instead disable the client side support in PHP?

> Of course not, but I still don't see your point. plPHP doesn't need
> PHP+PostgreSQL support. Nor does PHP+PostgreSQL conflict with using
> plPHP...

> PHP doesn't even need to be installed for plPHP to work... You just
> need the source tree for building.

So you then have to build PHP twice, in an RPM build environment.  You mean I 
can't just have the headers installed to build plPHP?  So, follow the 
sequence of the RPM building events:
1.) Build PHP without PostgreSQL client support.
2.) Build PostgreSQL
3.) Build plPHP
4.) Build PHP with PostgreSQL client support.

The Perl situation is totally different, since the Perl client is not part of 
the Perl source tree.  The 4-step I mention above would never be followed by 
any distributions, who would probably just not build plPHP to keep from 
having the circular dependency.

See, in the RPM build environment for self-hosting distributions, I would have 
to pull in the entire PHP source distribution during the PostgreSQL build.  
Keeping that synchronized with the PHP version that is the main one 
distributed would be a major pain.

Better would be getting plPHP so that it doesn't need the PostgreSQL source 
tree, but just needs the development headers (with server-side) installed.  
Then there is no circular build dependency.  Then I just:

1.) Build PostgreSQL
2.) Build PHP (with PostgreSQL client support)
3.) Build plPHP (with PostgreSQL SPI support, or maybe even PostgreSQL client 
support for cross database queries? :-))

Try building the RPMs for PHP plus PostgreSQL and plPHP, then tell me how you 
solved the circular dependency.
-- 
Lamar Owen
Director of Information Technology
Pisgah Astronomical Research Institute
1 PARI Drive
Rosman, NC  28772
(828)862-5554
www.pari.edu

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Claudio Natoli

Greg Copeland writes:
> My primary fear about delivering Win32 with all of these other great
> features is that, IMO, there is a higher level of risk associated with
> these advanced features.  At the same time, this will be the 
> first trial for many Win32 users.  Should there be some problems, in
general, 
> or worse, specific to Win32 users as it relates to these new features, it
> could cost some serious Win32/PostgreSQL community points.  A troubled
> release which is experienced by Win32 users is going to be a 
> battle cry for MySQL.

Just thought I'd jump in here with my $0.02.

It was always my expectation that the first Win32 release, regardless of the
features which accompanied it, would be clearly advertised as not for
production (some here might suggest that simply mentioning Win32 and "not
for production" in the same sentence is repeating myself, but I'm not going
to be quite so cynical). It won't stop people going ahead and doing it
regardless, but it buys us some press insurance.

I'm confident that the Win32 port will be solid, and will go a long way in
boosting PostgreSQLs popularity. That said, I simply don't think it isn't
reasonable to expect that it'll go out the door with all quirks nailed the
very first time, and we ought to be honest and up-front about these
expectations.

Cheers,
Claudio

--- 
Certain disclaimers and policies apply to all email sent from Memetrics.
For the full text of these disclaimers and policies see 
http://www.memetrics.com/emailpolicy.html";>http://www.memetrics.com/em
ailpolicy.html

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


Re: [HACKERS] bitwise and/or aggregate functions?

2004-05-18 Thread Bruce Momjian
Tom Lane wrote:
> Neil Conway <[EMAIL PROTECTED]> writes:
> > Fabien COELHO wrote:
> >> Neil - can you check your SQL2003 copy to see if it mentions standard
> >> aggregates on bit types?
> 
> > I couldn't see any mention of any aggregates specific to the bit types, 
> 
> There certainly are none, since in fact SQL2003 removes the BIT types
> entirely.  See Annex E:
> 
> 2) ISO/IEC 9075-2:1999 defined data types called BIT and BIT VARYING.
>These data types have been deleted from this edition of ISO/IEC 9075.

Understand.  To me, allowing bitwise and boolean aggregates on a column
seemed like a natural capability we should have.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Christopher Kings-Lynne
Seriously though, we all have the  roles that we play. I don't think 
redirecting specific resources to other
resources will help beyond slowing up the original resources.
And now Neil's on holidays :)
Perhaps we need more committers.  The deluge of patches is starting to 
strain the major developers I think?

Chris
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Greg Sabino Mullane

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
 
 
> What can be done?  Well, money from Fujitsu and other companies
> (Afilias/Sloney, Command Prompt/ecpg-plPHP), is allowing us to hit
> some of these bigger items, so hopefully that will move us forward
> in these complex areas. I am not sure what could have been done to
> push some of these projects along faster.
 
Perhaps some more public cajoling of the masses into helping out
would be good. Not just development but testing. Occasional posts on
general asking people to help test Win32 and PITR for example, or a
prominent link on the main page asking people to try out the latest
Win32. It may not be "beta-ready" yet, but it surely could not hurt
to have people start testing as soon as possible.
 
I'm also sure that there is probably some more development talent
available out there that could help in some of these bigger items,
but I've not seen a lot of people asking for help or suggesting
ways that people could help. I realize that some of this items are
large and complex, but there is always /something/ that people can do,
even if it documentating new features, or even documenting how to
understand the new feature from a developer's perspective.
 
- --
Greg Sabino Mullane [EMAIL PROTECTED]
PGP Key: 0x14964AC8 200405182046
 
-BEGIN PGP SIGNATURE-
 
iD8DBQFAqq6GvJuQZxSWSsgRAuruAKCkzWbtYcfu9DR+f4JUHKPWjaPiswCg/Vcf
ZGLywaE2OOgr3Mk+Kua1fUA=
=vqHP
-END PGP SIGNATURE-



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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] bitwise and/or aggregate functions?

2004-05-18 Thread Tom Lane
Neil Conway <[EMAIL PROTECTED]> writes:
> Fabien COELHO wrote:
>> Neil - can you check your SQL2003 copy to see if it mentions standard
>> aggregates on bit types?

> I couldn't see any mention of any aggregates specific to the bit types, 

There certainly are none, since in fact SQL2003 removes the BIT types
entirely.  See Annex E:

2) ISO/IEC 9075-2:1999 defined data types called BIT and BIT VARYING.
   These data types have been deleted from this edition of ISO/IEC 9075.

regards, tom lane

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Fixed directory locations in installs

2004-05-18 Thread Bruce Momjian
Peter Eisentraut wrote:
> Tom Lane wrote:
> > > What use could printing the relative path possibly have?
> >
> > Debugging.  If I can't see it, I *know* I'm going to wish I could.
> 
> Well, you can just look inside, it's not that big.  Supporting extra 
> options might make the script twice as big and thus make it harder to 
> just look at the whole thing.

OK, this is a followup from Peter on the pg_config issue.  We only do a
relative path if they used the defaults and put it all under a single
directory so there is probably little need for a pg_config addition.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Fixed directory locations in installs

2004-05-18 Thread Bruce Momjian
Tom Lane wrote:
> Bruce Momjian <[EMAIL PROTECTED]> writes:
> > Tom Lane wrote:
> >> I guess what you are saying is we should have a configure-time option to
> >> address configured directories via relative paths from the executable's
> >> directory, rather than absolute paths?  Seems reasonable ...
> 
> > Yep.  In fact, why would we not use that by default?
> 
> Because it'll be slower.  Instead of
>   /usr/local/pgsql/lib
> we'd be using something like
>   /usr/local/pgsql/bin/../lib
> which is not too bad here but would get worse if the directories are not
> so close.
> 
> But perhaps we can arrange for the path to be simplified down to an
> absolute form when it's constructed at backend startup?  You'd need a
> routine anyway to combine the bindir path (determined by FindExec) with
> the relative path provided by configure, so maybe this routine could be
> smart about leading ../ in the configure path.
> 
> We'd also need to give some thought to pg_config output.  I think I
> would like to be able to see the relative path computed by configure
> as well as the effective actual path ... maybe a switch to specify which
> way to print it?

Does this pg_config addition need to be done?

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] question about information_schema

2004-05-18 Thread Tom Lane
Dave Cramer <[EMAIL PROTECTED]> writes:
> While I'm asking how can I find all of the user defined types, assuming
> that the user is the owner of the cluster. I see that pg_dump can do
> this ?

IIRC, what pg_dump actually does is look for types that are not in the
pg_catalog schema.  Plus you probably want to exclude composite types
other than "standalone" ones (ie, all those whose associated pg_class
entry has a relkind other than COMPOSITE_TYPE).

regards, tom lane

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] XactIsoLevel handling

2004-05-18 Thread Tom Lane
Heikki Linnakangas <[EMAIL PROTECTED]> writes:
> Why is the isLocal-parameter false? Couldn't it be true as well? It works
> as it is, since the XactIsoLevel variable is reset to default value in
> StartTransaction anyway, but it looks silly to me to define the variable
> as a session variable when in fact it acts like a local one.

Perhaps it could be true instead, but I see no point in invoking the
extra overhead of the local-variable mechanism given that this variable
is special-cased anyway.

> I bumped into this because my current 2PC doesn't allow you to set session
> variables.

Seems like the problem is right there, not with XactIsoLevel ... you
cannot seriously claim that that is an acceptable restriction.

regards, tom lane

---(end of broadcast)---
TIP 3: 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: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Bruce Momjian wrote:
Peter Eisentraut wrote:
Jan Wieck wrote:
> Boy, nobody was suggesting 100% static linking. What kind of madness
> are you getting into if you link libpq.a into psql? There is
> something between all or nothing, isn't there?
It's not going to be only psql and libpq.  The next thing is, someone 
wants to have a relocatable libpqxx, or a relocatable PHP, or a 
relocatable MyCoolReplicationSystem.  Before you know it, half the 
world has the other half of the world statically linked.  This can't be 
the solution.
So your opinion is that we need to just require some user configuration
changes to find the shared libs, right?
Peter is mixing issues here. How another application finds the right 
libpq.so, libpqxx.so or whatever interface lib after someone moved the 
PostgreSQL lib directory somewhere else has absolutely nothing to do 
with how we make sure that our binary utilities like initdb, psql and so 
forth are protected against using the wrong one in a multi-version 
relocatable environment.

And that some platforms support relative rpath is nice handwaving, but 
it doesn't get us anywhere.

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

Peter Eisentraut wrote:
Joshua D. Drake wrote:
Of course not, but I still don't see your point. plPHP doesn't need
PHP+PostgreSQL support. Nor does PHP+PostgreSQL conflict with using
plPHP...
PHP doesn't even need to be installed for plPHP to work... You just
need the source tree for building.

O.k. now I get it.. Basically you are saying that in order to build 
plPHP you need PHP and PostgreSQL (regardless if they know about each 
other). So in order to build plPHP you need to build PostgreSQL, then 
PHP, then plPHP... versus just Postgresql+plPHP...

However plPHP is a configure option (when patched)... Thus if they
choose with-php then they would (presumably) know what they were getting 
into.

That makes sense.
Sincerely,
Joshua D. Drake

I don't talk about manual build processes, I talk about (semi-)automatic 
package builds.  The PHP package has a build dependency on PostgreSQL, 
because it needs libpq.  So PostgreSQL needs to be built and installed 
before PHP can be built.  But then, if PL/PHP were to be integrated 
into PostgreSQL, PHP needs to be installed first, so the 
PostgreSQL+PL/PHP build can get at the PHP headers files and whatever 
else it needs.  So you can neither build PHP first nor build PostgreSQL 
first.

So building PL/PHP doesn't need a PHP with PostgreSQL support.  But no 
one is going to build two versions of PHP packages just so PostgreSQL 
can build.  That is a mess we can happily avoid.

---(end of broadcast)---
TIP 6: Have you searched our list archives?
   http://archives.postgresql.org
---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [HACKERS] add server include files to default installation?

2004-05-18 Thread Thomas Hallgren
Fabien COELHO wrote:
Any idea? The best I have would be to create a "src" subdir in the
installation, so that top_builddir could be set to
".../include/postgresql/config" and everything would work from that
point of view.
This is from an extension module author's point of view. My module will 
reference these two files only:

Makefile.global
Makefile.shlib
I'm not the least interested in how these files are organized internally 
or where they are placed in reference to what they contain. I don't care 
where the include files, config files, or other files are located, as 
long as these two files will set my flags accordingly. I think it's 
important to recognize this separation of concern. Extension modules 
should not need to worry about anything but where to find these two files.

If I have a "pg_config --makefiledir" that tells me where to find the 
files, that should be all I need:

makefiledir := $(shell pg_config --makefiledir)
include $(makefiledir)/Makefile.global
...
include $(makefiledir)/Makefile.shlib
If I go in and parse the makefiles to dig out information or do 
something equally horrible, I'm either doing something wrong or 
something is missing in the "contract" between the backend and the 
extension module and should be rectified there. The contract, the way I 
see it, is constituted  by the two files.

Just trying to give you a bit more freedom to place your files :-)
Kind regards,
Thomas Hallgren
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster


Re: [HACKERS] Why new features only in magior releases ?

2004-05-18 Thread Neil Conway
Gaetano Mendola wrote:
Currently some changes are back ported to old branches ( BTW, why not to
switch to use "subversion"? ) so I don't think this actualy a big issue
The only changes that are presently backported are bug fixes that the 
committing developer feels confident will not cause a regression (for 
this reason, it is common practice to commit a simplified version of a 
change to the stable release series, and a more complete rewrite to 
-devel). It would require significantly more work to backport larger 
changes -- both due to code drift in the development branch, and the 
likelihood that larger changes that introduce new features will require 
a lot more testing than small changes that fix critical, localized bugs.

(Of course, one option for users who want new features in a stable 
release series is to hire a company to backport them for you. It is 
already common practice for some companies to support PostgreSQL 
releases for longer than the development group is prepared to do.)

As for using SVN, that's been suggested before (there was a long thread 
on it recently). I wouldn't object, although (a) I don't see the rush, 
CVS works fine for us AFAIK (b) arch might be worth considering as an 
alternative.

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Joshua D. Drake wrote:
> Of course not, but I still don't see your point. plPHP doesn't need
> PHP+PostgreSQL support. Nor does PHP+PostgreSQL conflict with using
> plPHP...
>
> PHP doesn't even need to be installed for plPHP to work... You just
> need the source tree for building.

I don't talk about manual build processes, I talk about (semi-)automatic 
package builds.  The PHP package has a build dependency on PostgreSQL, 
because it needs libpq.  So PostgreSQL needs to be built and installed 
before PHP can be built.  But then, if PL/PHP were to be integrated 
into PostgreSQL, PHP needs to be installed first, so the 
PostgreSQL+PL/PHP build can get at the PHP headers files and whatever 
else it needs.  So you can neither build PHP first nor build PostgreSQL 
first.

So building PL/PHP doesn't need a PHP with PostgreSQL support.  But no 
one is going to build two versions of PHP packages just so PostgreSQL 
can build.  That is a mess we can happily avoid.


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Peter Eisentraut wrote:
> Jan Wieck wrote:
> > Boy, nobody was suggesting 100% static linking. What kind of madness
> > are you getting into if you link libpq.a into psql? There is
> > something between all or nothing, isn't there?
> 
> It's not going to be only psql and libpq.  The next thing is, someone 
> wants to have a relocatable libpqxx, or a relocatable PHP, or a 
> relocatable MyCoolReplicationSystem.  Before you know it, half the 
> world has the other half of the world statically linked.  This can't be 
> the solution.

So your opinion is that we need to just require some user configuration
changes to find the shared libs, right?

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Peter Eisentraut
Jan Wieck wrote:
> Boy, nobody was suggesting 100% static linking. What kind of madness
> are you getting into if you link libpq.a into psql? There is
> something between all or nothing, isn't there?

It's not going to be only psql and libpq.  The next thing is, someone 
wants to have a relocatable libpqxx, or a relocatable PHP, or a 
relocatable MyCoolReplicationSystem.  Before you know it, half the 
world has the other half of the world statically linked.  This can't be 
the solution.


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Peter Eisentraut wrote:
> Bruce Momjian wrote:
> > Peter Eisentraut wrote:
> > > Bruce Momjian wrote:
> > > > We already have --disable-rpath.  Seems we would just need
> > > > something to use the *.a files.
> > >
> > > I think it is perfectly sufficient to say that if you want a
> > > relocatable install, don't use rpath.  Static linking will lead to
> > > all other kinds of madness.
> >
> > OK, I added some more documentation about how to make relocatable
> > installs.
> 
> The shared library path issues are explained in detail later.  You 
> should refer there rather than listing only a few ideas that may or may 
> not work.  We can't assume that people will have an enlightenment at 
> the mere appearance of the word LD_LIBRARY_PATH.

Thanks.  New text:

 For relocatable installs, you might want to use
 configure's --disable-rpath
 option.  Also, you will need to tell the operating system how
 to find the shared libraries.


-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Peter Eisentraut
Bruce Momjian wrote:
> Peter Eisentraut wrote:
> > Bruce Momjian wrote:
> > > We already have --disable-rpath.  Seems we would just need
> > > something to use the *.a files.
> >
> > I think it is perfectly sufficient to say that if you want a
> > relocatable install, don't use rpath.  Static linking will lead to
> > all other kinds of madness.
>
> OK, I added some more documentation about how to make relocatable
> installs.

The shared library path issues are explained in detail later.  You 
should refer there rather than listing only a few ideas that may or may 
not work.  We can't assume that people will have an enlightenment at 
the mere appearance of the word LD_LIBRARY_PATH.


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Joshua D. Drake wrote:
> Also PHP does not compile the PostgreSQL support by default.

But most binary packages do, and they are the ones I'm talking about.  
And surely you do not advocate that, in order to build PL/PHP, the 
packagers instead disable the client side support in PHP?


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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

But most binary packages do, and they are the ones I'm talking about.  
And surely you do not advocate that, in order to build PL/PHP, the 
packagers instead disable the client side support in PHP?
Of course not, but I still don't see your point. plPHP doesn't need
PHP+PostgreSQL support. Nor does PHP+PostgreSQL conflict with using plPHP...
PHP doesn't even need to be installed for plPHP to work... You just
need the source tree for building.
So I am confused...
Sincerely,
Joshua D. Drake
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
   (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Why new features only in magior releases ?

2004-05-18 Thread Gaetano Mendola
Neil Conway wrote:
Gaetano Mendola wrote:
I well understand the reason to wait a 7.5 in order to delivery
BIG changes that are requiring a initdb, but I don't understand
why little enhancement can not be delivered in a 7.4.3 ( may be
with a short period with a 7.4.3beta ) like the "vacuum delayed".

I don't think this is a good idea.
It would risk destabilizing a known-to-be-stable release series. It is 
very important that we keep 7.4.x a platform that people feel 
comfortable deploying in a production environment.
Then we miss a degree in the versioning. I'm with you about:
1) Avoid init db if the BIG version not change
2) Avoid to introduce instability in a "know-to-be-stable" release
but wait "one year" for little improvement that for sure are not going to
jeopardize the two points aboce is too much IMHO ( see the vacuumdb delayed ).
It would also require additional development resources to back port the 
changes, and do the (fairly extensive) testing required to verify that 
they haven't caused any regressions (see the point about stability 
above). We have a finite amount of development resources, and I think 
the past consensus is that they are best spent developing for the next 
major release.
Currently some changes are back ported to old branches ( BTW, why not to
switch to use "subversion"? ) so I don't think this actualy a big issue,
some times some improvments introduced in the BETA cicle are just postponed to
next version, so some times there is no back porting but "front" porting.

I think that delivering some improvements in the 7.4.3 will permit
to delay a month the 7.5 without the pain to wait too long for some
enhancements.
Even without new features in 7.4, I don't really see the danger of a 
slow-paced 7.5 release: production environments aren't eager to upgrade 
their DBMS every six months, and the pain of an initdb applies no matter 
how frequently we make major releases.
I agree, for this reason I'm for introduce in old version ) that avoid
to perform an initdb) future enhancements.
We are running our DB in an RedHat HA cluster and upgrade from 7.X.Y -> 7.X.Z
for us is just an "eye blink", rpm -Uvh on the backup node, we relocate
the service, rpm -Uvh on the main node; all this with a total outage of
less then one minute.
Regards
Gaetano Mendola





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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Bruce Momjian wrote:
Peter Eisentraut wrote:
Bruce Momjian wrote:
> We already have --disable-rpath.  Seems we would just need something
> to use the *.a files.
I think it is perfectly sufficient to say that if you want a relocatable 
install, don't use rpath.  Static linking will lead to all other kinds 
of madness.
OK, but if we don't use rpath, don't we have to do the ld.so.conf or
environment varaible usage so we can find our shared library.  I assume
the big problem with rpath is that it might find the wrong version of
our library, right?  Is there another downside to it being set?
Exactly.
Suppose you have one of these silly RPM based Linux systems. One has to 
install PostgreSQL from RPM's in order to satisfy all the dependencies 
for whatever else you want. Now you want to install a relocatable 
version of PostgreSQL somewhere else, because you don't want to mess up 
the RPM installed one.

For sure the ld.so.conf is setup to find the RPM installed version of 
libpq. That's why we use rpath, so that you can install PG somewhere 
else and the /usr/local/pg75/bin/psql will find the libpq in 
/usr/local/pg75/lib instead of /usr/lib. But that's currently a 
configure time option and removing rpath altogether will let everything 
find the old libpq.

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 3: 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: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Peter Eisentraut wrote:
Bruce Momjian wrote:
We already have --disable-rpath.  Seems we would just need something
to use the *.a files.
I think it is perfectly sufficient to say that if you want a relocatable 
install, don't use rpath.  Static linking will lead to all other kinds 
of madness.
Boy, nobody was suggesting 100% static linking. What kind of madness are 
you getting into if you link libpq.a into psql? There is something 
between all or nothing, isn't there?

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
   (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Peter Eisentraut wrote:
> Bruce Momjian wrote:
> > We already have --disable-rpath.  Seems we would just need something
> > to use the *.a files.
> 
> I think it is perfectly sufficient to say that if you want a relocatable 
> install, don't use rpath.  Static linking will lead to all other kinds 
> of madness.

OK, I added some more documentation about how to make relocatable
installs.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073
Index: doc/src/sgml/installation.sgml
===
RCS file: /cvsroot/pgsql-server/doc/src/sgml/installation.sgml,v
retrieving revision 1.199
diff -c -c -r1.199 installation.sgml
*** doc/src/sgml/installation.sgml  17 May 2004 16:06:25 -  1.199
--- doc/src/sgml/installation.sgml  18 May 2004 20:33:18 -
***
*** 503,508 
--- 503,518 
   installation. (The man and doc
   locations are not affected by this.)
  
+ 
+ 
+  For relocatable installs, you might want to use 
+  configure's --disable-rpath
+  option.  Also, you will need to tell the operating system how
+  to find the shared libraries used by applications like 
+  psql either using a system-wide shared
+  library configuration file like ld.so.conf,
+  or an environment variable like LD_LIBRARY_PATH.
+ 
 

  

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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Peter Eisentraut wrote:
> Bruce Momjian wrote:
> > We already have --disable-rpath.  Seems we would just need something
> > to use the *.a files.
> 
> I think it is perfectly sufficient to say that if you want a relocatable 
> install, don't use rpath.  Static linking will lead to all other kinds 
> of madness.

OK, but if we don't use rpath, don't we have to do the ld.so.conf or
environment varaible usage so we can find our shared library.  I assume
the big problem with rpath is that it might find the wrong version of
our library, right?  Is there another downside to it being set?

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Peter Eisentraut
Bruce Momjian wrote:
> We already have --disable-rpath.  Seems we would just need something
> to use the *.a files.

I think it is perfectly sufficient to say that if you want a relocatable 
install, don't use rpath.  Static linking will lead to all other kinds 
of madness.

Also, some platforms offer relative rpaths.  (Maybe Solaris is the only 
one.)  We could make use of that.


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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Joshua D. Drake wrote:
> > This is very much different, because the PHP distribution contains
> > the PostgreSQL driver, whereas the other languages do not.  So you
> > would have
> >
> > PHP build depends on PostgreSQL
>
> Ahh I see your point, EXCEPT :) plPHP does not require PostgreSQL
> support to be built into PHP.

That is irrelevant.  A normal binary package of PHP does build the 
PostgreSQL support (which is surely in our interest), so the build 
dependency holds.

>
> Sincerely,
>
> Joshua D. Drake
>
> > PostgreSQL build depends on PHP
> >
> > Not good.


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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

That is irrelevant.  A normal binary package of PHP does build the 
PostgreSQL support (which is surely in our interest), so the build 
dependency holds.

Then I am afraid I don't understand the actual problem. plPHP does not
create a circular dependency because it doesn't require PHP to have 
PostgreSQL support.

Also PHP does not compile the PostgreSQL support by default.
This is no different that Perl, which also has a PostgreSQL driver but
plPerl does not require DBD::Pg to compile.
Sincerely,
Joshua D. Drake


Sincerely,
Joshua D. Drake

PostgreSQL build depends on PHP
Not good.

--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
Mammoth PostgreSQL Replicator. Integrated Replication for PostgreSQL
begin:vcard
fn:Joshua D. Drake
n:Drake;Joshua D.
org:Command Prompt, Inc.
adr:;;PO Box 215;Cascade Locks;Oregon;97014;USA
email;internet:[EMAIL PROTECTED]
title:Consultant
tel;work:503-667-4564
tel;fax:503-210-0034
note:Command Prompt, Inc. is the largest and oldest US based commercial PostgreSQL support provider. We  provide the only commercially viable integrated PostgreSQL replication solution, but also custom programming, and support. We authored  the book Practical PostgreSQL, the procedural language plPHP, and adding trigger capability to plPerl.
x-mozilla-html:FALSE
url:http://www.commandprompt.com/
version:2.1
end:vcard


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


Re: [HACKERS] proposal: be smarter about i/o patterns in index scan

2004-05-18 Thread Glen Parker
> The basic problem is that Pg seeks far too much when performing an index
> scan.  I have saved an strace of a backend which is selecting 170,000
> rows from a 240,000,000 row table via index scan.  The strace shows
> 134,000 seeks and reads, or almost one seek for every tuple in the
> result set.  This would be fine normally except the seeks are in a
> *very* suboptimal pattern, swinging back and forth across the device.
> The query requires 16 minutes, 30 seconds on our test hardware.

Yes yes yes *please* fix this :-)  This performance bottle neck in PG
effects us all the time.


> The proposal is to sort the block requests before they are issued.
> Because Pg only issues single seek/read pairs synchronously, the kernel
> has no chance to apply its elevator and hence every seek/read Pg issues
> results in actual movement of the disk head.  Pg's random pattern of
> seeking also makes the kernel's readahead fairly useless.
>
> To prove the proposal I did a simulation, using the recorded seek
> positions in the strace.  We noted that Pg issued 403 seek/read pairs
> for every 8192 bytes read from the index.  So we performed four
> simulations: a straight playback of Pg's seek pattern, a playback where
> each list of 403 seeks is sorted by byte offset, a playback of all the
> seeks sorted by offset, and a sequential scan of the 13GB data file.
>
> PostgreSQL 4.2.1:  16m30s
> Sorted in chunks:  10m6s
> Sorted altogether: 4m19s
> Sequential scan:   6m7s
>
> As you can see, there's a lot to be gained here.  If Pg was able to
> issue its seeks in the optimal order, the query would return in 1/4th
> the time.  Even the chunk-sorted scheme is a big win.

I think your worst case may not be as bad as it gets.  Nothing scientific,
but my experience tells me that it's common to get even worse performance
than that.  I've had queries that would take seemingly forever, but then
after a fresh cluster and cache flush, the same query would take almost no
time at all.

I also think that with a multi-mirrored RAID setup and your proposed IO
sorting, the mirroring would be more likely to overcome seek overhead.  With
the current implementation, it seems almost useless to throw more hardware
at the problem.

I think the improvement would be even 'huger' than your numbers show :-)


> So the proposal is this: the offsets stored in the index ought to be
> sorted.  Either A) they can be stored sorted in the first place (sorted
> in VACUUM ANALYZE, or always sorted), or B) the backend can sort each
> list of tuples it reads from the index, or C) the backend can read the
> entire index result and sort that (this would be the best).
>
> >From just paging through the code, it doesn't seem terribly hard.  B
> seems the easiest to implement but is also the least improvement.  Even
> seqscan is better than B.  One improvement to B would be to read much
> more than 8K from the index.  Reading e.g. 256KB would improve things
> dramatically.  A might be easy but would either degrade over time or
> cause slower inserts.  C is the best and hardest to implement (I am
> guessing, because the size of sorted index subset is unbounded).

IMO if you're going to do it, do it right.  That means A is pretty much out,
again, IMO.  It would seem that B (improved) would be the way to go because,
as you say, C would produce unbounded subsets.  I would propose to read very
large sections of the index subset though, more in the order of several MB
(configurable, of course).  With that much space to play with, most queries
would require only one pass at the index and therefore show performance
equal to C.  Larger queries would suffer a bit, but then we don't usually
have such speedy expectations of large expected result sets, and again, with
enough sort space to play with, the performance could approach that of C.

I would think that you could also sort the index on index order (during
vacuum) to improve index scan performance.  This could be a completely
seperate implementation task.  With clean sequential index access *and*
clean sequential heap access, it might just prove to be the single largest
performance boost PG has seen, well, ever.

My .02...

Glen Parker


---(end of broadcast)---
TIP 3: 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: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

This is very much different, because the PHP distribution contains the 
PostgreSQL driver, whereas the other languages do not.  So you would 
have

PHP build depends on PostgreSQL
Ahh I see your point, EXCEPT :) plPHP does not require PostgreSQL 
support to be built into PHP.

Sincerely,
Joshua D. Drake

PostgreSQL build depends on PHP
Not good.

--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
Mammoth PostgreSQL Replicator. Integrated Replication for PostgreSQL
begin:vcard
fn:Joshua D. Drake
n:Drake;Joshua D.
org:Command Prompt, Inc.
adr:;;PO Box 215;Cascade Locks;Oregon;97014;USA
email;internet:[EMAIL PROTECTED]
title:Consultant
tel;work:503-667-4564
tel;fax:503-210-0034
note:Command Prompt, Inc. is the largest and oldest US based commercial PostgreSQL support provider. We  provide the only commercially viable integrated PostgreSQL replication solution, but also custom programming, and support. We authored  the book Practical PostgreSQL, the procedural language plPHP, and adding trigger capability to plPerl.
x-mozilla-html:FALSE
url:http://www.commandprompt.com/
version:2.1
end:vcard


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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Andrew Dunstan
Jan Wieck wrote:
If I remore the whole -rpath thing, and remove the two -L options and 
the -lpq and -lpgport, and add the libpq.a and libpgport.a explicitly 
to the linker call, the psql executable on my Linux box grows from 
421761 to 677682 bytes in size. It is still shared linked against 
libc, libz, libreadline and a bunch of otheres, but all of them are in 
/lib or /usr/lib, so they are standard or system libraries. It does 
not depend on a libpq.so any more, and that is what we want.

One of the reasons I originally suggested an explicit 'relocatable' 
config option was worry about the rpath thing. Maybe I should have 
raised red flags a bit more ;-)

Static linking against libpq would have considerable advantages for the 
Windows port (see recent discussion regarding library search paths on 
W32 on the w32-hackers list).

cheers
andrew
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
  http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Marko Karppinen wrote:
> I guess the key thing is that pgFoundry shouldn't be a community
> distinct from the core. The same community standards need to apply
> on both sides of the fence.

Yes, and the best way to achieve that would be to not have anything to 
pgfoundry and keep everything in the core.


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Joshua D. Drake wrote:
> >One reason against including plPHP in the core would be that it
> > would create a circular build dependency between the packages
> > postgresql and php.  I think we should rather avoid that.
>
> It is no different that the dependency between plPerl and Perl,
> plPython and Python or worse
> plTCL and TCL (which typically isn't installed anymore).

This is very much different, because the PHP distribution contains the 
PostgreSQL driver, whereas the other languages do not.  So you would 
have

PHP build depends on PostgreSQL
PostgreSQL build depends on PHP

Not good.


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Jan Wieck wrote:
> > Static linking of our binaries?  Hmmm.  Makes sense.  We would need a
> > special flag for that.  I can add it to the TODO.
> > 
> > Seems my testing was flawed because I didn't clean out my hard-coded
> > directory properly.  I see now:
> > 
> > $ bin/initdb
> > bin/initdb: can't load library 'libpq.so.3'
> > 
> > and I see in my initdb link line:
> > 
> > -Wl,-rpath,/usr/local/pgsql/lib
> 
> If I remore the whole -rpath thing, and remove the two -L options and 
> the -lpq and -lpgport, and add the libpq.a and libpgport.a explicitly to 
> the linker call, the psql executable on my Linux box grows from 421761 
> to 677682 bytes in size. It is still shared linked against libc, libz, 
> libreadline and a bunch of otheres, but all of them are in /lib or 
> /usr/lib, so they are standard or system libraries. It does not depend 
> on a libpq.so any more, and that is what we want.

We already have --disable-rpath.  Seems we would just need something to
use the *.a files.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Greg Stark

Bruce Momjian <[EMAIL PROTECTED]> writes:

> Greg Stark wrote:
> > Jan Wieck <[EMAIL PROTECTED]> writes:
> > 
> > > You know how much trouble that causes? The existance of LD_LIBRARY_PATH in your
> > > environment disables setuid() for security reasons on some platforms. So one
> > > would have to wrap every PG related program into equally named shell scripts or
> > > aliases to just set it for the program call alone.
> > 
> > Why would any pg tools need to be setuid?
> 
> I assume he is saying that you would have problems having that set all
> the time.  You would need to set it only before running pg binaries,
> which is a pain.

I've never heard of any system where that's the case. Normally the loader
simply ignores the LD_LIBRARY_PATH LD_PRELOAD etc. for setuid/setgid programs.

I feel weird here giving ammunition that LD_LIBRARY_PATH is happy while
simultaneously arguing it shouldn't be used though.

> > > Relocatable installation means static linking of our tools against our own
> > > libs. This does not mean static linking entirely, but at least static linking
> > > against libpq.a.
> > 
> > The normal approach is to use rpath for relocatable installs. 
> > That's what it's there for. 
> > Static linking would work too but it's overkill.
> 
> The point is that we want someone to be able to do an install, and then
> be able to move the pgsql directory.  When we use rpath, the installed
> binary has a hardcoded path for the libraries.

You do? That doesn't generally work. To do that you have to break all the unix
conventions about config files in /etc, platform independent files in /share,
modified data in /var, etc. I know postgres currently violates these
conventions, but most unix programs don't so anyone who has such an
expectation is in for a lot of surprises. 

And long term I expect postgres to head in the direction of complying with
these conventions so distributions can stop kludging around the violations
with symlinks and wrapper scripts. Writing in more assumptions about the
non-standard installation will only create more pain down the road.

Generally I've only heard "relocatable" to refer to RPM packages that could be
installed to a non-standard prefix. For that you need an install script that
knows what magic has to be done. Not a directory that can be moved around
willy-nilly *after* installation.

> > But please don't use rpath for installs to standard paths like
> > /usr/{local,}/lib. That way lies madness.
> 
> We don't.  By default it is /usr/local/pgsql/lib, which isn't standard. 

Well that sucks, but that's for another day :)

As long as it is in a non-standard location then rpath really ought to be set.
Requiring every user of a program to set environment variables before it works
properly is lame. It engenders the kde/qt/oracle headaches of having to adjust
LD_LIBRARY_PATH for every user every time you install or update a package.

Of course rpath is evil, which is precisely why packages ought not be
installed in such non-standard locations...

-- 
greg


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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Bruce Momjian wrote:
Jan Wieck wrote:
Bruce Momjian wrote:
> Jan Wieck wrote:
>> > I think if we go for the plan outlined, we will not need a special
>> > configure flag.  (People might decide to move the install dir long after
>> > they install it.)  By default, everything sits under pgsql as pgsql/bin,
>> > pgsql/lib, etc.  I can't see how making it relative is going to bite us
>> > unless folks move the binaries out of pgsql/bin.  Is that common for
>> > installs that don't specify a special bindir?
>> > 
>> 
>> Does that include a mechanism for -rpath?
>> 
>> Currently, if you have multiple installations of PostgreSQL on a server 
>> and call ones psql or whatever explicitly, it is not loading another 
>> ones libpq, but for sure the one belonging to its version. How does the 
>> plan you're talking about cover this?
> 
> Someone asked about rpath, and I didn't deal with it.  How many
> platforms use rpath?  I am not sure.
> 
> I assume folks are going to have to modify their ld.so.conf to point to
> the proper library, or for non-root, set an environment variable like
> LD_LIBRARY_PATH.

You know how much trouble that causes? The existence of LD_LIBRARY_PATH 
Nope.
in your environment disables setuid() for security reasons on some 
platforms. So one would have to wrap every PG related program into 
equally named shell scripts or aliases to just set it for the program 
call alone.
OK.
Relocatable installation means static linking of our tools against our 
own libs. This does not mean static linking entirely, but at least 
static linking against libpq.a.
Static linking of our binaries?  Hmmm.  Makes sense.  We would need a
special flag for that.  I can add it to the TODO.
Seems my testing was flawed because I didn't clean out my hard-coded
directory properly.  I see now:
$ bin/initdb
bin/initdb: can't load library 'libpq.so.3'
and I see in my initdb link line:
	-Wl,-rpath,/usr/local/pgsql/lib
If I remore the whole -rpath thing, and remove the two -L options and 
the -lpq and -lpgport, and add the libpq.a and libpgport.a explicitly to 
the linker call, the psql executable on my Linux box grows from 421761 
to 677682 bytes in size. It is still shared linked against libc, libz, 
libreadline and a bunch of otheres, but all of them are in /lib or 
/usr/lib, so they are standard or system libraries. It does not depend 
on a libpq.so any more, and that is what we want.

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
 joining column's datatypes do not match


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Bruce Momjian
Joshua D. Drake wrote:
> >Except you miss one key point here ... if Bruce/Tom/Jan have that sort of
> >time, why aren't they doing it now?
> >  
> >
> Well I think you might of missed his point. His point was if he could 
> pick their priorities. I would kind
> of agree with Robert except that there are other dynamics involved... 
> Jan works for Afilias thus does
> what Afilias directs him to do and what that is right now is Slony-I.
> 
> Tom works for RedHat but from what I can tell is basically a rogue agent 

I like the "rogue agent".  I want to be one too.  :-)

> ;). However if Tom stops
> works what he is doing to help with PITR etc... I think a lot of the 
> innner world of PostgreSQL would
> simply stop (if I am wrong please correct me). Bruce --- well what can 
> you say about Bruce ;).
> 
> Seriously though, we all have the  roles that we play. I don't think 
> redirecting specific resources to other
> resources will help beyond slowing up the original resources.

Tom is actually working on doing the fsync change for Win32 and to
remove the unix dependency on sync, so in a way he is on the Win32 train
right now.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Greg Stark wrote:
Jan Wieck <[EMAIL PROTECTED]> writes:
You know how much trouble that causes? The existance of LD_LIBRARY_PATH in your
environment disables setuid() for security reasons on some platforms. So one
would have to wrap every PG related program into equally named shell scripts or
aliases to just set it for the program call alone.
Why would any pg tools need to be setuid?
That's got nothing to do with what I said. Setting LD_LIBRARY_PATH will 
possibly affect everything else that needs setuid.

But it's just wrong to have a binary that doesn't run unless you have
environment variables set up.
Relocatable installation means static linking of our tools against our own
libs. This does not mean static linking entirely, but at least static linking
against libpq.a.
The normal approach is to use rpath for relocatable installs. 
That's what it's there for. 
Static linking would work too but it's overkill.
I don't mean complete static linking. But what's wrong with linking psql 
and other PostgreSQL utilities against libpq.a instead of libpq.so?

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
   (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Table Spaces

2004-05-18 Thread pgsql
> [EMAIL PROTECTED] wrote:
>
>> This makes me worried. That's the way we *used* to do things, but the
>> sleazy IP lawyers are looking for anything with which they can create
>> the
>> impression of impropriety. The open source and free projects are ground
>> zero for this crap.
>>
>> We *really* need to be careful.
>
> I assumed this tool was GPL and we just needed to avoid the GPL issue.

I'm probably just being alarmist, but think about some IP lawyer buying up
the entity that owns the GPL code, and suing end user's of PostgreSQL.

This is similar to what is happening in Linux land with SCO.

The best defense is to say, nope, we didn't copy your stuff, we
implemented it ourselves based on the documentation.

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake




Marc G. Fournier wrote:

  On Tue, 18 May 2004, Robert Treat wrote:

  
  
Just like Bruce has often asked the community how they feel about him
balancing his time between things like speaking engagements and patch
applications, core developers have a limited amount of time they can
spend on any given development effort. If I had to pick (If I got to
pick?), I would rather see Bruce/Tom/Jan working on helping these guys
finish PITR/WIN32/Tablespaces/etc... than working on closing the 7.5
branch.

  
  
Except you miss one key point here ... if Bruce/Tom/Jan have that sort of
time, why aren't they doing it now?
  

Well I think you might of missed his point. His point was if he could
pick their priorities. I would kind
of agree with Robert except that there are other dynamics involved...
Jan works for Afilias thus does
what Afilias directs him to do and what that is right now is Slony-I. 

Tom works for RedHat but from what I can tell is basically a rogue
agent ;). However if Tom stops
works what he is doing to help with PITR etc... I think a lot of the
innner world of PostgreSQL would
simply stop (if I am wrong please correct me). Bruce --- well what can
you say about Bruce ;).

Seriously though, we all have the  roles that we play. I don't think
redirecting specific resources to other
resources will help beyond slowing up the original resources.

Sincerely,

Joshua D. Drake




  

Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

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

   http://www.postgresql.org/docs/faqs/FAQ.html
  



-- 
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL




Re: [HACKERS] bitwise and/or aggregate functions?

2004-05-18 Thread Neil Conway
Alvaro Herrera Munoz wrote:
Those are PDFs AFAIR, not easily greppable
Not greppable, but any half-decent PDF viewer should have a "search" 
feature that should allow much the same thing. Checking the index is 
another way to go, although it is somewhat time-consuming.

I don't have access to an ASCII version (of SQL2003; I believe I've got 
an ASCII copy of SQL92 around here somewhere).

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


Re: [HACKERS] Table Spaces

2004-05-18 Thread Bruce Momjian
[EMAIL PROTECTED] wrote:
> >> Let's just make sure we keep records of the generic sources of where we
> >> find things. I get *really* scared when I see sentences like "I assume
> >> we
> >> can just look at the source and write our own version bypassing any
> >> license." That is categorically a false asumption and will create an
> >> arguably derived product. The last thing we want is Oracle or Microsoft
> >> trying to pull an SCO on Postgresql.
> >
> > Usually we look at the source, find out how they do it, then find the
> > docs for the underlying functions, and use that.
> 
> This makes me worried. That's the way we *used* to do things, but the
> sleazy IP lawyers are looking for anything with which they can create the
> impression of impropriety. The open source and free projects are ground
> zero for this crap.
> 
> We *really* need to be careful.

I assumed this tool was GPL and we just needed to avoid the GPL issue.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Greg Copeland
On Tue, 2004-05-18 at 09:30, Andrew Sullivan wrote:
> On Sun, May 16, 2004 at 02:46:38PM -0400, Jan Wieck wrote:
> 
> > fact that checkpoints, vacuum runs and pg_dumps bog down their machines 
> > to the state where simple queries take several seconds care that much 
> > for any Win32 port? Do you think it is a good sign for those who have 
> 
> Yes.  I am one such person, but from the marketing side of things, I
> understand perfectly well what failing to deliver on Win32 again will
> cost.  It's not important to _me_, but that doesn't mean it's
> unimportant to the project.
> 

My primary fear about delivering Win32 with all of these other great
features is that, IMO, there is a higher level of risk associated with
these advanced features.  At the same time, this will be the first trial
for many Win32 users.  Should there be some problems, in general, or
worse, specific to Win32 users as it relates to these new features, it
could cost some serious Win32/PostgreSQL community points.  A troubled
release which is experienced by Win32 users is going to be a battle cry
for MySQL.

I've been quietly hoping that these great new features would become
available a release before Win32 was completed.  That way, a shake down
would occur before the Win32 audience got a hold of it.  Which, in turn,
should make for a great Win32 experience.

I guess my point is, if these other features don't make it into 7.5 and
Win32 does, that might still be a "good thing" for the potential Win32
market.  Granted, if I was a developer on one of these big features and
it didn't make it, I too would be fairly disappointed.  Yet, once we get
a release out with Win32, it should help give everyone a feel for the
ability to actually support this new audience and platform.  If there is
a large influx of users compounded by problems, I suspect it's again,
going to reflect poorly on the PostgreSQL community.

...just some ramblings

-- 
Greg Copeland, Owner
[EMAIL PROTECTED]
Copeland Computer Consulting
940.206.8004



---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Table Spaces

2004-05-18 Thread pgsql
> [EMAIL PROTECTED] wrote:
>> >> >> >We've looked at it before. Apart from anything else I don't think
>> >> >> >its license is compatible with PostgreSQL's.
>> >> >>
>> >> >> Well, people can still use it. We just can't distribute
>> >> it... We can
>> >> >> always link to it.
>> >> >> But unless there is a GUI tool (actually, unless it shows up in
>> the
>> >> >> *default* GUI tool), expect there to be questions. An
>> >> >
>> >> > I assume we can just look at the source and write our own version
>> >> > bypassing any license.
>> >>
>> >> I wouldn't be so sure about that. If this insane SCO crap has
>> >> taught me anything, the PostgreSQL should have a defined and
>> >> legally vetted process for duplicating functionality. ala'
>> >> phoenix BIOS.
>> >
>> > There is more than enough information om MSDN and other sites to make
>> > this kind of tool without looking at the source. It's generic enough.
>>
>> Let's just make sure we keep records of the generic sources of where we
>> find things. I get *really* scared when I see sentences like "I assume
>> we
>> can just look at the source and write our own version bypassing any
>> license." That is categorically a false asumption and will create an
>> arguably derived product. The last thing we want is Oracle or Microsoft
>> trying to pull an SCO on Postgresql.
>
> Usually we look at the source, find out how they do it, then find the
> docs for the underlying functions, and use that.

This makes me worried. That's the way we *used* to do things, but the
sleazy IP lawyers are looking for anything with which they can create the
impression of impropriety. The open source and free projects are ground
zero for this crap.

We *really* need to be careful.

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] bitwise and/or aggregate functions?

2004-05-18 Thread Alvaro Herrera Munoz
On Tue, May 18, 2004 at 12:39:08PM -0400, Neil Conway wrote:

> A copy that claims to "represent an almost indistinuishable delta on the 
> actual SQL 2003 database standard" is available online here:
> 
> http://www.wiscorp.com/sql/sql_2003_standard.zip

Those are PDFs AFAIR, not easily greppable ... do you have a text version,
or do you always look up things by looking at the TOC?  I'm not thrilled
with the idea of reading all 1500 pages of it ...

-- 
Alvaro Herrera (<[EMAIL PROTECTED]>)
"El día que dejes de cambiar dejarás de vivir"

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Table Spaces

2004-05-18 Thread Bruce Momjian
[EMAIL PROTECTED] wrote:
> >> >> >We've looked at it before. Apart from anything else I don't think
> >> >> >its license is compatible with PostgreSQL's.
> >> >>
> >> >> Well, people can still use it. We just can't distribute
> >> it... We can
> >> >> always link to it.
> >> >> But unless there is a GUI tool (actually, unless it shows up in the
> >> >> *default* GUI tool), expect there to be questions. An
> >> >
> >> > I assume we can just look at the source and write our own version
> >> > bypassing any license.
> >>
> >> I wouldn't be so sure about that. If this insane SCO crap has
> >> taught me anything, the PostgreSQL should have a defined and
> >> legally vetted process for duplicating functionality. ala'
> >> phoenix BIOS.
> >
> > There is more than enough information om MSDN and other sites to make
> > this kind of tool without looking at the source. It's generic enough.
> 
> Let's just make sure we keep records of the generic sources of where we
> find things. I get *really* scared when I see sentences like "I assume we
> can just look at the source and write our own version bypassing any
> license." That is categorically a false asumption and will create an
> arguably derived product. The last thing we want is Oracle or Microsoft
> trying to pull an SCO on Postgresql.

Usually we look at the source, find out how they do it, then find the
docs for the underlying functions, and use that.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Why new features only in magior releases ?

2004-05-18 Thread Neil Conway
Gaetano Mendola wrote:
I well understand the reason to wait a 7.5 in order to delivery
BIG changes that are requiring a initdb, but I don't understand
why little enhancement can not be delivered in a 7.4.3 ( may be
with a short period with a 7.4.3beta ) like the "vacuum delayed".
I don't think this is a good idea.
It would risk destabilizing a known-to-be-stable release series. It is 
very important that we keep 7.4.x a platform that people feel 
comfortable deploying in a production environment.

It would also require additional development resources to back port the 
changes, and do the (fairly extensive) testing required to verify that 
they haven't caused any regressions (see the point about stability 
above). We have a finite amount of development resources, and I think 
the past consensus is that they are best spent developing for the next 
major release.

I think that delivering some improvements in the 7.4.3 will permit
to delay a month the 7.5 without the pain to wait too long for some
enhancements.
Even without new features in 7.4, I don't really see the danger of a 
slow-paced 7.5 release: production environments aren't eager to upgrade 
their DBMS every six months, and the pain of an initdb applies no matter 
how frequently we make major releases.

-Neil
---(end of broadcast)---
TIP 6: Have you searched our list archives?
  http://archives.postgresql.org


Re: [HACKERS] bitwise and/or aggregate functions?

2004-05-18 Thread Neil Conway
[ Sorry for the latency of my response, Chris -- this got buried in my 
inbox... ]

Fabien COELHO wrote:
I don't know where these standards are available online... It seems they
are not available:-(
A copy that claims to "represent an almost indistinuishable delta on the 
actual SQL 2003 database standard" is available online here:

http://www.wiscorp.com/sql/sql_2003_standard.zip
Neil - can you check your SQL2003 copy to see if it mentions standard
aggregates on bit types?
I couldn't see any mention of any aggregates specific to the bit types, 
although my ability to accurately divine information from the standard 
has been less than perfect in the past. There are the EVERY() and ANY() 
aggregates that Fabien mentioned, though.

-Neil
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Table Spaces

2004-05-18 Thread pgsql
>> >> >We've looked at it before. Apart from anything else I don't think
>> >> >its license is compatible with PostgreSQL's.
>> >>
>> >> Well, people can still use it. We just can't distribute
>> it... We can
>> >> always link to it.
>> >> But unless there is a GUI tool (actually, unless it shows up in the
>> >> *default* GUI tool), expect there to be questions. An
>> >
>> > I assume we can just look at the source and write our own version
>> > bypassing any license.
>>
>> I wouldn't be so sure about that. If this insane SCO crap has
>> taught me anything, the PostgreSQL should have a defined and
>> legally vetted process for duplicating functionality. ala'
>> phoenix BIOS.
>
> There is more than enough information om MSDN and other sites to make
> this kind of tool without looking at the source. It's generic enough.

Let's just make sure we keep records of the generic sources of where we
find things. I get *really* scared when I see sentences like "I assume we
can just look at the source and write our own version bypassing any
license." That is categorically a false asumption and will create an
arguably derived product. The last thing we want is Oracle or Microsoft
trying to pull an SCO on Postgresql.

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Bruce Momjian
Marc G. Fournier wrote:
> On Tue, 18 May 2004, Robert Treat wrote:
> 
> > Just like Bruce has often asked the community how they feel about him
> > balancing his time between things like speaking engagements and patch
> > applications, core developers have a limited amount of time they can
> > spend on any given development effort. If I had to pick (If I got to
> > pick?), I would rather see Bruce/Tom/Jan working on helping these guys
> > finish PITR/WIN32/Tablespaces/etc... than working on closing the 7.5
> > branch.
> 
> Except you miss one key point here ... if Bruce/Tom/Jan have that sort of
> time, why aren't they doing it now?

I can answer that one.  We only have limited time to help a limited
number of folks.  I have been Win32-focussed, so haven't had time to
help anyone else, and even applying patches has been delayed and folks
are complaining.

I have talked to Jan about helping me get PITR done.  It is very close
and Jan said he would work on a patch to help.

I think the poster's point was that once we enter feature freeze, we
have even less time to help folks, hence no progress in PITR until long
after 7.4.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Greg Stark wrote:
> Jan Wieck <[EMAIL PROTECTED]> writes:
> 
> > You know how much trouble that causes? The existance of LD_LIBRARY_PATH in your
> > environment disables setuid() for security reasons on some platforms. So one
> > would have to wrap every PG related program into equally named shell scripts or
> > aliases to just set it for the program call alone.
> 
> Why would any pg tools need to be setuid?

I assume he is saying that you would have problems having that set all
the time.  You would need to set it only before running pg binaries,
which is a pain.

> > Relocatable installation means static linking of our tools against our own
> > libs. This does not mean static linking entirely, but at least static linking
> > against libpq.a.
> 
> The normal approach is to use rpath for relocatable installs. 
> That's what it's there for. 
> Static linking would work too but it's overkill.

The point is that we want someone to be able to do an install, and then
be able to move the pgsql directory.  When we use rpath, the installed
binary has a hardcoded path for the libraries.

> But please don't use rpath for installs to standard paths like
> /usr/{local,}/lib. That way lies madness.

We don't.  By default it is /usr/local/pgsql/lib, which isn't standard. 

I see static linking as perhaps the only clean solution for relocatable
installs that require no user manipulation.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Bruce Momjian
Jan Wieck wrote:
> Bruce Momjian wrote:
> > Jan Wieck wrote:
> >> > I think if we go for the plan outlined, we will not need a special
> >> > configure flag.  (People might decide to move the install dir long after
> >> > they install it.)  By default, everything sits under pgsql as pgsql/bin,
> >> > pgsql/lib, etc.  I can't see how making it relative is going to bite us
> >> > unless folks move the binaries out of pgsql/bin.  Is that common for
> >> > installs that don't specify a special bindir?
> >> > 
> >> 
> >> Does that include a mechanism for -rpath?
> >> 
> >> Currently, if you have multiple installations of PostgreSQL on a server 
> >> and call ones psql or whatever explicitly, it is not loading another 
> >> ones libpq, but for sure the one belonging to its version. How does the 
> >> plan you're talking about cover this?
> > 
> > Someone asked about rpath, and I didn't deal with it.  How many
> > platforms use rpath?  I am not sure.
> > 
> > I assume folks are going to have to modify their ld.so.conf to point to
> > the proper library, or for non-root, set an environment variable like
> > LD_LIBRARY_PATH.
> 
> You know how much trouble that causes? The existence of LD_LIBRARY_PATH 

Nope.

> in your environment disables setuid() for security reasons on some 
> platforms. So one would have to wrap every PG related program into 
> equally named shell scripts or aliases to just set it for the program 
> call alone.

OK.

> Relocatable installation means static linking of our tools against our 
> own libs. This does not mean static linking entirely, but at least 
> static linking against libpq.a.

Static linking of our binaries?  Hmmm.  Makes sense.  We would need a
special flag for that.  I can add it to the TODO.

Seems my testing was flawed because I didn't clean out my hard-coded
directory properly.  I see now:

$ bin/initdb
bin/initdb: can't load library 'libpq.so.3'

and I see in my initdb link line:

-Wl,-rpath,/usr/local/pgsql/lib

So, right now, you can do relocatable installs, but you have to make
changes in ld.so.conf or your environment to allow it to find the shared
libraries.  In the future, we can add a configure flag so everything is
linked statically.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 359-1001
  +  If your life is a hard drive, |  13 Roberts Road
  +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073

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


[HACKERS] Why new features only in magior releases ?

2004-05-18 Thread Gaetano Mendola
Hi all,
may be this was already discussed, I'm quite new to postgres
( only 3 years ), I try however.
I seen the debate around the time freeze for 7.5, who say to
wait in order to have more "chance" to have PITR, Win32, 2PC...
and who say that wait a month more will not change nothing.
I well understand the reason to wait a 7.5 in order to delivery
BIG changes that are requiring a initdb, but I don't understand
why little enhancement can not be delivered in a 7.4.3 ( may be
with a short period with a 7.4.3beta ) like the "vacuum delayed".
I think that delivering some improvements in the 7.4.3 will permit
to delay a month the 7.5 without the pain to wait too long for some
enhancements.

Regards
Gaetano Mendola
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
  http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Andrew Sullivan
On Sun, May 16, 2004 at 02:46:38PM -0400, Jan Wieck wrote:

> fact that checkpoints, vacuum runs and pg_dumps bog down their machines 
> to the state where simple queries take several seconds care that much 
> for any Win32 port? Do you think it is a good sign for those who have 

Yes.  I am one such person, but from the marketing side of things, I
understand perfectly well what failing to deliver on Win32 again will
cost.  It's not important to _me_, but that doesn't mean it's
unimportant to the project.

A

-- 
Andrew Sullivan  | [EMAIL PROTECTED]

---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] Table Spaces

2004-05-18 Thread Magnus Hagander
> >> >We've looked at it before. Apart from anything else I don't think 
> >> >its license is compatible with PostgreSQL's.
> >>
> >> Well, people can still use it. We just can't distribute 
> it... We can 
> >> always link to it.
> >> But unless there is a GUI tool (actually, unless it shows up in the
> >> *default* GUI tool), expect there to be questions. An
> >
> > I assume we can just look at the source and write our own version 
> > bypassing any license.
> 
> I wouldn't be so sure about that. If this insane SCO crap has 
> taught me anything, the PostgreSQL should have a defined and 
> legally vetted process for duplicating functionality. ala' 
> phoenix BIOS.

There is more than enough information om MSDN and other sites to make
this kind of tool without looking at the source. It's generic enough.

//Magnus


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Greg Stark
Jan Wieck <[EMAIL PROTECTED]> writes:

> You know how much trouble that causes? The existance of LD_LIBRARY_PATH in your
> environment disables setuid() for security reasons on some platforms. So one
> would have to wrap every PG related program into equally named shell scripts or
> aliases to just set it for the program call alone.

Why would any pg tools need to be setuid?

But it's just wrong to have a binary that doesn't run unless you have
environment variables set up.

> Relocatable installation means static linking of our tools against our own
> libs. This does not mean static linking entirely, but at least static linking
> against libpq.a.

The normal approach is to use rpath for relocatable installs. 
That's what it's there for. 
Static linking would work too but it's overkill.

But please don't use rpath for installs to standard paths like
/usr/{local,}/lib. That way lies madness.


-- 
greg


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Table Spaces

2004-05-18 Thread pgsql
> Magnus Hagander wrote:
>> >>If you run NTFS, it's still possible to use arbitrary links.
>> >In the Windows
>> >>world, they are called junctions. Microsoft does not provide
>> >a junction tool
>> >>for some reason (perhaps because it's limited to NTFS). A
>> >good tool, free
>> >>and with source, can be found here
>> >>http://www.sysinternals.com/ntw2k/source/misc.shtml#junction
>> >I use this tool
>> >>myself. Works like a charm.
>> >>
>> >>
>> >>
>> >
>> >We've looked at it before. Apart from anything else I don't think its
>> >license is compatible with PostgreSQL's.
>>
>> Well, people can still use it. We just can't distribute it... We can
>> always link to it.
>> But unless there is a GUI tool (actually, unless it shows up in the
>> *default* GUI tool), expect there to be questions. An
>
> I assume we can just look at the source and write our own version
> bypassing any license.

I wouldn't be so sure about that. If this insane SCO crap has taught me
anything, the PostgreSQL should have a defined and legally vetted process
for duplicating functionality. ala' phoenix BIOS.

What would be good is a "contaminated" developer specifying functionality,
and detailing the various APIs needed (documenting the undocumented ones
as nessisary) while someone else writes the code. It is the *only* legal
unemcumbered methodology that will work.



---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Marc G. Fournier
On Tue, 18 May 2004, Robert Treat wrote:

> Just like Bruce has often asked the community how they feel about him
> balancing his time between things like speaking engagements and patch
> applications, core developers have a limited amount of time they can
> spend on any given development effort. If I had to pick (If I got to
> pick?), I would rather see Bruce/Tom/Jan working on helping these guys
> finish PITR/WIN32/Tablespaces/etc... than working on closing the 7.5
> branch.

Except you miss one key point here ... if Bruce/Tom/Jan have that sort of
time, why aren't they doing it now?


Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Robert Treat
On Mon, 2004-05-17 at 19:39, Marc G. Fournier wrote:
> On Mon, 17 May 2004, Mike Mascari wrote:
> > Greg Stark wrote:
> > > Simon Riggs <[EMAIL PROTECTED]> writes:
> > >
> > >>I can't complete by 1 June. Think worse of me if you choose.
> > >
> > ...
> > > So in my perfect world I picture 7.5 freezing June 1 and releasing in July or
> > > so, giving a nice reliable simple upgrade for people who just want a safe 7.x
> > > series to upgrade to even after 8.0 comes out. PITR, nested transactions going
> > > into the CVS tree sometime in June or July and being frozen as 8.0 towards the
> > > end of the year.
> >
> > A quick google of "7.4 Win32 release" will reveal that the above was
> > precisely what was said about 7.4: it would be released to not hold
> > up important features like the IN optimization and a quick 7.5 would
> > have Win32 and PITR. It's almost as if a cron job reposts this
> > thread every 6 - 12 months. For those of us that are desirous of
> > PITR, it's a 6 month reposting that is becoming painful to read...
> 
> k, let's think this through ... 7.4 was released, what, 6 months ago?  And
> 6 months later, PITR still isn't ready?  Is there some logic here that if
> 7.4 wasn't released, PITR would have been done any sooner?
> 

Potentially yes.  One thing all of the developers have said they want is
more feedback from some of the more expert developers, but if we go into
feature freeze then the focus of folks like Tom and Bruce will be on
completing release, not on helping out with these new features.  We had
the original patch for PITR before 7.4 went into beta IIRC, but it then
had to sit through a lengthy beta process before Tom could do some final
code review and get things committed. 

Just like Bruce has often asked the community how they feel about him
balancing his time between things like speaking engagements and patch
applications, core developers have a limited amount of time they can
spend on any given development effort. If I had to pick (If I got to
pick?), I would rather see Bruce/Tom/Jan working on helping these guys
finish PITR/WIN32/Tablespaces/etc... than working on closing the 7.5
branch. 


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


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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake




Peter Eisentraut wrote:

  Joshua D. Drake wrote:
  
  
Uhhh?? Are you ripping out all core pls then? plPerlNG is supposed to
replace plPerl, I was talking with Bruce and he seemed to think that
(as long as the code was good enough) that we could incorporate
plPHP???

  
  
One reason against including plPHP in the core would be that it would 
create a circular build dependency between the packages postgresql and 
php.  I think we should rather avoid that.
  

It is no different that the dependency between plPerl and Perl,
plPython and Python or worse
plTCL and TCL (which typically isn't installed anymore).

Sincerely,

Joshua D. Drake

-- 
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL




Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Joshua D. Drake

a release, etc ...
I'd almost say that time would be better spent on coming up with an
effective upgrade method so that upgrading to new releases is easier ...
Please note that I'm not against the backporting, but do understand the
arguments against it in terms of time and manpower ...
 

I believe they are valid arguments too and if we were to do it we would 
definately need to be
selective about "which" features get back ported but forward movement 
can be in the present
tree as well.

Joshua D. Drake


Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664
 


--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - [EMAIL PROTECTED] - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL
---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
 joining column's datatypes do not match


Re: [HACKERS] question about information_schema

2004-05-18 Thread Kris Jurka


On Tue, 18 May 2004, Dave Cramer wrote:

> If I do create type testint8 as (i int8) and then select typbasetype
> from pg_type where typname='testint8' the value is 0?

You've created a complex type here, not a domain.  See typtype and 
typrelid for this case.

create domain testint8 as int8;  will do what you were expecting.

Kris Jurka

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


[HACKERS] XactIsoLevel handling

2004-05-18 Thread Heikki Linnakangas
In tcop/utility.c, the isolation level is set with a call like:

SetPGVariable("transaction_isolation", makeList(item->arg), false)

when a BEGIN SERIALIZABLE etc. call is made.

Why is the isLocal-parameter false? Couldn't it be true as well? It works
as it is, since the XactIsoLevel variable is reset to default value in
StartTransaction anyway, but it looks silly to me to define the variable
as a session variable when in fact it acts like a local one.

I bumped into this because my current 2PC doesn't allow you to set session
variables. I modified the above line, and BEGIN SERIALIZABLE seems to
work fine now with 2PC.

- Heikki


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Relocatable installs

2004-05-18 Thread Jan Wieck
Bruce Momjian wrote:
Jan Wieck wrote:
> I think if we go for the plan outlined, we will not need a special
> configure flag.  (People might decide to move the install dir long after
> they install it.)  By default, everything sits under pgsql as pgsql/bin,
> pgsql/lib, etc.  I can't see how making it relative is going to bite us
> unless folks move the binaries out of pgsql/bin.  Is that common for
> installs that don't specify a special bindir?
> 

Does that include a mechanism for -rpath?
Currently, if you have multiple installations of PostgreSQL on a server 
and call ones psql or whatever explicitly, it is not loading another 
ones libpq, but for sure the one belonging to its version. How does the 
plan you're talking about cover this?
Someone asked about rpath, and I didn't deal with it.  How many
platforms use rpath?  I am not sure.
I assume folks are going to have to modify their ld.so.conf to point to
the proper library, or for non-root, set an environment variable like
LD_LIBRARY_PATH.
You know how much trouble that causes? The existance of LD_LIBRARY_PATH 
in your environment disables setuid() for security reasons on some 
platforms. So one would have to wrap every PG related program into 
equally named shell scripts or aliases to just set it for the program 
call alone.

Relocatable installation means static linking of our tools against our 
own libs. This does not mean static linking entirely, but at least 
static linking against libpq.a.

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
  http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] add server include files to default installation?

2004-05-18 Thread Fabien COELHO

Dear Jan,

> Depending on the OS you also need funny things like mkldexport shell
> scripts and the like.

Possibly, yes... I don't know. I really need a list, then it is pretty
easy to update all makefiles.

> I thought we had a consensus of providing a template build environment
> for external modules.

Good! Where is it? I mean the template, not the consensus.

> This half-baked attempt is not doing it. The makefiles make assumptions
> about their location that aren't true any more when they're installed
> somewhere else.

I noticed and took care of this point. In fact, it really depends on
top_builddir, so by setting this macro appropriately it should work.
Something like:

top_builddir := $(shell pg_config --insbuilddir)
include $(top_builddir)/src/Makefile.global

This mean that relevant files must be installed in subdirectories that are
named as the postgresql source tree... I agree that it is not beautiful,
but it seems to me that it is the simplest way to have contrib-like
makefiles outside of the main tree, and to be able to reuse the whole
infrastructure.

Obviously, any better idea is welcome, esp. if I do not have to do it
myself;-)

The current status is that *nothing* is provided, so I'm trying to have
something better than nothing with a reasonnable effort.

-- 
Fabien Coelho - [EMAIL PROTECTED]

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


Re: [HACKERS] add server include files to default installation?

2004-05-18 Thread Jan Wieck
Marc G. Fournier wrote:
On Sat, 15 May 2004, Bruce Momjian wrote:
Fabien COELHO wrote:
>
> Dear hackers,
>
> I wish to submit a small patch so that server includes and
> all necessary configuration files could be installed *by default*.
>
> The current status is that server includes files are only installed
> if explicitly required (make install-all-headers).
>
> The idea is that external extension modules (new types or whatever)
> could then *rely* on the fact that these files are available, which
> would make developping and installing these extensions quite easier.
>
> As an illustration, the apache software installs by default all
> necessary includes and even a special tailored command (apxs) so as
> to help extension modules to be compiled, installed and even configured
> easilly.
>
> Is there any opposition to this move? Silence will mean consent;-)
Agreed.  I would also like to see Makefile.global installed.
pg_config.h has C-level configs, and Makefile.global has the
Makefile-level configs.
Don't agree with Makefile.global, cause then you have to also install the
physical template files for the various operating system too, no?  What
else does Makefile.global rely on?
Depending on the OS you also need funny things like mkldexport shell 
scripts and the like. I thought we had a consensus of providing a 
template build environment for external modules. This half-baked attempt 
is not doing it. The makefiles make assumptions about their location 
that aren't true any more when they're installed somewhere else.

Jan
--
#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
  http://www.postgresql.org/docs/faqs/FAQ.html


[HACKERS] question about information_schema

2004-05-18 Thread Dave Cramer
I'm trying to implement getUDT for the jdbc driver.

It requires the basetype of a type.

If I do create type testint8 as (i int8) and then select typbasetype
from pg_type where typname='testint8' the value is 0?

While I'm asking how can I find all of the user defined types, assuming
that the user is the owner of the cluster. I see that pg_dump can do
this ?

-- 
Dave Cramer
519 939 0336
ICQ # 14675561


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

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Magnus Hagander
> > That is the plan ... unless someone knows a reason why they 
> can't be 
> > built independently of the core?
> 
> How about this one:  Everything we have moved from the core 
> to gborg so far has been a miserable failure.  The code is no 
> longer maintained, or maintained by three different competing 
> groups, the documentation has disappeared, the portability is 
> no longer taken care of, and only the bravest souls even dare 
> look at the stuff.  I think before you move anything more, 
> you need to have a strong, convincing community on the 
> receiving side rather than just kicking things out and hoping 
> someone will pick it up.  Just because it can be built 
> separately doesn't mean everything needs to be.

Another thing is how the end user gets to the files. As an end user,
you'd generally not care which CVS server the code is on. What you *do*
care about is that it's included in the main RPM/DEB or whatever *and*
the main source tarball (if I download "complete server", I certainly
want a complete server. Including for example PLs, which is one of
postgresqls strengths..). Same goes for the docs, of course.

If it's in main CVS you get the benefit of having it included in the
normal "release management". Sure, it adds a burden on the release
management work, but that job has to be done somewhere. And id you just
pull in "whatever version happens to be latest" and put this in the
release version, you are probably in for some nasty surprises.


//Magnus


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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Heikki Linnakangas
On Mon, 17 May 2004, Alvaro Herrera Munoz wrote:

> On Mon, May 17, 2004 at 04:55:50PM +0200, Zeugswetter Andreas SB SD wrote:
> > Can we try to do the 2PC patch now instead of waiting for subtransactions ?
>
> The last post from Heikki I read said that he discovered some serious
> problems with his implementation and he wanted do rethink about them.  I
> don't think he will be able to make it, mainly because if my patch gets
> accepted it will be too close to feature freeze (if it is June 1st).

That's still the status with my 2PC patch. It works, as long as you don't
try to touch system catalogs, use notifications, set session GUC
variables or do any other fancy stuff. In those cases you get a "not
implemented" error when you try to prepare the transaction, and the
it aborts.

I think I figured out the MVCC snapshot issues, but I haven't really
tested it so there could be some nasty race conditions I missed.

I won't make it to June 1., I'll be on vacation on May 20-27, and I'm
quite busy at work at the moment.

I'd like to get the patch committed as soon as the 7.6 release cycle
begins, with whatever limitations it has at that time.

- Heikki


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Richard Huxton
Marko Karppinen wrote:
I guess the key thing is that pgFoundry shouldn't be a community
distinct from the core. The same community standards need to apply
on both sides of the fence.
[snip]
Thanks Marko, you just wrote exactly what I was concerned about with 
"features" rather than "applications" being in pgfoundry.

The only thing I'd add is that we need to separate development from 
delivery. The important thing as an end-user is not where the CVS is 
kept or how things are kept in-sync but:
 1. Can I get hold of it easily?
 2. Is it mentioned in the manual?
 3. Do I know what versions of PG/other it needs?

pl/PHP etc might not need to be in the core CVS or tar.gz, but probably 
do need to be in a pl/ or plugins/ directory on the main site. If it 
takes a week or two (after release) for the various plugins to appear, 
that's fine - no-one upgrades a production system on day 1 anyway.

Perhaps this is the best way to look at it - when the .rpm's/.deb's are 
put together what does the community want in them?

--
  Richard Huxton
  Archonet Ltd
---(end of broadcast)---
TIP 3: 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: [HACKERS] [PATCHES] Current-stream read for psql's \copy

2004-05-18 Thread Richard Huxton
Bruce Momjian wrote:
Also, I came upon this gem:
$ echo '\\copy test to stdout' | psql -o /tmp/z test
444
444
444
444
444
Seems 'copy to stdout' also has this split idea of sending \copy output
to a different place from other output.
I guess my big question now is why someone would use \copy stdin/stdout
for reading input from the command stream when they can use COPY?
I think the idea was that you could have a program that does something 
like (Perl):

my $fh = open('| psql -f commands.sql');
print $fh "1\ta\n";
Where commands.sql contains the \copy.
I'm not saying that was the original intention, but someone pointed out 
you could do things that way, and I can see it might (rarely) be useful.

--
  Richard Huxton
  Archonet Ltd
---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
 joining column's datatypes do not match


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Marko Karppinen
Peter Eisentraut wrote:
How about this one:  Everything we have moved from the core to gborg so
far has been a miserable failure.  The code is no longer maintained, or
maintained by three different competing groups, the documentation has
disappeared, the portability is no longer taken care of, and only the
bravest souls even dare look at the stuff.  I think before you move
anything more, you need to have a strong, convincing community on the
receiving side rather than just kicking things out and hoping someone
will pick it up.  Just because it can be built separately doesn't mean
everything needs to be.
I guess the key thing is that pgFoundry shouldn't be a community
distinct from the core. The same community standards need to apply
on both sides of the fence.
What has happened here echoes the experiences of the PHP project
very closely. PHP, too, thought that the core was getting too big
for efficient release coordination, and started moving extensions
to PECL, an extension library bolted on the side of PEAR.
Trouble is, nobody wants to be forced into the ghetto. The only way
to make pgFoundry work is to minimize the downside of living there.
Consider these:
- Don't move just "inessential" projects. Move absolutely
  essential projects to push end-user and developer adoption.
- Have a tier of "official" projects that are actively endorsed
  by and within the core distribution. Don't be afraid to pick a
  favorite solution within a class (for example in replication).
- Discourage other developers from ignoring pgFoundry projects.
  For the official tier, this could mean sending commit messages to
  pgsql-committers, patches to pgsql-patches, and having the
  discussions here. Resist the urge to start project-specific
  mailing lists unless absolutely essential. Have everyone know
  that the pgFoundry/core distinction only exists for release
  engineering purposes, and that it can't be allowed to split
  the community.
- Invest in integrating pgFoundry tools into the core distribution.
  For example, official projects should have makefiles included in
  the core that'd download and compile the latest compatible version.
  Components as important as JDBC and some of the procedural
  languages could be distributed this way.
mk
---(end of broadcast)---
TIP 3: 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: [HACKERS] Table Spaces

2004-05-18 Thread Zeugswetter Andreas SB SD

> >If you run NTFS, it's still possible to use arbitrary links. In the Windows
> >world, they are called junctions. Microsoft does not provide a junction tool
> >for some reason (perhaps because it's limited to NTFS). A good tool, free
> >and with source, can be found here
> >http://www.sysinternals.com/ntw2k/source/misc.shtml#junction 
> I use this tool myself. Works like a charm.
> 
> We've looked at it before. Apart from anything else I don't think its 
> license is compatible with PostgreSQL's.

The tool was suggested for use as is, not for inclusion in pg source.
It can be used to e.g. symlink xlog manually.

If you want something in pg source, the relevant lines (about 20)
can be copied from MSDN.

Andreas

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Tatsuo Ishii
> How about this one:  Everything we have moved from the core to gborg so 
> far has been a miserable failure.  The code is no longer maintained, or 
> maintained by three different competing groups, the documentation has 
> disappeared, the portability is no longer taken care of, and only the 
> bravest souls even dare look at the stuff.  I think before you move 
> anything more, you need to have a strong, convincing community on the 
> receiving side rather than just kicking things out and hoping someone 
> will pick it up.  Just because it can be built separately doesn't mean 
> everything needs to be.

Above looks quite true for me too.
--
Tatsuo Ishii

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


Re: [HACKERS] Call for 7.5 feature completion

2004-05-18 Thread Peter Eisentraut
Joshua D. Drake wrote:
> Uhhh?? Are you ripping out all core pls then? plPerlNG is supposed to
> replace plPerl, I was talking with Bruce and he seemed to think that
> (as long as the code was good enough) that we could incorporate
> plPHP???

One reason against including plPHP in the core would be that it would 
create a circular build dependency between the packages postgresql and 
php.  I think we should rather avoid that.


---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org