Re: [HACKERS] I am done

2002-09-05 Thread Gavin Sherry

On Wed, 4 Sep 2002, Tom Lane wrote:

 Gavin Sherry [EMAIL PROTECTED] writes:
  Does anyone else have an opinion on this? If not, I will implement it per
  Bruce's commentary.
 
  On Mon, 2 Sep 2002, Bruce Momjian wrote:
  I think the second, passing an arg to say whether it is server or
  client, will do the trick, though now you need an error one too.  I
  guess you have to use #define and set it, or pass a string down with the
  GUC variable and test that with strcmp.
 
 I think you're going to end up un-merging the routines.  There is no way
 to pass an extra parameter to the set/check routines (at least not

There is a wrapper around the generic function:

const char *
assign_min_error_statement(const char *newval, bool doit, bool
interactive)
{
return(assign_msglvl(log_min_error_statement,newval,doit,interactive));
}

I would simply define some macros:

#define MSGLVL_MIN_ERR_STMT (10)
#define MSGLVL_MIN_CLI_MSGS (11)
#define MSGLVL_MIN_SVR_MSGS (12)

And assign_msglvl(), having been passed the variable 'caller', determined
by the calling function, will do something like this:

/* everyone has likes debug */
if (strcasecmp(newval, debug) == 0 
   caller  (MSGLVL_MIN_ERR_STMT | MSGLVL_MIN_CLI_MSGS | MSGLVL_MIN_SVR_MSGS))
  { if (doit) (*var) = DEBUG1; }

/* ... */

else if (strcasecmp(newval, fatal) == 0 
   caller  (MSGLVL_MIN_ERR_STMT | MSGLVL_MIN_SVR_MSGS))
 { if (doit) (*var) = FATAL; }
else if (strcasecmp(newval, off) == 0 
   caller  MSGLVL_MIN_ERR_STMT)
 { if (doit) (*var) = MIN_ERR_STMT_OFF; }

Personally, I've never liked coding like this. The reason I merged the
base code for each function was so that the GUC code didn't get uglier as
more minimum-level-of-logging parameters were added. But with the code
above, the bitwise operations and appearance of the
assign_msglvl() routine will suffer the same fate, I'm afraid.

Since the flawed code is now in beta, it will need to be fixed. Do people
like the above solution or should I just revert to having a seperate
function for each GUC variable affected?

Gavin


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



[HACKERS] Please rename split(text,text,int) to splitpart

2002-09-05 Thread Hannu Krosing


It seems that my last mail on this did not get through to the list ;(



Please consider renaming the new builtin function 

  split(text,text,int)

to something else, perhaps

  split_part(text,text,int)

(like date_part)

The reason for this request is that 3 most popular scripting languages
(perl, python, php) all have also a function with similar signature, but
returning an array instead of single element and the (optional) third
argument is limit (maximum number of splits to perform)

I think that it would be good to have similar function in (some future
release of) postgres, but if we now let in a function with same name and
arguments but returning a single string instead an array of them, then
we will need to invent a new and not so easy to recognise name for the
real split function.


Hannu


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



[HACKERS] contrib/tsearch

2002-09-05 Thread Christopher Kings-Lynne

Hi Oleg/Teodor,

I'm sorry to keep posting bugs without patches, but I'm just hoping you guys
know the answer faster than I...I know you're busy.

What does tsearch have against the word 'herring' (as in the fish).  Why is
it considered a stopword?

Attached is example queries...

Chris


usa=# select food_id, brand,description,ftiidx from food_foods where description ilike 
'%herring%';
 food_id | brand  | description  | 
ftiidx
-++--+-
   66245 | Kosher/Deli Foods  | Herring, Smoked  | 
'food' 'smoke' 'kosher/deli'
   66246 | Kosher/Deli Foods  | Herring, in Sour Cream   | 
'food' 'sour' 'cream' 'kosher/deli'
4590 | - Generic -| Fish oil, herring| 
'oil' 'fish' 'gener'
   70737 | - Average All Brands - | Finfish, herring, Pacific, raw   | 
'raw' 'brand' 'pacif' 'averag' 'finfish'
   70738 | - Average All Brands - | Finfish, herring, Pacific, cooked, dry heat  | 
'dri' 'cook' 'heat' 'brand' 'pacif' 'averag' 'finfish'
   70739 | - Average All Brands - | Finfish, herring, Atlantic, raw  | 
'raw' 'brand' 'atlant' 'averag' 'finfish'
   70740 | - Average All Brands - | Finfish, herring, Atlantic, pickled  | 
'brand' 'pickl' 'atlant' 'averag' 'finfish'
   70741 | - Average All Brands - | Finfish, herring, Atlantic, kippered | 
'brand' 'atlant' 'averag' 'kipper' 'finfish'
   70742 | - Average All Brands - | Finfish, herring, Atlantic, cooked, dry heat | 
'dri' 'cook' 'heat' 'brand' 'atlant' 'averag' 'finfish'
   66026 | German | Herring, Pickled: Rollmops   | 
'pickl' 'german' 'rollmop'
   66027 | German | Herring, Pickled: w/Sour Cream   | 
'cream' 'pickl' 'german' 'w/sour'
(11 rows)

usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx ## 
'herring';
NOTICE:  Query contains only stopword(s) or doesn't contain lexem(s), ignored
 food_id | brand | description | ftiidx
-+---+-+
(0 rows)



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

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



Re: [HACKERS] contrib/tsearch

2002-09-05 Thread Christopher Kings-Lynne

Hmmm...thinking about it, maybe 'herring' is being reduced to 'her' after
the stemming process and hence is thought to be a stopword?  This is a bug,
but how should it be fixed?

Although, tests don't support that:

usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
## 'himring';
 food_id | brand | description | ftiidx
-+---+-+
(0 rows)
usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
## 'hisring';
 food_id | brand | description | ftiidx
-+---+-+
(0 rows)

usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
## 'hising';
 food_id | brand | description | ftiidx
-+---+-+
(0 rows)

usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
## 'himing';
 food_id | brand | description | ftiidx
-+---+-+
(0 rows)

All work...?

Chris

 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Christopher
 Kings-Lynne
 Sent: Thursday, 5 September 2002 2:36 PM
 To: Hackers
 Subject: [HACKERS] contrib/tsearch


 Hi Oleg/Teodor,

 I'm sorry to keep posting bugs without patches, but I'm just
 hoping you guys
 know the answer faster than I...I know you're busy.

 What does tsearch have against the word 'herring' (as in the
 fish).  Why is
 it considered a stopword?

 Attached is example queries...

 Chris



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



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 03:57, Curt Sampson wrote:
 On Tue, 3 Sep 2002, Bruce Momjian wrote:
 
  Yep, this is where we are stuck;  having an index span multiple tables
  in some way.
 
 Or implementing it by keeping all data in the table in which it
 was declared. (I.e., supertable holds all rows; subtable holds
 only the primary key and those columns of the row that are not
 in the supertable.)

How would you do it for _multiple_ inheritance ?

When implementing it on top of standard relational model you have more
or less two ways to slice the problem 

1) the way you describe (parent holding common columns + child tables
for added child columns), which makes it easy to define constraints but
hard to do inserts/updates/deletes on inherited tables

2) the postgresql way (a new table for each child), which makes it hard
to define constraints but easy to do inserts/updates/deletes.

 From looking at the various discussions of this in books, and what
 it appears to me that the SQL standard says, it seems that their
 overall vision of table inheritance is to be consistent with the
 implementation that I described above.

Yes. The SQL99 standard specifies only _single_ inheritance for tables +
LIKE in column definition part, making the model somewhat similar to
Java's (single inheritance + interfaces).

This way it could probably be done even more effectively than you
describe by:

1) keeping _all_ (not only the inherited columns)  the data for
inheritance hierarchy in the same physical file.

2) having partial indexes (involving tableoid=thiskindoftable) for
possible speeding up of SELECT .. ONLY queries.

3) no changes to (unique) indexes - they still reference simple TID's
without additional table part.

4) update/delete of all child tables are trivial as they are actually
done in the same table and not using joins


It seems that single inheritance avoids other conceptual problems, like
what to do with primary keys when inheriting from two tables that have
them.


Hannu



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

http://archives.postgresql.org



Re: [HACKERS] Inheritance

2002-09-05 Thread Curt Sampson

On 5 Sep 2002, Hannu Krosing wrote:

 On Thu, 2002-09-05 at 03:57, Curt Sampson wrote:

  Or implementing it by keeping all data in the table in which it
  was declared. (I.e., supertable holds all rows; subtable holds
  only the primary key and those columns of the row that are not
  in the supertable.)

 How would you do it for _multiple_ inheritance ?

Exactly the same way. Each column resides in only one physical table,
so you need only find the table it resides in, and do the insert there.
I'll be happy to provide an example if this is not clear.

 1) the way you describe (parent holding common columns + child tables
 for added child columns), which makes it easy to define constraints but
 hard to do inserts/updates/deletes on inherited tables

I wouldn't say it makes it hard to do inserts, updates and deletes.
Postgres already has pretty near all of the code it needs to support
these updates, because these are the semantic equivalant of the separate
actions applied to the separate tables within one transaction.

 2) the postgresql way (a new table for each child), which makes it hard
 to define constraints but easy to do inserts/updates/deletes.

I agree that making constraints work in this model is very difficult and
a lot of work.

 This way it could probably be done even more effectively than you
 describe by:

 1) keeping _all_ (not only the inherited columns)  the data for
 inheritance hierarchy in the same physical file.

You appear to have delved into a different database layer than one
I'm looking at, here. I was examining storage on the table level,
which is unrelated to files. (E.g., postgres sometimes stores a
table in one file, sometimes in more than one. MS SQL Server stores
many tables in one file. It doesn't matter which approach is used when
discussing the two inheritance implementation options above.)

 4) update/delete of all child tables are trivial as they are actually
 done in the same table and not using joins

Or are you talking about storing all of the columns in a single
table? That's a possibility, but wouldn't it be costly to update
the entire table every time you add a new child table? And table
scans on child tables would certainly be more costly if you had
many of them, becuase the effective row width would be much wider.
But it might be worth thinking about.

 It seems that single inheritance avoids other conceptual problems, like
 what to do with primary keys when inheriting from two tables that have
 them.

I don't see where there's a conceptual problem here, either. With
multiple inheritance you can simply demote both keys to candidate
keys, and continue on as normal. (The only difference between a
primary key and a candidate key is that you can leave out the column
names when declaring foreign keys in another table.)

cjs
-- 
Curt Sampson  [EMAIL PROTECTED]   +81 90 7737 2974   http://www.netbsd.org
Don't you know, in this new Dark Age, we're all light.  --XTC


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



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 09:28, Curt Sampson wrote:
 On 5 Sep 2002, Hannu Krosing wrote:
 
  On Thu, 2002-09-05 at 03:57, Curt Sampson wrote:
 
   Or implementing it by keeping all data in the table in which it
   was declared. (I.e., supertable holds all rows; subtable holds
   only the primary key and those columns of the row that are not
   in the supertable.)
 
  How would you do it for _multiple_ inheritance ?
 
 Exactly the same way. Each column resides in only one physical table,
 so you need only find the table it resides in, and do the insert there.
 I'll be happy to provide an example if this is not clear.
 
  1) the way you describe (parent holding common columns + child tables
  for added child columns), which makes it easy to define constraints but
  hard to do inserts/updates/deletes on inherited tables
 
 I wouldn't say it makes it hard to do inserts, updates and deletes.
 Postgres already has pretty near all of the code it needs to support
 these updates, because these are the semantic equivalant of the separate
 actions applied to the separate tables within one transaction.

What I meant was that it is relatively more costly to update several
physical tables than updating one .

  2) the postgresql way (a new table for each child), which makes it hard
  to define constraints but easy to do inserts/updates/deletes.
 
 I agree that making constraints work in this model is very difficult and
 a lot of work.

But again this is not _conceptually_ hard, just hard to implement
efficiently.

  This way it could probably be done even more effectively than you
  describe by:
 
  1) keeping _all_ (not only the inherited columns)  the data for
  inheritance hierarchy in the same physical file.
 
 You appear to have delved into a different database layer than one
 I'm looking at, here.

probably. I was describing to a way to efficiently implement single
inheritance. 

The layer was somewhere between physical files and logical tables, i.e.
above splitting stuff into main/toast and also above splitting big files
to 1Gb chunks, but below logical tables, which are (or are not when
omitting ONLY ;) still separate logically.

Perhaps it could be named logical file.

 I was examining storage on the table level, which is unrelated to files.

 (E.g., postgres sometimes stores a table in one file, sometimes in more
 than one. MS SQL Server stores many tables in one file.
 It doesn't matter which approach is used when
 discussing the two inheritance implementation options above.)

It does not matter in case you are assuming that the storage model can't
be changed. The trick with inherited tables is that in some sense they
are the same table and in another sense they are separate tables.

  4) update/delete of all child tables are trivial as they are actually
  done in the same table and not using joins
 
 Or are you talking about storing all of the columns in a single
 table? That's a possibility, but wouldn't it be costly to update
 the entire table every time you add a new child table?

You should not need it, as the storage for existing tuples does not
change - even now you can do ADD COLUMN without touching existing
tuples.

 And table
 scans on child tables would certainly be more costly if you had
 many of them, becuase the effective row width would be much wider.

It would not be noticably wider (only 1 bit/column) even if I did
propose storing all columns.

What I was actually trying to describe was that the tuple format would
be what it is currently, just stored in the same table with parent.

 But it might be worth thinking about.
 
  It seems that single inheritance avoids other conceptual problems, like
  what to do with primary keys when inheriting from two tables that have
  them.
 
 I don't see where there's a conceptual problem here, either. With
 multiple inheritance you can simply demote both keys to candidate
 keys, and continue on as normal. (The only difference between a
 primary key and a candidate key is that you can leave out the column
 names when declaring foreign keys in another table.)

That's one possibility. The other would be to keep the one from the
first table as primary and demote onlly the other primary keys.

With single inheritance you don't even have to think about it.

-
Hannu




---(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] 7.3 gotchas for applications and client libraries

2002-09-05 Thread Christopher Kings-Lynne

Was this going to make it into the release notes or something?

Chris

 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Tom Lane
 Sent: Tuesday, 3 September 2002 9:54 AM
 To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Subject: [HACKERS] 7.3 gotchas for applications and client libraries


 Bruce suggested that we need a porting guide to help people look for
 application and client-library code that will be broken by the changes
 in PG 7.3.  Here is a first cut at documenting the issues.
 Comments welcome --- in particular, what have I missed?

   regards, tom lane


 Revising client-side code for PG 7.3 system catalogs


 Here are some notes about things to look out for in updating client-side
 code for PG 7.3.  Almost anything that looks at the system catalogs is
 probably going to need work, if you want it to behave reasonably when you
 start using 7.3's new features such as schemas and DROP COLUMN.

 As an example, consider the task of listing the names and datatypes for
 a table named foo.  In the past you may have done this with a query like

   SELECT a.attname, format_type(a.atttypid, a.atttypmod)
   FROM pg_class c, pg_attribute a
   WHERE c.relname = 'foo'
 AND a.attnum  0 AND a.attrelid = c.oid
   ORDER BY a.attnum

...


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

2002-09-05 Thread Curt Sampson

On 5 Sep 2002, Hannu Krosing wrote:

 What I meant was that it is relatively more costly to update several
 physical tables than updating one .

Oh, I see. Not that this is that big a deal, I think. Given that
it doesn't work correctly at the moment, making it work fast is a
definite second priority, I would think.

Once it's working right, one can always replace the internals with
something else that does the same job but is more efficient.

  I agree that making constraints work in this model is very difficult and
  a lot of work.

 But again this is not _conceptually_ hard, just hard to implement
 efficiently.

No, it's conceptually hard. Not all constraints are implemented with
just a unique index you know. And changing a constraint means you have
to check all the child tables, etc. etc. It's difficult just to track
down down all the things you have to try to preserve. Not to mention,
there's always the question of what happens to triggers and suchlike
when handed a tuple with extra columns from what it expects, and having
it modify the insert into a different table.

The beauty of storing all supertable columns in the supertable itself is
that the behaviour is automatically correct.

 What I was actually trying to describe was that the tuple format would
 be what it is currently, just stored in the same table with parent.

So what you're saying is that each tuple in the table would have a
format appropriate for its subtype, and the table would be full of
tuples of varying types? At first blush, that seems like a reasonable
approach, if it can be done.

cjs
-- 
Curt Sampson  [EMAIL PROTECTED]   +81 90 7737 2974   http://www.netbsd.org
Don't you know, in this new Dark Age, we're all light.  --XTC


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

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



Re: [HACKERS] Inheritance

2002-09-05 Thread Jeff Davis

I have a question about inheritance:

You have 2 tables: Programmer and employee. Programmer inherits employee. You 
put in a generic employee record for someone, but then she becomes a 
programmer. What do you do? (I borrowed this example from a book by C.J. 
Date, who posed this question). Do you DELETE then INSERT? Something seems 
wrong with that somehow. Are the postgres developers agreed upon how that 
situation should be handled? What about the database users, and their 
expectations of the behavior? 

I am not advocating that we remove inheritence (I say this because this topic 
has generated some significant discussion about that). However, I will stick 
to the well-defined relational model until I see something useful from the 
inheritance system that is as well-defined. I agree it saves a few keystrokes 
(and can help organize things for you, as do objects in a programming 
language), but mind is more at peace when I am actually sure of what's 
happening. I can always throw more rules/views/triggers at the situation 
until I have a nice set of things to work with in the application.

Or, I suppose, if someone shows me something that I can't do in the relational 
model, but can with inheritance, I might be convinced otherwise.

Regards,
Jeff Davis



On Thursday 05 September 2002 01:05 am, Hannu Krosing wrote:
 On Thu, 2002-09-05 at 03:57, Curt Sampson wrote:
  On Tue, 3 Sep 2002, Bruce Momjian wrote:
   Yep, this is where we are stuck;  having an index span multiple tables
   in some way.
 
  Or implementing it by keeping all data in the table in which it
  was declared. (I.e., supertable holds all rows; subtable holds
  only the primary key and those columns of the row that are not
  in the supertable.)

 How would you do it for _multiple_ inheritance ?

 When implementing it on top of standard relational model you have more
 or less two ways to slice the problem

 1) the way you describe (parent holding common columns + child tables
 for added child columns), which makes it easy to define constraints but
 hard to do inserts/updates/deletes on inherited tables

 2) the postgresql way (a new table for each child), which makes it hard
 to define constraints but easy to do inserts/updates/deletes.

  From looking at the various discussions of this in books, and what
  it appears to me that the SQL standard says, it seems that their
  overall vision of table inheritance is to be consistent with the
  implementation that I described above.

 Yes. The SQL99 standard specifies only _single_ inheritance for tables +
 LIKE in column definition part, making the model somewhat similar to
 Java's (single inheritance + interfaces).

 This way it could probably be done even more effectively than you
 describe by:

 1) keeping _all_ (not only the inherited columns)  the data for
 inheritance hierarchy in the same physical file.

 2) having partial indexes (involving tableoid=thiskindoftable) for
 possible speeding up of SELECT .. ONLY queries.

 3) no changes to (unique) indexes - they still reference simple TID's
 without additional table part.

 4) update/delete of all child tables are trivial as they are actually
 done in the same table and not using joins


 It seems that single inheritance avoids other conceptual problems, like
 what to do with primary keys when inheriting from two tables that have
 them.

 
 Hannu



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

 http://archives.postgresql.org


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



Re: [HACKERS] Inheritance

2002-09-05 Thread Curt Sampson

On Thu, 5 Sep 2002, Jeff Davis wrote:

 You have 2 tables: Programmer and employee. Programmer inherits employee. You
 put in a generic employee record for someone, but then she becomes a
 programmer. What do you do? (I borrowed this example from a book by C.J.
 Date, who posed this question). Do you DELETE then INSERT? Something seems
 wrong with that somehow.

This is not so wrong. If you think about it, you have the same
problem in most object-oriented programming languages: a person
object can't generally easily become a subclass of itself after
being created.

This is a case, I would say, where you simply don't want to use
inheritance. A person has-a job, not is-a job.

 What about the database users, and their expectations of the behavior?

Nobody really knows; table inheritance in databases is not well-defined.
(Though perhaps the latest SQL spec. changes that.)

 However, I will stick to the well-defined relational model until I see
 something useful from the inheritance system that is as well-defined.

Amen! :-)

 Or, I suppose, if someone shows me something that I can't do in the
 relational model, but can with inheritance, I might be convinced
 otherwise.

I think that most people are at this point agreed that table
inheritance, at least as currently implemented in any known system,
doesn't offer anything that can't easily be done relationally.

cjs
-- 
Curt Sampson  [EMAIL PROTECTED]   +81 90 7737 2974   http://www.netbsd.org
Don't you know, in this new Dark Age, we're all light.  --XTC


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

http://archives.postgresql.org



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 10:52, Curt Sampson wrote:
 On 5 Sep 2002, Hannu Krosing wrote:
 
  What I meant was that it is relatively more costly to update several
  physical tables than updating one .
 
 Oh, I see. Not that this is that big a deal, I think. Given that
 it doesn't work correctly at the moment, making it work fast is a
 definite second priority, I would think.

But choosing an implementation that _can_be_ made to work fast is not.

 Once it's working right, one can always replace the internals with
 something else that does the same job but is more efficient.

I still think that choosing the right implementation can also help in
making it work right.

   I agree that making constraints work in this model is very difficult and
   a lot of work.
 
  But again this is not _conceptually_ hard, just hard to implement
  efficiently.
 
 No, it's conceptually hard. Not all constraints are implemented with
 just a unique index you know. And changing a constraint means you have
 to check all the child tables, etc. etc. It's difficult just to track
 down down all the things you have to try to preserve.

It may be a lot of work, but not _conceptually_ hard. Conceptually you
have to do the same thing as for a single table, but just for all
inherited tables.

 Not to mention,
 there's always the question of what happens to triggers and suchlike
 when handed a tuple with extra columns from what it expects, and having
 it modify the insert into a different table.

IMHO that the trigger should not be aware of underlying implementation -
so it needs not worry about modifying the insert into a different table.

 The beauty of storing all supertable columns in the supertable itself is
 that the behaviour is automatically correct.

But automatically correct may not be what you want ;)

What about trigger that generates a cached printname using function
printname(row) that is different for each table - here you definitely do
not want to run the function defined for base table for anything
inherited.

  What I was actually trying to describe was that the tuple format would
  be what it is currently, just stored in the same table with parent.
 
 So what you're saying is that each tuple in the table would have a
 format appropriate for its subtype, and the table would be full of
 tuples of varying types? At first blush, that seems like a reasonable
 approach, if it can be done.

At least it makes some parts easier ;)


Hannu









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



Re: [HACKERS] Inheritance

2002-09-05 Thread Curt Sampson

On 5 Sep 2002, Hannu Krosing wrote:

  Oh, I see. Not that this is that big a deal, I think. Given that
  it doesn't work correctly at the moment, making it work fast is a
  definite second priority, I would think.

 But choosing an implementation that _can_be_ made to work fast is not.

I would say it definitely is. A correctly working implementation
can be replaced. An incorrectly working implementation destroys
data integrety.

Which is more important for PostgreSQL? Speed or maintaining data
integrity?

  Not to mention,
  there's always the question of what happens to triggers and suchlike
  when handed a tuple with extra columns from what it expects, and having
  it modify the insert into a different table.

 IMHO that the trigger should not be aware of underlying implementation -
 so it needs not worry about modifying the insert into a different table.

I agree.

  The beauty of storing all supertable columns in the supertable itself is
  that the behaviour is automatically correct.

 But automatically correct may not be what you want ;)

 What about trigger that generates a cached printname using function
 printname(row) that is different for each table - here you definitely do
 not want to run the function defined for base table for anything
 inherited.

Right. But that will be automatically correct when you store all
base data in the base table. It's when you start storing those data
in other tables that the trigger can get confused.

Or are you saying that when I insert a row into just a child
table, the trigger shouldn't be invoked on the parent table
portion of that insert? If so, I'd strongly disagree. If that
trigger is acting as an integrety constraint on the base table,
you might destroy the table's integrity.

cjs
-- 
Curt Sampson  [EMAIL PROTECTED]   +81 90 7737 2974   http://www.netbsd.org
Don't you know, in this new Dark Age, we're all light.  --XTC


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

http://archives.postgresql.org



Re: [HACKERS] contrib/tsearch

2002-09-05 Thread Oleg Bartunov

On Thu, 5 Sep 2002, Christopher Kings-Lynne wrote:

 Hmmm...thinking about it, maybe 'herring' is being reduced to 'her' after
 the stemming process and hence is thought to be a stopword?  This is a bug,
 but how should it be fixed?


It's difficult question how to use stop words. We'll see what we could
do. Probably, porter's stemming algorithm has problem here.
'herring' - 'her'~'ring'
(I have a demo of english-russian stemmr, so you can play)
http://intra.astronet.ru/db/lingua/snowball/
I'll ask Martin Porter if there could be an error stemmer.
But I think the problem is in concept of using stop words.
Should we check for stop words before stemming or after ?
In the first case we have to collect all forms of stop-words which is doable
but difficult to maintain, in latter - we'll have current problem.

It's time for beta1 and I'm not sure if we could work on this issue
right now, but I feel a big pressure from tsearch users :-)
If people want to help us why not to work on stop words list including
all forms ? In any case, we are not native  english, so don't expect we'll
create more or less decent list. Programming changes are trivial, probably
we'll end for the moment just using compile time option.
As always, your patches are welcome !

btw, you may test your queries much easier:

list=# select 'herring'::mquery_txt;
ERROR:  Your query contained only stopword(s), ignored
list=# select 'herring'::query_txt;
 query_txt
---
 'herring'
(1 row)




 Although, tests don't support that:

 usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
 ## 'himring';
  food_id | brand | description | ftiidx
 -+---+-+
 (0 rows)
 usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
 ## 'hisring';
  food_id | brand | description | ftiidx
 -+---+-+
 (0 rows)

 usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
 ## 'hising';
  food_id | brand | description | ftiidx
 -+---+-+
 (0 rows)

 usa=# select food_id, brand,description,ftiidx from food_foods where ftiidx
 ## 'himing';
  food_id | brand | description | ftiidx
 -+---+-+
 (0 rows)

 All work...?

 Chris

  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED]]On Behalf Of Christopher
  Kings-Lynne
  Sent: Thursday, 5 September 2002 2:36 PM
  To: Hackers
  Subject: [HACKERS] contrib/tsearch
 
 
  Hi Oleg/Teodor,
 
  I'm sorry to keep posting bugs without patches, but I'm just
  hoping you guys
  know the answer faster than I...I know you're busy.
 
  What does tsearch have against the word 'herring' (as in the
  fish).  Why is
  it considered a stopword?
 
  Attached is example queries...
 
  Chris
 


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


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




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

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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Vince Vielhaber

On Wed, 4 Sep 2002, Marc G. Fournier wrote:

 %ls -lt ~ftp/pub/source/v7.3beta

Is this where you're putting it this time?  Last time was ~ftp/pub/beta.

Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==





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

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



Re: [HACKERS] Inheritance

2002-09-05 Thread Jeff Davis


 This is not so wrong. If you think about it, you have the same
 problem in most object-oriented programming languages: a person
 object can't generally easily become a subclass of itself after
 being created.

 This is a case, I would say, where you simply don't want to use
 inheritance. A person has-a job, not is-a job.


But a person is-a employee (allow me to momentarily step aside from the rules 
of english grammer, if you would), and a person is-a programmer. That's why I 
didn't call my table job :)  [1]

I don't like the way some OO programming languages handle objects, if they 
mean to say you can't change an object's type without performing a logical 
data copy to a new object. If you don't use some kind of extra layer of 
abstraction in C, you will end up with that problem: you'd need to copy all 
that RAM over to change from one struct to another. Most people would rather 
take that RAM copying hit than all the hits for allowing room to expand (at 
least in some applications). However, postgres needs to provide that room to 
expand for each tuple anyway, so to go through the same copying seems bad 
(especially since we're no longer just talking RAM). 

Take as an example python... it's easy to emulate other objects: just assign 
to the attribute, even if it's not there yet, it'll add the attribute. Same 
with python, it's providing room to expand for it's objects already, so why 
do all the copying? Now compare with Java, and see why you'd be annoyed. It 
has the facilities to change the objects all around, but you can't do it.

Even if you disregard all implementation details, and assume that the database 
is intelligent enough to not redundantly write data (and if you could name 
one such database, I would like to know), you're still doing something that 
doesn't logically make sense: you're deleting and inserting atomically, when 
the more obvious logical path is to expand on the data you already carry 
about an entity.

I like entities to be mutable, at least as far as makes sense to an 
application. Try telling an employee that as part of a promotion, they're 
going to be fired, lose their workstation, then be re-hired, and get a new 
workstation; I bet he'd have an interesting expression on his face (hey, at 
least postgres guarantees the A in ACID, or else bad things could happen to 
that poor guy :)

Thanks for responding, and I agreed with everything else you said. As you 
might have guessed, I don't much like most object-oriented languages if 
that's what they're going to try to tell me I have to do. Python works 
nicely, however :)

Regards,
Jeff Davis

[1] Come to think of it, the JOIN operator seems to, at least on a first 
thought, represent the has-a relationship you describe. You could have the 
tuples manager and programmer in the table job and join with a people 
table. Don't ask about inheritance yet for this model, I'm still thinking 
about that one (does has-a even have an analogue to inheriteance?). Send me 
your thoughts about this, if you should have any.

---(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] Map of developers

2002-09-05 Thread Vince Vielhaber

On Thu, 5 Sep 2002, Christopher Kings-Lynne wrote:

 Anyone else think we should add some more pins to the developer map?  At the
 moment, it looks like we have very few developers!

If so then now's the time to do it 'cuze I'm planning on generating a new
one as soon as I get this tcl tool working.

Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==




---(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] Map of developers

2002-09-05 Thread Vince Vielhaber

On Thu, 5 Sep 2002, Bruce Momjian wrote:


 I will work on that this month.  It is part of the advocacy project.

Since when?




 ---

 Christopher Kings-Lynne wrote:
  Anyone else think we should add some more pins to the developer map?  At the
  moment, it looks like we have very few developers!
 
  Chris
 
 
  ---(end of broadcast)---
  TIP 2: you can get off all lists at once with the unregister command
  (send unregister YourEmailAddressHere to [EMAIL PROTECTED])
 




Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==




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



[HACKERS] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Dave Page


I get the following error when building beta 1 on CYGWIN_NT-5.1 PC9
1.3.10(0.51/3/2) 2002-02-25 11:14 i686 unknown:

make[3]: Entering directory
`/usr/local/src/postgresql-7.3b1/src/backend/utils/mb/conversion_procs/c
yrillic_and_mic'
gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
-I../../../../../../src/include -I/usr/local/include -DBUILDING_DLL=1
-c -o cyrillic_and_mic.o cyrillic_and_mic.c
dlltool --export-all --output-def cyrillic_and_mic.def
cyrillic_and_mic.o
dllwrap -o cyrillic_and_mic.dll --dllname cyrillic_and_mic.dll --def
cyrillic_and_mic.def cyrillic_and_mic.o
../../../../../../src/utils/dllinit.o -lcygipc -lcrypt -L/usr/local/lib
-L../../../../../../src/backend -lpostgres
Warning: resolving _CurrentMemoryContext by linking to
__imp__CurrentMemoryContext (auto-import)
fu01.o(.idata$3+0xc): undefined reference to `libpostgres_a_iname'
fu02.o(.idata$3+0xc): undefined reference to `libpostgres_a_iname'
fu03.o(.idata$3+0xc): undefined reference to `libpostgres_a_iname'
fu04.o(.idata$3+0xc): undefined reference to `libpostgres_a_iname'
fu05.o(.idata$3+0xc): undefined reference to `libpostgres_a_iname'
fu06.o(.idata$3+0xc): more undefined references to
`libpostgres_a_iname' follow
nmth00.o(.idata$4+0x0): undefined reference to
`_nm__CurrentMemoryContext'
collect2: ld returned 1 exit status
dllwrap: gcc exited with status 1
make[3]: *** [cyrillic_and_mic.dll] Error 1
make[3]: Leaving directory
`/usr/local/src/postgresql-7.3b1/src/backend/utils/mb
/conversion_procs/cyrillic_and_mic'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/usr/local/src/postgresql-7.3b1/src/backend/utils/mb
/conversion_procs'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/src/postgresql-7.3b1/src'
make: *** [all] Error 2
PC9 $

Regards, Dave

---(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] beta1 packaged

2002-09-05 Thread Marc G. Fournier

On Thu, 5 Sep 2002, Vince Vielhaber wrote:

 On Wed, 4 Sep 2002, Marc G. Fournier wrote:

  %ls -lt ~ftp/pub/source/v7.3beta

 Is this where you're putting it this time?  Last time was ~ftp/pub/beta.

actually, should be a symlink, but until I know the packaging and all is
well, I'm avoiding put it in there ...




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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Vince Vielhaber

On Thu, 5 Sep 2002, Marc G. Fournier wrote:

 On Thu, 5 Sep 2002, Vince Vielhaber wrote:

  On Wed, 4 Sep 2002, Marc G. Fournier wrote:
 
   %ls -lt ~ftp/pub/source/v7.3beta
 
  Is this where you're putting it this time?  Last time was ~ftp/pub/beta.

 actually, should be a symlink, but until I know the packaging and all is
 well, I'm avoiding put it in there ...

Ok, I'll leave the script as is then.

Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==




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

http://archives.postgresql.org



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 11:34, Curt Sampson wrote:
 On 5 Sep 2002, Hannu Krosing wrote:
 
   Oh, I see. Not that this is that big a deal, I think. Given that
   it doesn't work correctly at the moment, making it work fast is a
   definite second priority, I would think.
 
  But choosing an implementation that _can_be_ made to work fast is not.
 
 I would say it definitely is. A correctly working implementation
 can be replaced. An incorrectly working implementation destroys
 data integrety.
 
 Which is more important for PostgreSQL? Speed or maintaining data
 integrity?

Both of course. The lack of one often makes the other unusable.

But as MySQL experience suggest, often people select speed over data
integrity. OTOH sometimes you happily accept a 10sec delay in updates to
have data integrity (like when doing a money transfer over internet;)

   Not to mention,
   there's always the question of what happens to triggers and suchlike
   when handed a tuple with extra columns from what it expects, and having
   it modify the insert into a different table.
 
  IMHO that the trigger should not be aware of underlying implementation -
  so it needs not worry about modifying the insert into a different table.
 
 I agree.
 
   The beauty of storing all supertable columns in the supertable itself is
   that the behaviour is automatically correct.
 
  But automatically correct may not be what you want ;)
 
  What about trigger that generates a cached printname using function
  printname(row) that is different for each table - here you definitely do
  not want to run the function defined for base table for anything
  inherited.
 
 Right. But that will be automatically correct when you store all
 base data in the base table. It's when you start storing those data
 in other tables that the trigger can get confused.
 
 Or are you saying that when I insert a row into just a child
 table, the trigger shouldn't be invoked on the parent table
 portion of that insert? If so, I'd strongly disagree.

Conceptually there are no portions of table - the trigger is invoked
on one _tuple_ exactly (pg has only row-level triggers), and each tuple
belongs to only one table regardless how it is implemented internally.

 If that
 trigger is acting as an integrety constraint on the base table,
 you might destroy the table's integrity.

What I try to say is that you should have the same freedom with triggers
that you have with select/insert/update/delete - you must be able to
choose if the trigger is on the parent table ONLY or on parent and all
children. 

And you should be able to override a trigger for child table even if it
is defined on parent as applying to all children - I guess that
overriding by trigger _name_ would be what most people expect.

Suppose you have a table CITIZEN with table-level constraint IS_GOOD
which is defined as kills_not_others(CITIZEN). and there is table
CIVIL_SERVANT (..) UNDER CITIZEN. Now you have just one table MILITARY
(...) UNDER CIVIL_SERVANT, where you have other criteria for IS_GOOD so
you must either be able to override the trigger for that table (and its
children) or make sure that the functions used are dynamically mached to
the actual tuple type (header in Relational Model parlance) so that
kills_not_others(MILITARY) will be used, which presents the system
MILITARYs view of the being good ;)

What I'm after here is dynamic (and automatic) row level dispach of the
right function based on row type - so that for rows in CITIZEN or
CIVIL_SERVANT the function kills_not_others(CITIZEN) will be used but
for rows in MILITAY the kills_not_others(MILITARY) is used.

-
  Hannu



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

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



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 12:29, Jeff Davis wrote:
 
  This is not so wrong. If you think about it, you have the same
  problem in most object-oriented programming languages: a person
  object can't generally easily become a subclass of itself after
  being created.
 
  This is a case, I would say, where you simply don't want to use
  inheritance. A person has-a job, not is-a job.
 
 
 But a person is-a employee (allow me to momentarily step aside from the rules 
 of english grammer, if you would), and a person is-a programmer. That's why I 
 didn't call my table job :)  [1]
 
 I don't like the way some OO programming languages handle objects, if they 
 mean to say you can't change an object's type without performing a logical 
 data copy to a new object. If you don't use some kind of extra layer of 
 abstraction in C, you will end up with that problem: you'd need to copy all 
 that RAM over to change from one struct to another. Most people would rather 
 take that RAM copying hit than all the hits for allowing room to expand (at 
 least in some applications). However, postgres needs to provide that room to 
 expand for each tuple anyway, so to go through the same copying seems bad 
 (especially since we're no longer just talking RAM). 

I would like to have UPDATEs both up and down the inheritance hierarchy,
so that when I have hierarchy

OBJECT(id serial primary key)
 + HUMAN(name text,age int)
   + EMPLOYEE(salary numeric)
 + ENGINEER(workstation computer)
 + PHB(laptop computer)

and ENGINEER named Bob

I could do

UPDATE ENGINEER 
TO PHB
   SET salary = salary * 2 + age * 1000,
   laptop.disksize = max(laptop.disksize ,
 workstation.disksize + 100)
 WHERE name='Bob'
;

to promote Bob from an engineer to phb, give him a salary rise and a
laptop with default configuration ensuring big enough disk to keep all
his old files, but still keep all FK related records.

 Take as an example python... it's easy to emulate other objects: just assign 
 to the attribute, even if it's not there yet, it'll add the attribute. Same 
 with python, it's providing room to expand for it's objects already, so why 
 do all the copying?

that's unless you use the new-style objects and __slots__

 class myobj(object):
... __slots__ = ['a','b']
...
 M = myobj()
 M.a =1
 M.c =1
Traceback (most recent call last):
  File stdin, line 1, in ?
AttributeError: 'myobj' object has no attribute 'c'
 

 Same with python, it's providing room to expand for it's objects already,
 so why do all the copying?


 [1] Come to think of it, the JOIN operator seems to, at least on a first 
 thought, represent the has-a relationship you describe. You could have the 
 tuples manager and programmer in the table job and join with a people 
 table. Don't ask about inheritance yet for this model, I'm still thinking 
 about that one (does has-a even have an analogue to inheriteance?).

Not in inheritance, but in OO world attributes are used to express has-a
relations. So

 bob = people(name='Bob')
 bob.job = job('Manager')

makes an has-a relation between Bob and his job in python

BTW, good programming guidelines in python tell you not to test if bob
is-a something but rather test if the interface for something exists -
to see if you can iterate over bob you do not test if bob is a sequence
but just try it:

try:
for idea in bob:
examine(idea)
except TypeError:
print 'Failed to iterate over %s %s !' % (bob,job.name, bob.name)

---
Hannu






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



Re: [HACKERS] locking of referenced table during constraint

2002-09-05 Thread Tom Lane

Scott Shattuck [EMAIL PROTECTED] writes:
 ...why don't they allow the selects to read through adding a
 constraint?

Hmm.  We could probably allow that --- at least for some forms of
ALTER TABLE, a ShareRowExclusive lock ought to be good enough.
(That would allow SELECT and SELECT FOR UPDATE to run in parallel,
but not any actual data changes.)  Offhand I think this would be okay
for trigger changes, since SELECT and SELECT FOR UPDATE are unaffected
by triggers.  I'm less sure that it's safe for any other kind of ALTER.

 It becomes time critical when the table has 3 million user account
 entries and the lock blocks people from having their login name
 verified, causing what's supposed to be a 24x7 e-commerce site to
 essentially go offline to users for 5 minutes or more just so you can
 add a constraint to a new table with no rows. Sorry, but that sucks.

The only way ALTER TABLE ADD CONSTRAINT could take five minutes is if
you are putting a new constraint on a large existing table.  I don't
really see how you can expect that to be a free operation --- the system
has to look through all the existing rows to verify the constraint is
met.  Fooling with the schema of large production tables is not
something you're going to do without downtime in *any* DB.

regards, tom lane

---(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] I am done

2002-09-05 Thread Tom Lane

Gavin Sherry [EMAIL PROTECTED] writes:
 Since the flawed code is now in beta, it will need to be fixed. Do people
 like the above solution or should I just revert to having a seperate
 function for each GUC variable affected?

I do not see a good reason why fatal and off shouldn't be allowed
values for all three message variables.  If we just did that, then you'd
be back to sharable code.

BTW, is it a good idea for server_min_messages and
log_min_error_statement to be PGC_USERSET?  I could see an argument that
they should be PGC_SIGHUP, ie, settable only by the admin.  As it is,
any user can hide his activity from the logs.  OTOH, in the past we've
allowed anyone to change the debug level, and there haven't been
complaints about it.

There's some value in being able to kick the log level up a notch for
a specific session, but knocking it down from the admin's default could
be considered a bad thing.  I suppose we could invent a PGC_SIGHUP
min_server_min_messages variable that sets a minimum value below which
the user can't set server_min_messages.  Does that seem like a good
idea, or overkill?

A compromise position would be to make these two variables PG_SUSET,
ie settable per-session but only if you're superuser.

regards, tom lane

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



Re: [HACKERS] TODO item on triggers

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 Is this item completed?  It sure looks like it:
   * Make triggers refer to columns by number, not name

It is not necessary anymore.  The triggers still use names, but there's
code in ALTER...RENAME to fix the trigger parameters.  I'm perfectly
happy with that solution and see no need to do what the TODO item
suggests.

regards, tom lane

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



Re: [HACKERS] 7.2 - 7.3 activity

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 Good question.  As far as lines of *.[chy] code in pgsql/src, you have:

Date | Release  | Lines of code  
   --+--+
 ...
 2002-02-04  | 7.2  |   394,274  
 2002-??-??  | 7.3  |   453,282  

 As you can see, a 15% increase over 7.2.

And that's despite having removed a goodly amount of code to gborg.
Do you have an idea how many lines of code were pushed out?  You'd
have to add them back to get truly comparable numbers.

regards, tom lane

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

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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Tom Lane

Marc G. Fournier [EMAIL PROTECTED] writes:
 actually, should be a symlink, but until I know the packaging and all is
 well, I'm avoiding put it in there ...

I pulled down the main tarball -- looks good AFAICT.

regards, tom lane

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

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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Rod Taylor

On Wed, 2002-09-04 at 22:39, Marc G. Fournier wrote:
 
 will announce it on -announce tomorrow, if ppl want to take a quick look
 at it ... man pages weren't included, but I did regenerate the docs per
 Peter's suggested commands ...

'./configure  make check' passes on i386 FreeBSD.

SunOS control.shared2 5.7 Generic_106541-20 sun4u sparc SUNW,Ultra-5_10
shows an error in ALTER TABLE tests:


c cat src/test/regress/regression.diffs 
*** ./expected/alter_table.out  Fri Aug 30 12:23:20 2002
--- ./results/alter_table.out   Thu Sep  5 07:44:18 2002
***
*** 367,374 
  -- As should this
  ALTER TABLE FKTABLE ADD FOREIGN KEY(ftest1) references
pktable(ptest1);
  NOTICE:  ALTER TABLE will create implicit trigger(s) for FOREIGN KEY
check(s)
  DROP TABLE pktable cascade;
- NOTICE:  Drop cascades to constraint $2 on table fktable
  NOTICE:  Drop cascades to constraint $1 on table fktable
  DROP TABLE fktable;
  CREATE TEMP TABLE PKTABLE (ptest1 int, ptest2 inet,
--- 367,374 
  -- As should this
  ALTER TABLE FKTABLE ADD FOREIGN KEY(ftest1) references
pktable(ptest1);
  NOTICE:  ALTER TABLE will create implicit trigger(s) for FOREIGN KEY
check(s)
+ ERROR:  Relation pg_temp_5. does not exist
  DROP TABLE pktable cascade;
  NOTICE:  Drop cascades to constraint $1 on table fktable
  DROP TABLE fktable;
  CREATE TEMP TABLE PKTABLE (ptest1 int, ptest2 inet,

==




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

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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Tom Lane

Rod Taylor [EMAIL PROTECTED] writes:
 SunOS control.shared2 5.7 Generic_106541-20 sun4u sparc SUNW,Ultra-5_10
 shows an error in ALTER TABLE tests:

   ALTER TABLE FKTABLE ADD FOREIGN KEY(ftest1) references
 pktable(ptest1);
   NOTICE:  ALTER TABLE will create implicit trigger(s) for FOREIGN KEY
 check(s)
 + ERROR:  Relation pg_temp_5. does not exist

That's pretty bizarre.  Is it reproducible?  Can you get in there with a
debugger and try to figure out what's going wrong?

regards, tom lane

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

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



Re: [HACKERS] Inheritance

2002-09-05 Thread Tom Lane

I really like Hannu's idea of storing an entire (single-inheritance)
hierarchy in a single file.

I guess the question we need to ask ourselves is if we're prepared to
abandon support of multiple inheritance.  Personally I am, but...

regards, tom lane

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

http://archives.postgresql.org



Re: [HACKERS] 7.2 - 7.3 activity

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  Good question.  As far as lines of *.[chy] code in pgsql/src, you have:
   
   Date | Release  | Lines of code  
  --+--+
...
2002-02-04  | 7.2  |   394,274  
2002-??-??  | 7.3  |   453,282  
 
  As you can see, a 15% increase over 7.2.
 
 And that's despite having removed a goodly amount of code to gborg.
 Do you have an idea how many lines of code were pushed out?  You'd
 have to add them back to get truly comparable numbers.

Good point.  I see 36k lines move to gborg, which makes the increase
more like 25%.

-- 
  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] Please rename split(text,text,int) to splitpart

2002-09-05 Thread Joe Conway

Hannu Krosing wrote:
 It seems that my last mail on this did not get through to the list ;(
 
 Please consider renaming the new builtin function 
 
   split(text,text,int)
 
 to something else, perhaps
 
   split_part(text,text,int)
 
 (like date_part)
 
 The reason for this request is that 3 most popular scripting languages
 (perl, python, php) all have also a function with similar signature, but
 returning an array instead of single element and the (optional) third
 argument is limit (maximum number of splits to perform)
 
 I think that it would be good to have similar function in (some future
 release of) postgres, but if we now let in a function with same name and
 arguments but returning a single string instead an array of them, then
 we will need to invent a new and not so easy to recognise name for the
 real split function.
 

This is a good point, and I'm not opposed to changing the name, but it 
is too bad your original email didn't get through before beta1 was 
rolled. The change would now require an initdb, which I know we were 
trying to avoid once beta started (although we could change it without 
*requiring* an initdb I suppose).

I guess if we do end up needing an initdb for other reasons, we should 
make this change too. Any other opinions? Is split_part an acceptable name?

Also, if we add a todo to produce a real split function that returns 
an array, similar to those languages, I'll take it for 7.4.

Thanks,

Joe




---(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] I am done

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Gavin Sherry [EMAIL PROTECTED] writes:
  Since the flawed code is now in beta, it will need to be fixed. Do people
  like the above solution or should I just revert to having a seperate
  function for each GUC variable affected?
 
 I do not see a good reason why fatal and off shouldn't be allowed
 values for all three message variables.  If we just did that, then you'd
 be back to sharable code.

I recommended he only allow valid values for each variable.  I think if
we say we only support values X,Y,Z we had better throw an error if it
anything else.

 BTW, is it a good idea for server_min_messages and
 log_min_error_statement to be PGC_USERSET?  I could see an argument that
 they should be PGC_SIGHUP, ie, settable only by the admin.  As it is,
 any user can hide his activity from the logs.  OTOH, in the past we've
 allowed anyone to change the debug level, and there haven't been
 complaints about it.
 
 There's some value in being able to kick the log level up a notch for
 a specific session, but knocking it down from the admin's default could
 be considered a bad thing.  I suppose we could invent a PGC_SIGHUP
 min_server_min_messages variable that sets a minimum value below which
 the user can't set server_min_messages.  Does that seem like a good
 idea, or overkill?

Seems a new GUC variable seems like overkill to me, and I think we need
to allow it to be raised. I think we can make server_min_messages
PGC_SUSET so only the admin can change it.

-- 
  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] beta1 packaged

2002-09-05 Thread Rod Taylor

On Thu, 2002-09-05 at 11:19, Tom Lane wrote:
 Rod Taylor [EMAIL PROTECTED] writes:
  SunOS control.shared2 5.7 Generic_106541-20 sun4u sparc SUNW,Ultra-5_10
  shows an error in ALTER TABLE tests:
 
ALTER TABLE FKTABLE ADD FOREIGN KEY(ftest1) references
  pktable(ptest1);
NOTICE:  ALTER TABLE will create implicit trigger(s) for FOREIGN KEY
  check(s)
  + ERROR:  Relation pg_temp_5. does not exist
 
 That's pretty bizarre.  Is it reproducible?  Can you get in there with a
 debugger and try to figure out what's going wrong?

No, I've been unable to reproduce.



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

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



Re: [HACKERS] possible vacuum improvement?

2002-09-05 Thread Richard Tucker

How about counting the number of dead tuples examined and the number of live
tuples returned.  As the ratio of dead tuples over live tuples visited
increases the table becomes a candidate for vacuuming.
-regards
richt

 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Tom Lane
 Sent: Tuesday, September 03, 2002 4:25 PM
 To: Mario Weilguni
 Cc: [EMAIL PROTECTED]
 Subject: Re: [HACKERS] possible vacuum improvement?


 Mario Weilguni [EMAIL PROTECTED] writes:
  That brings me to another point, can't the
  statistics collector used for that?

 Hmm, that would be a different way of attacking the problem.  Not sure
 offhand which is better, but it'd surely be worth considering both.

 Note that collecting of dead-tuple counts requires input from aborted
 transactions as well as successful ones.  I don't recall whether the
 stats collector currently collects anything from aborted xacts; that
 might or might not be a sticky point.

   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



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

http://archives.postgresql.org



[HACKERS] Ok, I broke down...

2002-09-05 Thread Rod Taylor

In the process of upgrading a few systems for the Beta, I ended up
writing a tool to upgrade the Foreign key, Unique, and Serial objects to
their 7.3 version from the 7.2 version (may work on prior -- but not
guarenteed).

I imagine it'll fail miserably on mixed case, or names with spaces --
but oh well.

Anyway, goes through step by step asking the user if they wish to
upgrade each element.  Lightly tested

http://www.rbt.ca/postgresql/upgrade.shtml

It assumes you've already dumped / upgraded / restored to 7.3 before
running the script.

Kinda slow, but safe to run more than once.


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

http://archives.postgresql.org



Re: [HACKERS] I am done

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 There's some value in being able to kick the log level up a notch for
 a specific session, but knocking it down from the admin's default could
 be considered a bad thing.  I suppose we could invent a PGC_SIGHUP
 min_server_min_messages variable that sets a minimum value below which
 the user can't set server_min_messages.  Does that seem like a good
 idea, or overkill?
 
 A compromise position would be to make these two variables PG_SUSET,
 ie settable per-session but only if you're superuser.

Oh, I just saw your compromise position.  Yes, I think that is the way
to go.

In fact, aside from the security issue, allowing users to throw
voluminous debug info into the server logs doesn't seem like a good idea
anyway.

-- 
  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] [CYGWIN] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Jason Tishler

Dave,

On Thu, Sep 05, 2002 at 12:54:50PM +0100, Dave Page wrote:
 I get the following error when building beta 1 on CYGWIN_NT-5.1 PC9
 1.3.10(0.51/3/2) 2002-02-25 11:14 i686 unknown:
 
 make[3]: Entering directory 
`/usr/local/src/postgresql-7.3b1/src/backend/utils/mb/conversion_procs/cyrillic_and_mic'
 gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations 
-I../../../../../../src/include -I/usr/local/include -DBUILDING_DLL=1 -c -o 
cyrillic_and_mic.o cyrillic_and_mic.c
 [snip]
 dllwrap -o cyrillic_and_mic.dll --dllname cyrillic_and_mic.dll --def 
cyrillic_and_mic.def cyrillic_and_mic.o ../../../../../../src/utils/dllinit.o 
-lcygipc -lcrypt -L/usr/local/lib -L../../../../../../src/backend -lpostgres
 Warning: resolving _CurrentMemoryContext by linking to __imp__CurrentMemoryContext 
(auto-import)
 [snip]
 nmth00.o(.idata$4+0x0): undefined reference to `_nm__CurrentMemoryContext'

I just submitted a patch to pgsql-patches to fix the above and to add a
couple of missing DLLIMPORTs to src/include/miscadmin.h.

FYI, plperl no longer builds cleanly against Cygwin Perl 5.6.1 because
PostgreSQL no longer uses the Perl extension infrastructure.  However,
upgrading Cygwin Perl to 5.8.0 solves the problem because this version
uses the conventional name for libperl.a instead of one that has the
version embedded in it.

Thanks again for the heads up.

Jason

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



Re: [HACKERS] I am done

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 I do not see a good reason why fatal and off shouldn't be allowed
 values for all three message variables.  If we just did that, then you'd
 be back to sharable code.

 I recommended he only allow valid values for each variable.  I think if
 we say we only support values X,Y,Z we had better throw an error if it
 anything else.

That's not what I said: I said allow all the values for each variable.
And document it.  Why shouldn't we let people turn off error logging
if they want to?

 Seems a new GUC variable seems like overkill to me, and I think we need
 to allow it to be raised. I think we can make server_min_messages
 PGC_SUSET so only the admin can change it.

Okay, and log_min_error_statement too.

regards, tom lane

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



Re: [HACKERS] [CYGWIN] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Dave Page



 -Original Message-
 From: Jason Tishler [mailto:[EMAIL PROTECTED]] 
 Sent: 05 September 2002 16:30
 To: Dave Page
 Cc: pgsql-hackers; pgsql-cygwin
 Subject: Re: [CYGWIN] 7.3 Beta 1 Build Error on Cygwin
 
 
 I just submitted a patch to pgsql-patches to fix the above 
 and to add a couple of missing DLLIMPORTs to src/include/miscadmin.h.

Yup, saw that, thanks.

 FYI, plperl no longer builds cleanly against Cygwin Perl 
 5.6.1 because PostgreSQL no longer uses the Perl extension 
 infrastructure.  However, upgrading Cygwin Perl to 5.8.0 
 solves the problem because this version uses the conventional 
 name for libperl.a instead of one that has the version embedded in it.

I'll bear that in mind, though I don't normally use Perl.

 Thanks again for the heads up.

You're welcome, just trying to get a headstart on the testing of pgAdmin
for 7.3 and the 7.3 regression testing...

 Jason
 

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



Re: [HACKERS] I am done

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  I do not see a good reason why fatal and off shouldn't be allowed
  values for all three message variables.  If we just did that, then you'd
  be back to sharable code.
 
  I recommended he only allow valid values for each variable.  I think if
  we say we only support values X,Y,Z we had better throw an error if it
  anything else.
 
 That's not what I said: I said allow all the values for each variable.
 And document it.  Why shouldn't we let people turn off error logging
 if they want to?

But the client side doesn't make any sense to support FATAL.  Am I
missing something?

  Seems a new GUC variable seems like overkill to me, and I think we need
  to allow it to be raised. I think we can make server_min_messages
  PGC_SUSET so only the admin can change it.
 
 Okay, and log_min_error_statement too.

Yes.

-- 
  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] I am done

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 But the client side doesn't make any sense to support FATAL.  Am I
 missing something?

Hm.  I suppose a client setting above ERROR might break some application
programs that expect either ERROR or a command-complete response ...
but do we need to go out of our way to prohibit people from choosing
settings that break their clients?  If so, I've got a long list of
things we'd better worry about ...

regards, tom lane

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

http://archives.postgresql.org



Re: [HACKERS] I am done

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  But the client side doesn't make any sense to support FATAL.  Am I
  missing something?
 
 Hm.  I suppose a client setting above ERROR might break some application
 programs that expect either ERROR or a command-complete response ...
 but do we need to go out of our way to prohibit people from choosing
 settings that break their clients?  If so, I've got a long list of
 things we'd better worry about ...

client_min_messages currently shows:

  #client_min_messages = notice   # Values, in order of decreasing detail:
  #   debug5, debug4, debug3, debug2, debug1,
  #   log, info, notice, warning, error

so it is only fatal and panic that are not allowed for clients. If you
want to allow them, that is fine with me.  It would make it more
consistent, but of course I don't think a fatal or panic ever makes it
to the client side.

Your point that there should be a way of eliminating even ERROR coming
to a client seems valid to me.  Let's make the change.

-- 
  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/users-lounge/docs/faq.html



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Manuel Sugawara


Guys,

postgresql7.3b1 does not build :-(, seems like a missing multibyte
directory

'
| make[4]: Entering directory 
|`/home/masm/download/postgresql-7.3b1/src/backend/utils/time'
| gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations -I../../../../src/include  
| -c -o tqual.o tqual.c
| /usr/bin/ld -r -o SUBSYS.o tqual.o
| make[4]: Leaving directory 
|`/home/masm/download/postgresql-7.3b1/src/backend/utils/time'
| make -C mb SUBSYS.o
| make: Entering an unknown directory
| make: *** mb: No such file or directory.  Stop.
| make: Leaving an unknown directory
| make[3]: *** [mb-recursive] Error 2
| make[3]: Leaving directory `/home/masm/download/postgresql-7.3b1/src/backend/utils'
| make[2]: *** [utils-recursive] Error 2
| make[2]: Leaving directory `/home/masm/download/postgresql-7.3b1/src/backend'
| make[1]: *** [all] Error 2
| make[1]: Leaving directory `/home/masm/download/postgresql-7.3b1/src'
| make: *** [all] Error 2
`

or I'm missing something?

Regards,
Manuel.

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

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



Re: [HACKERS] I am done

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 of course I don't think a fatal or panic ever makes it
 to the client side.

Of course it does.  Try entering a bad password as a trivial example.
We punt *after* we send the elog.

regards, tom lane

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

http://archives.postgresql.org



Re: [HACKERS] Map of developers

2002-09-05 Thread Bruce Momjian

Vince Vielhaber wrote:
 On Thu, 5 Sep 2002, Bruce Momjian wrote:
 
 
  I will work on that this month.  It is part of the advocacy project.
 
 Since when?

Since I decide to take over the world.  :-)

What I meant was that it was on my TODO list as part of advocacy stuff I
plan for September.

-- 
  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] Map of developers

2002-09-05 Thread Vince Vielhaber

On Thu, 5 Sep 2002, Bruce Momjian wrote:

 Vince Vielhaber wrote:
  On Thu, 5 Sep 2002, Bruce Momjian wrote:
 
  
   I will work on that this month.  It is part of the advocacy project.
 
  Since when?

 Since I decide to take over the world.  :-)

 What I meant was that it was on my TODO list as part of advocacy stuff I
 plan for September.

Rape and pillage is on your todo list?   Go find your own content.  The
map is The PostgreSQL Developers not The PostgreSQL Advocacy Squad.
The last thing we need is the two maps getting out of sync, and no, I
don't plan on using yours.

Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==




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

http://archives.postgresql.org



Re: [HACKERS] contrib/tsearch

2002-09-05 Thread Martin Porter


Oleg,

The Porter stemming stems herring and herrings to her, which is a bit
unfortunate. A quick fix is to put 'herring/herrings' in the exception list
in the english (porter2) stemmer, but I'll look at this case over the next
few days and see if I can come up with something a bit better.

Interesting that no one has reported this before.

Martin



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



Re: [HACKERS] TODO item on triggers

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  Is this item completed?  It sure looks like it:
  * Make triggers refer to columns by number, not name
 
 It is not necessary anymore.  The triggers still use names, but there's
 code in ALTER...RENAME to fix the trigger parameters.  I'm perfectly
 happy with that solution and see no need to do what the TODO item
 suggests.

OK, item removed, again. ;-)

-- 
  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] beta1 packaged

2002-09-05 Thread Tom Lane

Manuel Sugawara [EMAIL PROTECTED] writes:
 or I'm missing something?

So it would seem.  The utils/mb directory is certainly there in the full
tarball that I pulled from ftp.us.postgresql.org this morning.  How did
you acquire your source tree, exactly?

regards, tom lane

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

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



Re: [HACKERS] I am done

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  of course I don't think a fatal or panic ever makes it
  to the client side.
 
 Of course it does.  Try entering a bad password as a trivial example.
 We punt *after* we send the elog.

Oh, that's good.  I guess it was PANIC I assumed never made it to the
client.  Well, anyway, client should support the same values as server.

-- 
  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] beta1 packaged

2002-09-05 Thread Manuel Sugawara

Tom Lane [EMAIL PROTECTED] writes:

 So it would seem.  The utils/mb directory is certainly there in the full
 tarball that I pulled from ftp.us.postgresql.org this morning.  How did
 you acquire your source tree, exactly?

The file is postgresql-base-7.3b1.tar.gz from
ftp://ftp.postgresql.org/pub/source/v7.3beta/

may be I need postgresql-7.3b1.tar.gz?

Regards,
Manuel.

-- 
No es que no puedan hallar la solución: es que no ven el problema.
G.K. Chesterson

---(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] beta1 packaged

2002-09-05 Thread Marc G. Fournier

On 5 Sep 2002, Manuel Sugawara wrote:

 Tom Lane [EMAIL PROTECTED] writes:

  So it would seem.  The utils/mb directory is certainly there in the full
  tarball that I pulled from ftp.us.postgresql.org this morning.  How did
  you acquire your source tree, exactly?

 The file is postgresql-base-7.3b1.tar.gz from
 ftp://ftp.postgresql.org/pub/source/v7.3beta/

 may be I need postgresql-7.3b1.tar.gz?

You need either the 7.3b1.tar.gz (which is everything), or you need to get
all the various -*- parts (which are more manageable)



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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Manuel Sugawara

Marc G. Fournier [EMAIL PROTECTED] writes:

 You need either the 7.3b1.tar.gz (which is everything), or you need to get
 all the various -*- parts (which are more manageable)

Oh, well. Thanks

Regards,
Manuel.
-- 
No es que no puedan hallar la solución: es que no ven el problema.
G.K. Chesterson

---(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] Map of developers

2002-09-05 Thread Vince Vielhaber

On Thu, 5 Sep 2002, Bruce Momjian wrote:

 Vince Vielhaber wrote:
  On Thu, 5 Sep 2002, Bruce Momjian wrote:
 
   Vince Vielhaber wrote:
On Thu, 5 Sep 2002, Bruce Momjian wrote:
   

 I will work on that this month.  It is part of the advocacy project.
   
Since when?
  
   Since I decide to take over the world.  :-)
  
   What I meant was that it was on my TODO list as part of advocacy stuff I
   plan for September.
 
  Rape and pillage is on your todo list?   Go find your own content.  The
  map is The PostgreSQL Developers not The PostgreSQL Advocacy Squad.
  The last thing we need is the two maps getting out of sync, and no, I
  don't plan on using yours.

 OK, what I really meant is that I want to make changes to the list of
 developers on the developers page and have you regenerate the map once
 that is updated.  It is related to advocacy.

 Maybe I can be just vague enough again to push your buttons. ;-)

Push 'em all you want, just don't bitch about the result!

Vince.
-- 
==
Vince Vielhaber -- KA8CSHemail: [EMAIL PROTECTED]http://www.pop4.net
 56K Nationwide Dialup from $16.00/mo at Pop4 Networking
  http://www.camping-usa.com  http://www.cloudninegifts.com
   http://www.meanstreamradio.com   http://www.unknown-artists.com
==




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

http://archives.postgresql.org



Re: [HACKERS] Inheritance

2002-09-05 Thread Ross J. Reedstrom

On Thu, Sep 05, 2002 at 10:23:02AM -0400, Tom Lane wrote:
 I really like Hannu's idea of storing an entire (single-inheritance)
 hierarchy in a single file.

Wouldn't this require solving the ALTER TABLE ADD COLUMN (to parent)
column ordering problem? 

 I guess the question we need to ask ourselves is if we're prepared to
 abandon support of multiple inheritance.  Personally I am, but...

No opinion - I've not used the inheritance much, since I'm not willing to
give up referential integrity.

Ross

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



[HACKERS] test, please ignore

2002-09-05 Thread Hannu Krosing

I'm suspecting that something blocks mail from my home computer

This is sent to test if it is so.




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

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



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 19:23, Tom Lane wrote:
 I really like Hannu's idea of storing an entire (single-inheritance)
 hierarchy in a single file.
 
 I guess the question we need to ask ourselves is if we're prepared to
 abandon support of multiple inheritance.  Personally I am, but...

So am I, but I think we should move in stages -

1) first implement the SQL99 standard 
   CREATE TABLE mytable() UNDER parenttable ;
   using the above idea and make it work right vs constraints,
   triggers, functions, etc.

   This should include the ability to include other table structures
   using LIKE :

   CREATE TABLE engine(...);
   CREATE TABLE vehicule(...);
   CREATE TABLE car (
  model text,
  wheels  wheel[],
  LIKE engine,
   ) UNDER vehicule;

   which could then hopefully be used for migrating most code of form

   CREATE TABLE car (
  model text primary key,
  wheels  wheel[]
   ) INHERITS (vehicule, engine);

   it would be nice (maybe even neccessary) to keep the current
   functionality that columns introduced by LIKE are automatically
   added/renamed/deleted when LIKE's base table changes.

2) when it is working announce non-SQL99-standard-and-broken INHERITS
   to be deprecated and removed in future.

3) give people time for some releases to move over to UNDER + LIKE .
   Or if someone comes up with bright ideas/impementations for fixing
   multiple inheritance, then un-deprecate and keep it.

4) else try to remove INHERITS.

5) if too many people object, goto 3)  ;)

---
Hannu



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



[HACKERS] Libpq.dll Souce Code

2002-09-05 Thread Achmad Amin

Dear all,
I want to make library for visual basic to connect to
PostgreSQL, but I have problem to get libpq.dll source
code. Can somebody help me ?
(Sorry for bad english :))

Best Regards,
Achmad Amin

__
Do You Yahoo!?
Yahoo! Finance - Get real-time stock quotes
http://finance.yahoo.com

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

2002-09-05 Thread Curt Sampson

On Thu, 5 Sep 2002, Jeff Davis wrote:

 But a person is-a employee (allow me to momentarily step aside from
 the rules of english grammer, if you would), and a person is-a
 programmer. That's why I didn't call my table job :) [1]

Certainly it's not the case that a person is-a job, by virtue of the
fact that a person can have no job. Nor is it the case that a person
is-a programmer; not all people are programmers.

Perhaps you're reversing the sense of is-a? One says subtype is-a
supertype, not supertype is-a subtype.

But even reversing these, it's not the case that job is-a person, by
virtue of the fact that you cannot use a job anywhere you can use a
person. (A person can file his tax return, a job can't.) That might be a
matter of bad mappings of object names to real-world concepts, though.

As for programmer is-a person, yes, you could model things that way if
you really wanted to. But it's a bad way to do it because, as you point
out, a person can change his job, or not have a job. Now what do you do
with that programmer-subtype-of-person object you created? I think in
this case English misled you: we do say that he is a programmer, but
what we really mean is that one of the characteristics of that person
is that he programs. So create a separate characteristic type and have
the person object have-a as many or as few of those characteristics as
you need.

 I don't like the way some OO programming languages handle objects, if they
 mean to say you can't change an object's type without performing a logical
 data copy to a new object.

That's not a problem with the programming language; that's you
modelling things badly.

 Take as an example python... it's easy to emulate other objects: just assign
 to the attribute, even if it's not there yet, it'll add the attribute. Same
 with python, it's providing room to expand for it's objects already, so why
 do all the copying? Now compare with Java, and see why you'd be annoyed. It
 has the facilities to change the objects all around, but you can't do it.

Yes, you can't do it in Java because you Can't Do It in a language where
you can specify static typing. If I have field that holds a String, I'm
given a guarantee that, if I can put a reference in that field, it is
and always will be a String.

In non-statically-typed languages that give you the option of changing
types, you might give a referenc to a string, change the objects type on
me, and then I might blow up when I try to use it later. These bugs tend
to be quite difficult to track down because the source and manifestation
of the problem can be widely separated in code and in time. That's why
most languages don't allow this.

 ...when the more obvious logical path is to expand on the data you
 already carry about an entity.

Yes, that's the perfectly obvious path. And that's just what the
relational model lets us do, and do very well.

Why do you want to use an ill-fitting, error-prone model when you've
already got something that works better?

 [1] Come to think of it, the JOIN operator seems to, at least on a first
 thought, represent the has-a relationship you describe.

You bet! Hey, this relational stuff doesn't suck so badly after
all, does it? Especially for a 30-year old theory. :-)

cjs
-- 
Curt Sampson  [EMAIL PROTECTED]   +81 90 7737 2974   http://www.netbsd.org
Don't you know, in this new Dark Age, we're all light.  --XTC


---(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] contrib/tsearch

2002-09-05 Thread Oleg Bartunov

On Thu, 5 Sep 2002, Martin Porter wrote:


 Oleg,

 The Porter stemming stems herring and herrings to her, which is a bit
 unfortunate. A quick fix is to put 'herring/herrings' in the exception list
 in the english (porter2) stemmer, but I'll look at this case over the next
 few days and see if I can come up with something a bit better.

Unfrtunately, we wrote tsearch module before the Snowball project has started,
so we used one implementation we found in the net (www.muscat.com) and
there is no exception list. OpenFTS uses snowball stemming, so we'd like
to have a fix. I think we have enough arguments to use snowball stemmers
in tsearch also.


 Interesting that no one has reported this before.

:-) Thanks Cristopher for his persistence.


 Martin



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


---(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] beta1 packaged

2002-09-05 Thread Bruce Momjian

Marc G. Fournier wrote:
 On 5 Sep 2002, Manuel Sugawara wrote:
 
  Tom Lane [EMAIL PROTECTED] writes:
 
   So it would seem.  The utils/mb directory is certainly there in the full
   tarball that I pulled from ftp.us.postgresql.org this morning.  How did
   you acquire your source tree, exactly?
 
  The file is postgresql-base-7.3b1.tar.gz from
  ftp://ftp.postgresql.org/pub/source/v7.3beta/
 
  may be I need postgresql-7.3b1.tar.gz?
 
 You need either the 7.3b1.tar.gz (which is everything), or you need to get
 all the various -*- parts (which are more manageable)

I am confused.  Are you saying the base file isn't compilable?

-- 
  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] 7.2 - 7.3 activity

2002-09-05 Thread Hannu Krosing

On Thu, 2002-09-05 at 20:12, Bruce Momjian wrote:
 Tom Lane wrote:
  Bruce Momjian [EMAIL PROTECTED] writes:
   Good question.  As far as lines of *.[chy] code in pgsql/src, you have:
  
  Date | Release  | Lines of code  
 --+--+
   ...
   2002-02-04  | 7.2  |   394,274  
   2002-??-??  | 7.3  |   453,282  
  
   As you can see, a 15% increase over 7.2.
  
  And that's despite having removed a goodly amount of code to gborg.
  Do you have an idea how many lines of code were pushed out?  You'd
  have to add them back to get truly comparable numbers.
 
 Good point.  I see 36k lines move to gborg, which makes the increase
 more like 25%.

Has anyone run any speed tests to see how 7.2 and 7.3 compare ?


Hannu



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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Manuel Sugawara

Bruce Momjian [EMAIL PROTECTED] writes:

  You need either the 7.3b1.tar.gz (which is everything), or you need to get
  all the various -*- parts (which are more manageable)
 
 I am confused.  Are you saying the base file isn't compilable?

My idea was that it is.

Regards,
Manuel.

---(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] beta1 packaged

2002-09-05 Thread Marc G. Fournier

On Thu, 5 Sep 2002, Bruce Momjian wrote:

 Marc G. Fournier wrote:
  On 5 Sep 2002, Manuel Sugawara wrote:
 
   Tom Lane [EMAIL PROTECTED] writes:
  
So it would seem.  The utils/mb directory is certainly there in the full
tarball that I pulled from ftp.us.postgresql.org this morning.  How did
you acquire your source tree, exactly?
  
   The file is postgresql-base-7.3b1.tar.gz from
   ftp://ftp.postgresql.org/pub/source/v7.3beta/
  
   may be I need postgresql-7.3b1.tar.gz?
 
  You need either the 7.3b1.tar.gz (which is everything), or you need to get
  all the various -*- parts (which are more manageable)

 I am confused.  Are you saying the base file isn't compilable?

Hrmm ... that is odd, now that you mention it ... but the file
'distributions' between v7.2 and v7.3beta appear to be the same, so -base-
was broken in the old one too?



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

http://archives.postgresql.org



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Peter Eisentraut

Bruce Momjian writes:

 I am confused.  Are you saying the base file isn't compilable?

The mb stuff is missing because it used to be optional in the old
splitting scheme.  Needs to be rethought.

-- 
Peter Eisentraut   [EMAIL PROTECTED]


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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Peter Eisentraut

Marc G. Fournier writes:

 Scary, even with removing a load of stuff over to gborg, its still gotten
 bigger then the last release :)

Not hard to find the culprit:

7.2:

3.4Msrc/backend/utils/mb

7.3:

9.6Msrc/backend/utils/mb

-- 
Peter Eisentraut   [EMAIL PROTECTED]


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

http://archives.postgresql.org



Re: [HACKERS] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Peter Eisentraut

Dave Page writes:

 I get the following error when building beta 1 on CYGWIN_NT-5.1 PC9
 1.3.10(0.51/3/2) 2002-02-25 11:14 i686 unknown:

Should all be fixed now.

-- 
Peter Eisentraut   [EMAIL PROTECTED]


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



Re: [HACKERS] contrib Makefile

2002-09-05 Thread Peter Eisentraut

Joe Conway writes:

 I just tried to build all of contrib, and it stops at earthdistance.

Whoops...

-- 
Peter Eisentraut   [EMAIL PROTECTED]


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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Tom Lane

Marc G. Fournier [EMAIL PROTECTED] writes:
 Hrmm ... that is odd, now that you mention it ... but the file
 'distributions' between v7.2 and v7.3beta appear to be the same, so -base-
 was broken in the old one too?

It was never intended that the base tarfile was alone sufficient to do
anything, was it?

regards, tom lane

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



Re: [HACKERS] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Jason Tishler

Peter,

On Thu, Sep 05, 2002 at 08:33:20PM +0200, Peter Eisentraut wrote:
 Dave Page writes:
 
  I get the following error when building beta 1 on CYGWIN_NT-5.1 PC9
  1.3.10(0.51/3/2) 2002-02-25 11:14 i686 unknown:
 
 Should all be fixed now.

Huh?  I don't see any recent CVS commits to indicate this.

Jason

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

http://archives.postgresql.org



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Marc G. Fournier [EMAIL PROTECTED] writes:
  Hrmm ... that is odd, now that you mention it ... but the file
  'distributions' between v7.2 and v7.3beta appear to be the same, so -base-
  was broken in the old one too?
 
 It was never intended that the base tarfile was alone sufficient to do
 anything, was it?

OK, so if base isn't compilable, then what is it good for?  I don't see
any add-on packages that would make it usable.

-- 
  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 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] beta1 packaged

2002-09-05 Thread Bruce Momjian

Peter Eisentraut wrote:
 Marc G. Fournier writes:
 
  Scary, even with removing a load of stuff over to gborg, its still gotten
  bigger then the last release :)
 
 Not hard to find the culprit:
 
 7.2:
 
 3.4Msrc/backend/utils/mb
 
 7.3:
 
 9.6Msrc/backend/utils/mb

Wow.  Just checking my CVS, the /mb stuff appears to be 17% of our
source tree.  Now that they are loadable, can we get enough of it in the
base to make it compilable and leave the rest for the full tarball.

-- 
  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])



[HACKERS] postgres crowd may find this interesting ;)

2002-09-05 Thread Hannu Krosing

Just in time for 7.3 beta 1 :

http://dsc.discovery.com/news/briefs/20020902/elephant.html

---
Hannu



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

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



Re: [HACKERS] 7.3 Beta 1 Build Error on Cygwin

2002-09-05 Thread Jason Tishler

Peter,

On Thu, Sep 05, 2002 at 02:51:31PM -0400, Bruce Momjian wrote:
 Jason Tishler wrote:
  On Thu, Sep 05, 2002 at 08:33:20PM +0200, Peter Eisentraut wrote:
   Should all be fixed now.
  
  Huh?  I don't see any recent CVS commits to indicate this.
 
 I see as a commit:
 
 [snip]
 
 I assume it was in there.

Sorry for the noise, but at the time:

cvs status include/miscadmin.h makefiles/Makefile.win

did *not* indicate any recent commits.  Maybe you sent the above email
before you committed your changes?

Anyway, I just tried a:

make distclean
rm include/miscadmin.h makefiles/Makefile.win # remove my patch
cvs update
make

and got the following error:

[snip]
make[3]: Leaving directory `/home/jt/src/pgsql/src/backend/utils'
dlltool --dllname postgres.exe --output-exp postgres.exp --def postgres.def
gcc -L/usr/local/lib  -o postgres.exe -Wl,--base-file,postgres.base postgres.exp 
access/SUBSYS.o bootstrap/SUBSYS.o catalog/SUBSYS.o parser/SUBSYS.o commands/SUBSYS.o 
executor/SUBSYS.o lib/SUBSYS.o libpq/SUBSYS.o main/SUBSYS.o nodes/SUBSYS.o 
optimizer/SUBSYS.o port/SUBSYS.o postmaster/SUBSYS.o regex/SUBSYS.o rewrite/SUBSYS.o 
storage/SUBSYS.o tcop/SUBSYS.o utils/SUBSYS.o 
libpq/SUBSYS.o(.text+0x1c84):crypt.c: undefined reference to `crypt'
port/SUBSYS.o(.text+0x262):pg_sema.c: undefined reference to `semget'
[snip]

I can get postgres.exe to successfully link by manually appending
-lcrypt -lcygipc to the end of the above gcc command line.

Since you are already working on this, would you be willing to fix this
problem?

Thanks,
Jason

---(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] beta1 packaged

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 OK, so if base isn't compilable, then what is it good for?  I don't see
 any add-on packages that would make it usable.

AFAIR, the only reason for having the split packaging is to accommodate
people who are downloading across flaky connections --- less to retry if
your connection drops.  You still have to download all the data if you
want to have a useful package, no?

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] PL/Perl?

2002-09-05 Thread Larry Rosenman

On Wed, 2002-09-04 at 19:41, Larry Rosenman wrote:
 On Wed, 2002-09-04 at 17:54, Tom Lane wrote:
  Larry Rosenman [EMAIL PROTECTED] writes:
   I upgraded PostgreSQL to 7.2.1 from a 7.2beta (yeah, I know).  One of my
   users requested plperl, so I got it to createlang, but it SIGSEGV's on
   any simple perl. 
  
  I was seeing the same with perl 5.6.1 and PG 7.2.* on HPUX 10.20.
  However, I have just verified that perl 5.8.0 works okay with PG CVS tip
  (not much testing, but it handles a simple plperl function).  Could you
  see whether 5.8.0 plays any nicer on your setup?
 Need to check with my user, I'll let ya know.
 
Well, I tried to install 5.8.0 on my 8.0.1 (beta) system, and blew cc up
with an internal compiler error.  I'll have to wait for Caldera to fix
that.  Sorry.


-- 
Larry Rosenman http://www.lerctr.org/~ler
Phone: +1 972-414-9812 E-Mail: [EMAIL PROTECTED]
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749


---(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] beta1 packaged

2002-09-05 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  OK, so if base isn't compilable, then what is it good for?  I don't see
  any add-on packages that would make it usable.
 
 AFAIR, the only reason for having the split packaging is to accommodate
 people who are downloading across flaky connections --- less to retry if
 your connection drops.  You still have to download all the data if you
 want to have a useful package, no?

That was not my understanding.  If that was the issue, we would release
packages numbered 1-5.  Marc splits them up saying if you don't want the
docs, don't download them.  I assume opt is /contrib.  My guess is he
had the multibyte stuff out in /opt but now they are required.

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



[HACKERS] Add check constraint bug

2002-09-05 Thread Peter Eisentraut

The following happens in latest CVS and a fresh database:

create table test (a int);
insert into test values (1);
alter table test add column b text check (b  '');
alter table test add check (a  0);
alter table test add check (a  1);

After the last command I get

ERROR:  CheckConstraintFetch: unexpected record found for rel test

and then the table seems to be wedged because any access to it will get
the same error.

Also, psql seems to forget about check constraints in peculiar ways:

create table test (a int);
insert into test values (1);
alter table test add column b text check (b  '');
\d test
alter table test add check (a  0);
\d test

The first shows:

 Table public.test
 Spalte |   Typ   | Attribute
+-+---
 a  | integer |
 b  | text|

The second shows:

 Table public.test
 Spalte |   Typ   | Attribute
+-+---
 a  | integer |
 b  | text|
Check-Constraints: »test_b« (b  ''::text)
   »$1« (a  0)

Note the first one doesn't show any constraints.

-- 
Peter Eisentraut   [EMAIL PROTECTED]


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

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



Re: [HACKERS] Multibyte support in oracle_compat.c

2002-09-05 Thread Peter Eisentraut

Tatsuo Ishii writes:

 BTW, nls has same problem as above, no? I guess nls depeneds on locale
 and it may conflict with the database-specific encoding and/or the
 automatic FE/BE encoding conversion.

GNU gettext does its own encoding conversion.  It reads the program's
character encoding from the LC_CTYPE locale and converts the material in
the translation catalogs on the fly for output.  This is great in general,
really, but for the postmaster it's a problem.  If LC_CTYPE is fixed for
the cluster and you later on change your mind about the message language
the it will be recoded into the character set that LC_CTYPE says.  And if
that character set does not match the one that is set as the backend
encoding internally then who knows what will happen when this stuff is
recoded again as it's sent to the client.  Big, big mess.

-- 
Peter Eisentraut   [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



[HACKERS] Removal of PGPASSWORDFILE in beta

2002-09-05 Thread Bruce Momjian

I have removed PGPASSWORDFILE in CVS and therefore in beta2.

It was decided that $HOME/.pgpass should always be tested, rather than
have an environment variable for it.

-- 
  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/users-lounge/docs/faq.html



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Marc G. Fournier

0On Thu, 5 Sep 2002, Tom Lane wrote:

 Bruce Momjian [EMAIL PROTECTED] writes:
  OK, so if base isn't compilable, then what is it good for?  I don't see
  any add-on packages that would make it usable.

 AFAIR, the only reason for having the split packaging is to accommodate
 people who are downloading across flaky connections --- less to retry if
 your connection drops.  You still have to download all the data if you
 want to have a useful package, no?

Correct ... even on high speed connections, I've had problems in the past
getting large files to download, so it makes it easier if you only have to
retry a part, instead of hte whole thing ...



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

http://archives.postgresql.org



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Bruce Momjian

Marc G. Fournier wrote:
 0On Thu, 5 Sep 2002, Tom Lane wrote:
 
  Bruce Momjian [EMAIL PROTECTED] writes:
   OK, so if base isn't compilable, then what is it good for?  I don't see
   any add-on packages that would make it usable.
 
  AFAIR, the only reason for having the split packaging is to accommodate
  people who are downloading across flaky connections --- less to retry if
  your connection drops.  You still have to download all the data if you
  want to have a useful package, no?
 
 Correct ... even on high speed connections, I've had problems in the past
 getting large files to download, so it makes it easier if you only have to
 retry a part, instead of hte whole thing ...

Then why do we mark them with stuff.  Isn't it easier to just label them
1-5?  I can see the docs being split out, but I don't understand the
other splits.

-- 
  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] Inheritance

2002-09-05 Thread Greg Copeland

On Thu, 2002-09-05 at 08:15, Hannu Krosing wrote:
 On Thu, 2002-09-05 at 11:34, Curt Sampson wrote:
  On 5 Sep 2002, Hannu Krosing wrote:

  If that
  trigger is acting as an integrety constraint on the base table,
  you might destroy the table's integrity.
 
 What I try to say is that you should have the same freedom with triggers
 that you have with select/insert/update/delete - you must be able to
 choose if the trigger is on the parent table ONLY or on parent and all
 children. 

Sounds like a mechanism to make the distinction between virtual (child
can override parent) and non-virtual (child is constrained by the
parent) constraints are needed.

After all, there are two basic needs for constraints.  One is for
relational integrity and the other is business rule integrity.  That is,
one seeks to ensure that the database makes sense in respect to the data
model (a shoe is a product) while the other is to enforce business rules
(products are never free).  Seems like the DBA should be able to dictate
which domain his constraint falls into in some manner.

 
 And you should be able to override a trigger for child table even if it
 is defined on parent as applying to all children - I guess that
 overriding by trigger _name_ would be what most people expect.
 

That's the reason I used virtual and non-virtual above.  If we think
using C++ idioms, the child is stuck with it if it's deemed
non-virtual.  Generally speaking, if someone designed something with
that expectation in mind, there's probably a good reason for it.  In
this case, we could assume that such non-virtual constraints would be to
help ensure proper RI.  Something that otherwise, IMO, would be tossed
out with the bath water.

 What I'm after here is dynamic (and automatic) row level dispach of the
 right function based on row type - so that for rows in CITIZEN or
 CIVIL_SERVANT the function kills_not_others(CITIZEN) will be used but
 for rows in MILITAY the kills_not_others(MILITARY) is used.

I think we're touching on some form of RTTI information here.  That is,
triggers and even functions may need to be able to dynamically determine
the row type that is actively being worked on.

If we're on the same page, I think that seemingly makes a lot of sense.

What about the concept of columns being public or private?  That is,
certain columns may not be inherited by a child?  Any thought to such a
concept?  Perhaps different types of table inheritance can be considered
in our model...has-a, is-a, etc...


Regards,

Greg Copeland




signature.asc
Description: This is a digitally signed message part


Re: [HACKERS] Add check constraint bug

2002-09-05 Thread Stephan Szabo


On Thu, 5 Sep 2002, Peter Eisentraut wrote:

 The following happens in latest CVS and a fresh database:

 create table test (a int);
 insert into test values (1);
 alter table test add column b text check (b  '');
 alter table test add check (a  0);
 alter table test add check (a  1);

 After the last command I get

 ERROR:  CheckConstraintFetch: unexpected record found for rel test

 and then the table seems to be wedged because any access to it will get
 the same error.


I don't have reasonable access to the machine at home for code purposes,
but it looks to me that the add column line is the one that's causing
the bug.  It's inserting a check constraint but not upping relchecks
which seems to work because it's zero and therefore doesn't even look, but
the add check is incrementing the count and inserting its constraint which
makes 2 real constraints and relchecks=1 which causes the error.

This is probably also why it forgets about the check constraint below
since relchecks is 0, but I didn't look.

Note that:
create table test(a int check (a3));
alter table test add column b text check(b'');
select * from test;

will error.



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

http://archives.postgresql.org



Re: [HACKERS] Inheritance

2002-09-05 Thread Hannu Krosing

On Fri, 2002-09-06 at 03:19, Greg Copeland wrote:
 On Thu, 2002-09-05 at 08:15, Hannu Krosing wrote:
  On Thu, 2002-09-05 at 11:34, Curt Sampson wrote:
   On 5 Sep 2002, Hannu Krosing wrote:
 
   If that
   trigger is acting as an integrety constraint on the base table,
   you might destroy the table's integrity.
  
  What I try to say is that you should have the same freedom with triggers
  that you have with select/insert/update/delete - you must be able to
  choose if the trigger is on the parent table ONLY or on parent and all
  children. 
 
 Sounds like a mechanism to make the distinction between virtual (child
 can override parent) and non-virtual (child is constrained by the
 parent) constraints are needed.
 
 After all, there are two basic needs for constraints.  One is for
 relational integrity and the other is business rule integrity.  That is,
 one seeks to ensure that the database makes sense in respect to the data
 model (a shoe is a product) while the other is to enforce business rules
 (products are never free).  Seems like the DBA should be able to dictate
 which domain his constraint falls into in some manner.

  And you should be able to override a trigger for child table even if
it
  is defined on parent as applying to all children - I guess that
  overriding by trigger _name_ would be what most people expect.
  
 
 That's the reason I used virtual and non-virtual above.  If we think
 using C++ idioms, the child is stuck with it if it's deemed
 non-virtual.  Generally speaking, if someone designed something with
 that expectation in mind, there's probably a good reason for it.  In
 this case, we could assume that such non-virtual constraints would be to
 help ensure proper RI.  Something that otherwise, IMO, would be tossed
 out with the bath water.

I agree to this.

What I described (making overriding decision solely in child) is
probably a bad idea.

  What I'm after here is dynamic (and automatic) row level dispach of the
  right function based on row type - so that for rows in CITIZEN or
  CIVIL_SERVANT the function kills_not_others(CITIZEN) will be used but
  for rows in MILITAY the kills_not_others(MILITARY) is used.
 
 I think we're touching on some form of RTTI information here.  That is,
 triggers and even functions may need to be able to dynamically determine
 the row type that is actively being worked on.

Should be easy if the row comes directly from a table : just use
tableoid column.

 If we're on the same page, I think that seemingly makes a lot of sense.
 
 What about the concept of columns being public or private?  That is,
 certain columns may not be inherited by a child?  Any thought to such a
 concept?  Perhaps different types of table inheritance can be considered
 in our model...has-a, is-a, etc...

I can't fit this in my mental model of table inheritance for two reasons

1) all parent table columns must be present in child

2) granting some right to parent should automatically allow selecting
from children

both are required for select/insert/update/delete to work on table and
its children (i.e. without ONLY)


But maybe i just need to think more about it ;)

--
Hannu












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



Re: [HACKERS] beta1 packaged

2002-09-05 Thread Hannu Krosing

On Fri, 2002-09-06 at 03:14, Marc G. Fournier wrote:
 0On Thu, 5 Sep 2002, Tom Lane wrote:
 
  Bruce Momjian [EMAIL PROTECTED] writes:
   OK, so if base isn't compilable, then what is it good for?  I don't see
   any add-on packages that would make it usable.
 
  AFAIR, the only reason for having the split packaging is to accommodate
  people who are downloading across flaky connections --- less to retry if
  your connection drops.  You still have to download all the data if you
  want to have a useful package, no?
 
 Correct ... even on high speed connections, I've had problems in the past
 getting large files to download, so it makes it easier if you only have to
 retry a part, instead of hte whole thing ...

Most modern ftp servers and clients support resuming aborted downloads,
no ?


[hannu@rh72 DL]$ ncftp ftp://ftp.postgresql.org/pub/source/v7.3beta/
NcFTP 3.1.3 (Mar 27, 2002) by Mike Gleason ([EMAIL PROTECTED]).
Connecting to
64.49.215.8... 

postgresql.org FTP server (lukemftpd 1.2 beta 1) ready.
Logging
in...  
  
Guest login ok, access restrictions apply.
Logged in to
ftp.postgresql.org.
 
Current remote directory is /pub/source/v7.3beta.
ncftp /pub/source/v7.3beta  get postgresql-test-7.3b1.tar.gz
postgresql-test-7.3b1.tar.gz:   ETA: 0:03  0.63/  1.02 MB  131.44 kB/s 

*** NB! I pressed ^C here

select: Interrupted system call
postgresql-test-7.3b1.tar.gz:  0.72/  1.02 MB  112.17 kB/s  
get postgresql-test-7.3b1.tar.gz: data transfer aborted by local user.
ncftp /pub/source/v7.3beta  get postgresql-test-7.3b1.tar.gz

The local file postgresql-test-7.3b1.tar.gz already exists.
Local:753768 bytes, dated Thu Sep 05 07:28:40 GMT-5 2002.
Remote:  1070154 bytes, dated Thu Sep 05 07:28:40 GMT-5 2002.

[O]verwrite?  [R]esume?  [A]ppend to?  [S]kip?  [N]ew Name?
[O!]verwrite all?  [R!]esume all?  [S!]kip all?  [C]ancel   R
postgresql-test-7.3b1.tar.gz:1.02 MB  112.59
kB/s  
ncftp /pub/source/v7.3beta 


---
Hannu




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



Re: [HACKERS] Add check constraint bug

2002-09-05 Thread scott.marlowe

On Thu, 5 Sep 2002, Stephan Szabo wrote:

 
 On Thu, 5 Sep 2002, Peter Eisentraut wrote:
 
  The following happens in latest CVS and a fresh database:
 
  create table test (a int);
  insert into test values (1);
  alter table test add column b text check (b  '');
  alter table test add check (a  0);
  alter table test add check (a  1);
 
  After the last command I get
 
  ERROR:  CheckConstraintFetch: unexpected record found for rel test
 
  and then the table seems to be wedged because any access to it will get
  the same error.

Just fyi, 7.2.1 does this too.


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



Re: [HACKERS] Add check constraint bug

2002-09-05 Thread Tom Lane

Peter Eisentraut [EMAIL PROTECTED] writes:
 The following happens in latest CVS and a fresh database:
 create table test (a int);
 insert into test values (1);
 alter table test add column b text check (b  '');

This bug's been there awhile I fear.  The failure occurs when
AlterTableAddColumn needs to add a check constraint AND the
new column causes AlterTableCreateToastTable to do its thing.

The reason there is a bug is that AlterTableCreateToastTable
gratuitously does a heap_mark4update, thereby selecting the un-updated
version of the pg_class tuple as its basis for modification (and
ignoring the HeapTupleSelfUpdated return code that warned that there
was a problem).

I've said before that I do not like heap_mark4update in catalog
manipulations, and here's a perfect example of why it's a bad idea.

regards, tom lane

---(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] I am done

2002-09-05 Thread Gavin Sherry

On Thu, 5 Sep 2002, Tom Lane wrote:

 Gavin Sherry [EMAIL PROTECTED] writes:
  Since the flawed code is now in beta, it will need to be fixed. Do people
  like the above solution or should I just revert to having a seperate
  function for each GUC variable affected?
 
 I do not see a good reason why fatal and off shouldn't be allowed
 values for all three message variables.  If we just did that, then you'd
 be back to sharable code.

This was one of my other suggestions: does it matter if people can set
client_min_messages to, say, PANIC -- since they wont get it anyway.

 BTW, is it a good idea for server_min_messages and
 log_min_error_statement to be PGC_USERSET?  I could see an argument that
 they should be PGC_SIGHUP, ie, settable only by the admin.  As it is,
 any user can hide his activity from the logs.  OTOH, in the past we've
 allowed anyone to change the debug level, and there haven't been
 complaints about it.
 
 There's some value in being able to kick the log level up a notch for
 a specific session, but knocking it down from the admin's default could
 be considered a bad thing.  I suppose we could invent a PGC_SIGHUP
 min_server_min_messages variable that sets a minimum value below which
 the user can't set server_min_messages.  Does that seem like a good
 idea, or overkill?

I think it would be important to implement it this way. I'm surprised this
hasn't come up before. Still, it'd be a 7.4 item.

 
 A compromise position would be to make these two variables PG_SUSET,
 ie settable per-session but only if you're superuser.

Sounds like a reasonably compromise. I cannot think of a reason why
people would be setting server_min_messages per session in
production. Perhaps this should be changed for 7.3?

 
   regards, tom lane
 

Gavin


---(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] Add check constraint bug

2002-09-05 Thread Bruce Momjian


Is there a TODO here?

---

Tom Lane wrote:
 Peter Eisentraut [EMAIL PROTECTED] writes:
  The following happens in latest CVS and a fresh database:
  create table test (a int);
  insert into test values (1);
  alter table test add column b text check (b  '');
 
 This bug's been there awhile I fear.  The failure occurs when
 AlterTableAddColumn needs to add a check constraint AND the
 new column causes AlterTableCreateToastTable to do its thing.
 
 The reason there is a bug is that AlterTableCreateToastTable
 gratuitously does a heap_mark4update, thereby selecting the un-updated
 version of the pg_class tuple as its basis for modification (and
 ignoring the HeapTupleSelfUpdated return code that warned that there
 was a problem).
 
 I've said before that I do not like heap_mark4update in catalog
 manipulations, and here's a perfect example of why it's a bad idea.
 
   regards, tom lane
 
 ---(end of broadcast)---
 TIP 2: you can get off all lists at once with the unregister command
 (send unregister YourEmailAddressHere to [EMAIL PROTECTED])
 

-- 
  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] I am done

2002-09-05 Thread Bruce Momjian

Gavin Sherry wrote:
 On Thu, 5 Sep 2002, Tom Lane wrote:
 
  Gavin Sherry [EMAIL PROTECTED] writes:
   Since the flawed code is now in beta, it will need to be fixed. Do people
   like the above solution or should I just revert to having a seperate
   function for each GUC variable affected?
  
  I do not see a good reason why fatal and off shouldn't be allowed
  values for all three message variables.  If we just did that, then you'd
  be back to sharable code.
 
 This was one of my other suggestions: does it matter if people can set
 client_min_messages to, say, PANIC -- since they wont get it anyway.


Seems it is OK and is equivalent to off.


  BTW, is it a good idea for server_min_messages and
  log_min_error_statement to be PGC_USERSET?  I could see an argument that
  they should be PGC_SIGHUP, ie, settable only by the admin.  As it is,
  any user can hide his activity from the logs.  OTOH, in the past we've
  allowed anyone to change the debug level, and there haven't been
  complaints about it.
  
  There's some value in being able to kick the log level up a notch for
  a specific session, but knocking it down from the admin's default could
  be considered a bad thing.  I suppose we could invent a PGC_SIGHUP
  min_server_min_messages variable that sets a minimum value below which
  the user can't set server_min_messages.  Does that seem like a good
  idea, or overkill?
 
 I think it would be important to implement it this way. I'm surprised this
 hasn't come up before. Still, it'd be a 7.4 item.

I think restricting it to super-user is better.

  A compromise position would be to make these two variables PG_SUSET,
  ie settable per-session but only if you're superuser.
 
 Sounds like a reasonably compromise. I cannot think of a reason why
 people would be setting server_min_messages per session in
 production. Perhaps this should be changed for 7.3?

I can imagine doing it so you can log something and look at it later.

-- 
  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] Multibyte support in oracle_compat.c

2002-09-05 Thread Tatsuo Ishii

 GNU gettext does its own encoding conversion.  It reads the program's
 character encoding from the LC_CTYPE locale and converts the material in
 the translation catalogs on the fly for output.  This is great in general,
 really, but for the postmaster it's a problem.  If LC_CTYPE is fixed for
 the cluster and you later on change your mind about the message language
 the it will be recoded into the character set that LC_CTYPE says.  And if
 that character set does not match the one that is set as the backend
 encoding internally then who knows what will happen when this stuff is
 recoded again as it's sent to the client.  Big, big mess.

Then in another word, it's completely broken. Sigh.
--
Tatsuo Ishii

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

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



Re: [HACKERS] Add check constraint bug

2002-09-05 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 Is there a TODO here?

I've committed a fix for the immediate problem.  I want to take a very
hard look at the other heap_mark4update calls, though.

regards, tom lane

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

http://archives.postgresql.org



Re: [HACKERS] 7.2 - 7.3 activity

2002-09-05 Thread Christopher Kings-Lynne

 Bruce Momjian [EMAIL PROTECTED] writes:
  Good question.  As far as lines of *.[chy] code in pgsql/src, you have:

   Date | Release  | Lines of code
  --+--+
...
2002-02-04  | 7.2  |   394,274
2002-??-??  | 7.3  |   453,282

  As you can see, a 15% increase over 7.2.

 And that's despite having removed a goodly amount of code to gborg.
 Do you have an idea how many lines of code were pushed out?  You'd
 have to add them back to get truly comparable numbers.

Probably a more accurate assessment would in fact be the number of _changes_
ie. the size of the diffs...

But really hard to figure out of course!

Chris


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

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



Re: [HACKERS] PL/Perl?

2002-09-05 Thread Larry Rosenman

On Thu, 2002-09-05 at 15:16, Larry Rosenman wrote:
 On Wed, 2002-09-04 at 19:41, Larry Rosenman wrote:
  On Wed, 2002-09-04 at 17:54, Tom Lane wrote:
   Larry Rosenman [EMAIL PROTECTED] writes:
I upgraded PostgreSQL to 7.2.1 from a 7.2beta (yeah, I know).  One of my
users requested plperl, so I got it to createlang, but it SIGSEGV's on
any simple perl. 
   
   I was seeing the same with perl 5.6.1 and PG 7.2.* on HPUX 10.20.
   However, I have just verified that perl 5.8.0 works okay with PG CVS tip
   (not much testing, but it handles a simple plperl function).  Could you
   see whether 5.8.0 plays any nicer on your setup?
  Need to check with my user, I'll let ya know.
  
 Well, I tried to install 5.8.0 on my 8.0.1 (beta) system, and blew cc up
 with an internal compiler error.  I'll have to wait for Caldera to fix
 that.  Sorry.
Well, this system has GCC as well, and GCC groked PERL 5.8.0, and, TA
DA, PL/PERL works with 5.8.0...

THanks all...
 
 
 -- 
 Larry Rosenman http://www.lerctr.org/~ler
 Phone: +1 972-414-9812 E-Mail: [EMAIL PROTECTED]
 US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
 
 
 ---(end of broadcast)---
 TIP 2: you can get off all lists at once with the unregister command
 (send unregister YourEmailAddressHere to [EMAIL PROTECTED])
 
-- 
Larry Rosenman http://www.lerctr.org/~ler
Phone: +1 972-414-9812 E-Mail: [EMAIL PROTECTED]
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749


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

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



Re: [HACKERS] Ok, I broke down...

2002-09-05 Thread Christopher Kings-Lynne

Whoot!  I was just thinking about writing such a tool.  Thanks.

Chris

 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Rod Taylor
 Sent: Friday, 6 September 2002 12:38 AM
 To: PostgreSQL-development
 Subject: [HACKERS] Ok, I broke down...
 
 
 In the process of upgrading a few systems for the Beta, I ended up
 writing a tool to upgrade the Foreign key, Unique, and Serial objects to
 their 7.3 version from the 7.2 version (may work on prior -- but not
 guarenteed).
 
 I imagine it'll fail miserably on mixed case, or names with spaces --
 but oh well.
 
 Anyway, goes through step by step asking the user if they wish to
 upgrade each element.  Lightly tested
 
 http://www.rbt.ca/postgresql/upgrade.shtml
 
 It assumes you've already dumped / upgraded / restored to 7.3 before
 running the script.
 
 Kinda slow, but safe to run more than once.
 
 
 ---(end of broadcast)---
 TIP 6: Have you searched our list archives?
 
 http://archives.postgresql.org
 


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



[HACKERS] Contrib installcheck problems

2002-09-05 Thread Christopher Kings-Lynne

OK,

I note that the regression tests for the following contribs are failing:

cube
intarray
seg

Chris


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

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



[HACKERS] 7.3 beta announcement

2002-09-05 Thread Bruce Momjian

I haven't see the beta announcement on the announce list.  Do we
announce it there?

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



  1   2   >