sequence's plpgsql

Started by Tim McAuleyover 22 years ago67 messageshackersgeneral
Jump to latest
#1Tim McAuley
mcauleyt@tcd.ie
hackersgeneral

Hi,

I've hit a little problem and was wondering if anyone might be able to
give some help.

Set-up:

- JBoss appserver using entity beans to access database
- Using sequence pattern to update primary keys for several tables.
Basically it is a method of getting primary keys without hitting the
database. It actually hits the database every 10th go and updates the
counter by 10 in the database.

(now the bold bit)
- We have a stored procedure that actually updates one of the sequences
as well. It increments one at a time using this code:

SELECT INTO NewPK pkIndex FROM PrimaryKeyGenerator WHERE Name =
SequenceName FOR UPDATE;
UPDATE PrimaryKeyGenerator SET pkIndex = NewPK + 1 WHERE Name =
SequenceName;

I believe the "FOR UPDATE" won't actually do any good inside a plpgsql
call. Am I right?

Problem:

I have just called this stored procedure from outside the system using
10 threads and have got some errors due to duplicate entries on the
unique index. If it was only the stored procedures using this pk
generator then I could use a postgresql sequence but it isn't. If the
entity beans were to use the sequence, they'd have to make a database
call every time.

Any thoughts?

I'm thinking I may need to switch to using a sequence because the entity
beans don't actually update this particular table very often but would
prefer not to for portability reasons.

Thanks,

Tim

#2Richard Huxton
dev@archonet.com
In reply to: Tim McAuley (#1)
hackersgeneral
Re: sequence's plpgsql

On Wednesday 24 September 2003 17:40, Tim McAuley wrote:

Hi,

I've hit a little problem and was wondering if anyone might be able to
give some help.

Set-up:

- JBoss appserver using entity beans to access database
- Using sequence pattern to update primary keys for several tables.
Basically it is a method of getting primary keys without hitting the
database. It actually hits the database every 10th go and updates the
counter by 10 in the database.

You might want to try just using sequences - PG does some caching of generated
values for you. Sorry - can't remember how you alter the cache size, but try
SELECT * FROM my_sequence;
to see the details of its settings.

Use sequences, and from your sequence-holding class do something like:
SELECT nextval('myseq'),nextval('myseq'),...10 times...
That will give you a block of 10 sequence values in one go, and off you go.

If you'd rather have the values in one column, create a single-column table
"seq_count" and populate with values 1..10 then:
SELECT nextval('myseq'),seq_count.id FROM seq_count;

That any use?
--
Richard Huxton
Archonet Ltd

#3Tim McAuley
mcauleyt@tcd.ie
In reply to: Richard Huxton (#2)
hackersgeneral
Re: sequence's plpgsql

Richard Huxton wrote:

On Wednesday 24 September 2003 17:40, Tim McAuley wrote:

Hi,

I've hit a little problem and was wondering if anyone might be able to
give some help.

Set-up:

- JBoss appserver using entity beans to access database
- Using sequence pattern to update primary keys for several tables.
Basically it is a method of getting primary keys without hitting the
database. It actually hits the database every 10th go and updates the
counter by 10 in the database.

You might want to try just using sequences - PG does some caching of generated
values for you. Sorry - can't remember how you alter the cache size, but try
SELECT * FROM my_sequence;
to see the details of its settings.

Use sequences, and from your sequence-holding class do something like:
SELECT nextval('myseq'),nextval('myseq'),...10 times...
That will give you a block of 10 sequence values in one go, and off you go.

If you'd rather have the values in one column, create a single-column table
"seq_count" and populate with values 1..10 then:
SELECT nextval('myseq'),seq_count.id FROM seq_count;

That any use?

Thanks for that. I investigated using your suggestion but actually
discovered that these tables were only being updated by the stored
procedures so this meant it was safe to use sequences there. I have now
set these up however I am now getting "deadlock detection" errors.

I see from a previous email on the list that someone was able to get
decent debug out of the locks, i.e.

Aug 10 14:19:36 thunder postgres[18735]: [2-1] ERROR: deadlock detected

Aug 10 14:19:36 thunder postgres[18735]: [2-2] DETAIL: Proc 18735 waits
for AccessExclusiveLock on relation 18028 of database 17140; blocked by

How can I get this? I must be overlooking something because I've set the debug level to debug5 and still only get a single message saying
ERROR: deadlock detected
DEBUG: AbortCurrentTransaction

I've switched from using Postgresql 7.3.2 on a linux server to 7.3.4 running on my own machine through cygwin.

I've got output from "select * from pg_locks;" but am not getting very far with this. The only locks marked as false do not give a table oid, only the transaction id. i.e.
| | 11515901 | 30440 | ShareLock | f

Will continue working away to see if I can locate the deadlock.

Tim

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tim McAuley (#3)
hackersgeneral
Re: sequence's plpgsql

Tim McAuley <mcauleyt@tcd.ie> writes:

I see from a previous email on the list that someone was able to get
decent debug out of the locks, i.e.

Aug 10 14:19:36 thunder postgres[18735]: [2-1] ERROR: deadlock detected
Aug 10 14:19:36 thunder postgres[18735]: [2-2] DETAIL: Proc 18735 waits
for AccessExclusiveLock on relation 18028 of database 17140; blocked by

How can I get this?

This display is a new feature in 7.4. Can you try your problem on a
7.4 beta release?

regards, tom lane

#5Tim McAuley
mcauleyt@tcd.ie
In reply to: Tom Lane (#4)
hackersgeneral
Re: sequence's plpgsql

I see from a previous email on the list that someone was able to get
decent debug out of the locks, i.e.

Aug 10 14:19:36 thunder postgres[18735]: [2-1] ERROR: deadlock detected
Aug 10 14:19:36 thunder postgres[18735]: [2-2] DETAIL: Proc 18735 waits
for AccessExclusiveLock on relation 18028 of database 17140; blocked by

How can I get this?

This display is a new feature in 7.4. Can you try your problem on a
7.4 beta release?

Ah, that would make sense.

Another question now. I am unable to compile Postgresql 7.4 beta 3 under
cygwin (Windows 2K, using cgyipc 2).

I am getting the error:
"
creating information schema... ERROR: end-of-copy marker does not match
previous newline style
CONTEXT: COPY FROM, line 361
"

Any ideas?

Thanks,

Tim

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tim McAuley (#5)
hackersgeneral
initdb failure (was Re: [GENERAL] sequence's plpgsql)

Tim McAuley <mcauleyt@tcd.ie> writes:

Another question now. I am unable to compile Postgresql 7.4 beta 3 under
cygwin (Windows 2K, using cgyipc 2).

I am getting the error:
"
creating information schema... ERROR: end-of-copy marker does not match
previous newline style
CONTEXT: COPY FROM, line 361
"

That's interesting. COPY is complaining because the \. terminator in
the file it's been fed has a different kind of newline after it than
the newlines earlier in the file (LF vs CR/LF, no doubt). The part
of the initdb script that must be causing this is

echo "COPY information_schema.sql_features (feature_id, feature_name, sub_feature_id, sub_feature_name, is_supported, comments) FROM STDIN;"
cat "$datadir"/sql_features.txt
echo "\."
) \
| "$PGPATH"/postgres $PGSQL_OPT template1 > /dev/null || exit_nicely
echo "ok"

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

regards, tom lane

#7Matthew T. O'Connor
matthew@zeut.net
In reply to: Tom Lane (#6)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

On Fri, 2003-09-26 at 11:01, Tom Lane wrote:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

Does cygwin still have the install time option of what type of line feed
to use? I know at one point (a long time ago) when I installed cygwin,
and chose windows line feeds (CRLF) that it caused problems with several
applications. So the problem might be that with CYGWIN you could have
either type of line feed depending on what the user selected during
install.

#8Michael Meskes
meskes@postgresql.org
In reply to: Tom Lane (#6)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

On Fri, Sep 26, 2003 at 11:01:34AM -0400, Tom Lane wrote:

I am getting the error:
"
creating information schema... ERROR: end-of-copy marker does not match
previous newline style
CONTEXT: COPY FROM, line 361
"

That's interesting. COPY is complaining because the \. terminator in
the file it's been fed has a different kind of newline after it than
the newlines earlier in the file (LF vs CR/LF, no doubt). The part

Well actually I'm not so sure. I tried installing 7.4 from Oliver's
Debian packages and experienced exactly the same. We have yet to find
out why, but I doubt newlines changed between his Debian system and mine.

of the initdb script that must be causing this is

echo "COPY information_schema.sql_features (feature_id, feature_name, sub_feature_id, sub_feature_name, is_supported, comments) FROM STDIN;"
cat "$datadir"/sql_features.txt
echo "\."
) \
| "$PGPATH"/postgres $PGSQL_OPT template1 > /dev/null || exit_nicely
echo "ok"

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

Putting the "\." line into sql_features.txt did help me, too.

Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!

#9Peter Eisentraut
peter_e@gmx.net
In reply to: Tom Lane (#6)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

--
Peter Eisentraut peter_e@gmx.net

#10Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#9)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Peter Eisentraut wrote:

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

This error is coming from the new 7.4 COPY code that allows \r\n as a
line terminator. Requiring the end-of-line to be consistent seemed to
be the only way to be sure we were not eating a literal carriage return
in the data stream. Let's put the "\." into sql_features.txt and see if
that fixes it, or can we use echo -c "\.\n" in initdb?

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#11Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#9)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Peter Eisentraut <peter_e@gmx.net> writes:

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

Yeah, I was wondering whether you wouldn't propose dropping the newline
consistency check. I'm not very comfortable with that, but maybe we
should. Bruce?

regards, tom lane

#12Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#11)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Tom Lane wrote:

Peter Eisentraut <peter_e@gmx.net> writes:

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

Yeah, I was wondering whether you wouldn't propose dropping the newline
consistency check. I'm not very comfortable with that, but maybe we
should. Bruce?

I posted on that a few minutes ago. Yea, we can drop it, but we risk
eating carraige returns as data values. I am not sure how consistently
we output literal carriage returns in old dumps, nor how many apps
produce on literal carriage returns in COPY. If we conditionally eat
them, we run the risk of discarding some of their data without warning.
Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#13Andrew Dunstan
andrew@dunslane.net
In reply to: Bruce Momjian (#12)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Bruce Momjian wrote:

I posted on that a few minutes ago. Yea, we can drop it, but we risk
eating carraige returns as data values. I am not sure how consistently
we output literal carriage returns in old dumps, nor how many apps
produce on literal carriage returns in COPY. If we conditionally eat
them, we run the risk of discarding some of their data without warning.
Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

Would the best longterm solution be to require escaping CR in a data
value? (Yes I know this might cause backwards compatibility problems, at
least for a while).

cheers

andrew

#14Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#12)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

I like the idea of reducing the newline consistency check to a warning.
There is one thing we'd have to watch for though (it's already an issue
but would become a bigger one): client-side COPY code had better be
prepared to absorb backend Notice messages while processing COPY IN.
Currently libpq doesn't read input data at all during a COPY IN loop,
which means that if the COPY generates more than a few K of warning
messages, the backend gets blocked on a full pipe and the whole
operation locks up. I have been meaning to fix that in libpq anyway,
but what other client libraries might have the same issue? Anyone know
whether JDBC would need a similar fix?

regards, tom lane

#15Bruce Momjian
bruce@momjian.us
In reply to: Andrew Dunstan (#13)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Andrew Dunstan wrote:

Bruce Momjian wrote:

I posted on that a few minutes ago. Yea, we can drop it, but we risk
eating carraige returns as data values. I am not sure how consistently
we output literal carriage returns in old dumps, nor how many apps
produce on literal carriage returns in COPY. If we conditionally eat
them, we run the risk of discarding some of their data without warning.
Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

Would the best longterm solution be to require escaping CR in a data
value? (Yes I know this might cause backwards compatibility problems, at
least for a while).

Yes, we do have that documented, but we supported it in earlier
releases, so we can't be sure who is using it, and it probably exists in
older dumps.

The particular problem is not literal carriage returns, which we don't
support any more, but carriage returns that happen to be at the end of
the line, right up against \n. If we relax this, we will conditionally
strip off the \r.

In fact, we can do that now:

create table xx(text);

Right now, if all the column value end with \r, we will silently eat it.
But if some have \r and some do not, we will throw an error. (Above,
when I say \r, I mean literal carriage return, not the "\r" string,
which we have always handled cleanly.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#16Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#14)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Tom Lane wrote:

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

I like the idea of reducing the newline consistency check to a warning.
There is one thing we'd have to watch for though (it's already an issue
but would become a bigger one): client-side COPY code had better be
prepared to absorb backend Notice messages while processing COPY IN.
Currently libpq doesn't read input data at all during a COPY IN loop,
which means that if the COPY generates more than a few K of warning
messages, the backend gets blocked on a full pipe and the whole
operation locks up. I have been meaning to fix that in libpq anyway,
but what other client libraries might have the same issue? Anyone know
whether JDBC would need a similar fix?

Wow, that sounds big. The ERROR will only happen once, while the
WARNING could happen a lot --- we could add code to throw the WARNING
only once per COPY command --- that would probably make sense. I don't
see how we could get all clients to handle this for 7.4, particularly
clients from previous releases.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#17Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#9)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Peter Eisentraut wrote:

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

Here is a little diff to make initdb behave if we decide to keep the
COPY check.

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

Attachments:

/bjm/difftext/plainDownload+5-5
#18Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#16)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Bruce Momjian <pgman@candle.pha.pa.us> writes:

... we could add code to throw the WARNING
only once per COPY command --- that would probably make sense.

Seems like a bit of a kluge, but perhaps the best compromise. It would
be quite likely that you'd get the same warning on many lines of a COPY,
and that probably isn't really going to help people.

regards, tom lane

#19scott.marlowe
scott.marlowe@ihs.com
In reply to: Bruce Momjian (#12)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

On Fri, 26 Sep 2003, Bruce Momjian wrote:

Tom Lane wrote:

Peter Eisentraut <peter_e@gmx.net> writes:

Tom Lane writes:

so it appears that cygwin's "echo" generates a different newline style
than what got put into sql_features.txt. A possible way to fix this is
to put the "\." line into sql_features.txt, but maybe there's a cleaner
answer. Peter, any thoughts?

There's no clean answer to this on Cygwin. This specific case is just a
little problem that we could solve locally, but in general you'll just end
up annoying people if you require them to use consistent line endings on
Cygwin.

Yeah, I was wondering whether you wouldn't propose dropping the newline
consistency check. I'm not very comfortable with that, but maybe we
should. Bruce?

I posted on that a few minutes ago. Yea, we can drop it, but we risk
eating carraige returns as data values. I am not sure how consistently
we output literal carriage returns in old dumps, nor how many apps
produce on literal carriage returns in COPY. If we conditionally eat
them, we run the risk of discarding some of their data without warning.
Perhaps we can throw a warning rather than an error, and adjust initdb
to be consistent.

I'm running into issues where 7.4's pg_dump/pg_dumpall from a 7.2 database
to a 7.4beta3 database is producing some errors like this:

ERROR: literal newline found in data
HINT: Use "\n" to represent newline.
CONTEXT: COPY FROM, line 59

ERROR: literal carriage return found in data
HINT: Use "\r" to represent carriage return.
CONTEXT: COPY FROM, line 41

These show up with little or no context, only the "line number" of the
dump file. Since I'm wrapping these up in pg_dumpall, I don't have the
dump file so I don't know where the error is really occuring. It would be
nice to have such occurances echo the table / row they are getting the
error on, or maybe just the first 20 or so characters, so they'd be easier
to identify.

Is this related to this issue?

#20Peter Eisentraut
peter_e@gmx.net
In reply to: Tom Lane (#11)
hackersgeneral
Re: initdb failure (was Re: [GENERAL] sequence's plpgsql)

Tom Lane writes:

Yeah, I was wondering whether you wouldn't propose dropping the newline
consistency check. I'm not very comfortable with that, but maybe we
should. Bruce?

I don't mind if we keep it on pure-POSIX platforms. But one of the nicer
developments on Windows in recent(?) times is that you can actually use
any kind of line separator and most programs still work correctly (with
the notable exception of Notepad). The drawback of this is that you never
really know what kind of line separator a program is actually going to
write, especially when you start mixing Cygwin, MinGW, and native. So
this newline consistency check is not only going to be pretty annoying on
Windows, it's going to cancel a feature of the operating system
environment.

--
Peter Eisentraut peter_e@gmx.net

#21Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#18)
hackersgeneral
#22Tom Lane
tgl@sss.pgh.pa.us
In reply to: scott.marlowe (#19)
hackersgeneral
#23Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#22)
hackersgeneral
#24Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#20)
hackersgeneral
#25Andrew Dunstan
andrew@dunslane.net
In reply to: Tom Lane (#24)
hackersgeneral
#26scott.marlowe
scott.marlowe@ihs.com
In reply to: Tom Lane (#22)
hackersgeneral
#27Bruce Momjian
bruce@momjian.us
In reply to: scott.marlowe (#26)
hackersgeneral
#28scott.marlowe
scott.marlowe@ihs.com
In reply to: Bruce Momjian (#27)
hackersgeneral
#29Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#27)
hackersgeneral
#30Bruce Momjian
bruce@momjian.us
In reply to: scott.marlowe (#28)
hackersgeneral
#31Michael Meskes
meskes@postgresql.org
In reply to: Tom Lane (#24)
hackersgeneral
#32scott.marlowe
scott.marlowe@ihs.com
In reply to: Bruce Momjian (#30)
hackersgeneral
#33scott.marlowe
scott.marlowe@ihs.com
In reply to: Bruce Momjian (#30)
hackersgeneral
#34Peter Eisentraut
peter_e@gmx.net
In reply to: scott.marlowe (#26)
hackersgeneral
#35Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#29)
hackersgeneral
#36scott.marlowe
scott.marlowe@ihs.com
In reply to: Peter Eisentraut (#34)
hackersgeneral
#37scott.marlowe
scott.marlowe@ihs.com
In reply to: Peter Eisentraut (#35)
hackersgeneral
#38Larry Rosenman
ler@lerctr.org
In reply to: scott.marlowe (#37)
hackersgeneral
#39Peter Eisentraut
peter_e@gmx.net
In reply to: scott.marlowe (#36)
hackersgeneral
#40scott.marlowe
scott.marlowe@ihs.com
In reply to: Peter Eisentraut (#39)
hackersgeneral
#41scott.marlowe
scott.marlowe@ihs.com
In reply to: scott.marlowe (#40)
hackersgeneral
#42Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#39)
hackersgeneral
#43Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#35)
hackersgeneral
#44Peter Eisentraut
peter_e@gmx.net
In reply to: scott.marlowe (#40)
hackersgeneral
#45Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tom Lane (#43)
hackersgeneral
#46Peter Eisentraut
peter_e@gmx.net
In reply to: Tom Lane (#42)
hackersgeneral
#47Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#34)
hackersgeneral
#48Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#35)
hackersgeneral
#49Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#46)
hackersgeneral
#50Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#9)
hackersgeneral
#51Jon Jensen
jon@endpoint.com
In reply to: Tom Lane (#49)
hackersgeneral
#52Kris Jurka
books@ejurka.com
In reply to: Tom Lane (#14)
hackersgeneral
#53Bruce Momjian
bruce@momjian.us
In reply to: Jon Jensen (#51)
hackersgeneral
#54Oliver Elphick
olly@lfix.co.uk
In reply to: Bruce Momjian (#47)
hackersgeneral
#55Peter Eisentraut
peter_e@gmx.net
In reply to: Jon Jensen (#51)
hackersgeneral
#56Peter Eisentraut
peter_e@gmx.net
In reply to: Oliver Elphick (#54)
hackersgeneral
#57Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#50)
hackersgeneral
#58Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#56)
hackersgeneral
#59Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#58)
hackersgeneral
#60Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#57)
hackersgeneral
#61Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#59)
hackersgeneral
#62Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#60)
hackersgeneral
#63Alvaro Herrera
alvherre@dcc.uchile.cl
In reply to: Bruce Momjian (#61)
hackersgeneral
#64Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#62)
hackersgeneral
#65Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#55)
hackersgeneral
#66Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#64)
hackersgeneral
#67Chris Browne
cbbrowne@acm.org
In reply to: Peter Eisentraut (#35)
hackersgeneral