PostgreSQL

PostgreSQL

SFPUG: Operator Exclusion Constraints

The archive video for the December 8, 2009 SFPUG meeting is now available:

For downloading, the direct link is here.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

SFPUG: Continuent Tungsten with PostgreSQL

The archive video for the November 10, 2009 SFPUG meeting is now available:

For downloading, the direct link is here.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

Git vs Mercurial

No, I’m not going to write another Git vs Mercurial post that really digs into them, because… well, if you are using one or the other, it is probably for reasons that don’t have much to do with your preferences.

In strictly my opinion, for personal use, I like Mercurial. For projects that use Git, I use Git.

The Mighty GUCS: A guide to the essential PostgreSQL settings you need to know

The archive video for the October 13, 2009 SFPUG meeting is now available:

For downloading, the direct link is here, and it is also available on Vimeo if that’s more your thing.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

Getting PostgreSQL 8.4 to only listen on Unix sockets

The default installation of PostgreSQL listens on 127.0.0.1 (the local loopback address) and on Unix sockets. The controlling parameter, listen_addresses, isn’t documented to have a setting that just listens on sockets, and not the loopback address.

As it happens, such a setting exists:

1listen_addresses=''

Among other things, this appears to prevent local instances of

Only NATURAL: JOIN clauses vs WHERE conditions

When I learned SQL, I was taught that the way to do a join was with a WHERE clause. For example, if you have orders:

1CREATE TABLE orders (
2 order_id bigserial PRIMARY KEY,
3 customer_id bigint REFERENCES customers(customer_id),
4 ...
5)

and order lines:

1CREATE TABLE order_lines

SFPUG: Statistics and Postgres – How the Planner Sees Your Data

The video for the September 8, 2009 SFPUG meeting is now available:

For downloading, the direct link is here.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

SFPUG: Windowing and Common Table Expressions

The video for the August 11, 2009 SFPUG meeting is now available:

For downloading, the direct link is here.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

NULL By Mouth

Jeff Davis has written a superb article about the problems with NULL in SQL. He has it exactly right when he says:

I think the best way to think about NULL is as a Frankenstein monster of several philosophies and systems stitched together by a series of special cases.

The closest single operational definition of NULL I

Video available for PGDay SJC ‘09

For the last few months, I've been honored to videotape PostgreSQL events. The last one was PGDay San Jose 2009, which was the day before the start of the 2009 OSCON. I didn't attend OSCON this year, in part because one of the great pleasures of OSCON for me was getting to go to Portland; visiting San Jose just isn't