"Slony-I is undoubtedly our most popular replication tool. It supports Master-Slave High Availability Replication. However, there are a number of other solutions, such as dbMirror, eRServer, pgPool, C-JDBC, and the proprietary Mammoth Replicator, all of which are in wide use because they solve different replication problems than Slony-I does. Replication is not a single solution for a single problem; it is …
Blog
R.I.P. PostgreSQL (Mammoth) Replicator
Looking for an Intermediate Sysadmin + Junior DBA
Command Prompt has provided PostgreSQL support, development, and hosting since 1997. We are looking for another person to join our stellar group of PostgreSQL systems experts.
We seek someone who has a deep knowledge of at least one UNIX-like system, and who knows how to manage heterogeneous systems well. You can demonstrate strong skills in basic …
Automatically pulling into a committer's Git repository
I was a bit unhappy because I couldn't keep my "bare" Git repository up-to-date unattended — I needed to be at my workstation to be able to do a git fetch, because it needs my SSH passphrase.
I didn't have this problem with CVS because I kept an rsync copy of the anonymous CVS repository, from which my regular trees where checked out. (My committer's checkouts were separate, which …
Fixing foreign key deadlocks, part 2 revisited
While trying to implement SELECT FOR KEY LOCK at the lock manager level, I stumbled across the problem that I need to represent the lock faithfully in the lock manager's terms. And since I previously mentioned that FOR KEY LOCK would conflict with FOR SHARE, I get in trouble — it's not easy to see which lock mode to use (if there is one, which I doubt).
So I …
Fixing foreign key deadlocks, part 2
In the previous article, I explained the problem with foreign key checks checks obtaining too strong of a lock, and promised that we would be attempting to fix it.
Here is my proposal:
- Create a new SELECT locking clause. For now, we're calling it SELECT FOR KEY LOCK
- This will acquire a new type of lock in the tuple, dubbed a "keylock".
- This lock will conflict with DELETE, …
Fixing foreign key deadlocks
I've been commissioned to work on foreign keys. More specifically, on the problem that when foreign keys are verified, they sometimes obtain locks that are stronger than really needed. This causes some operations to block unnecessarily and, perhaps more aggravating, some other operations to deadlock.
This problem has been known for a very long time, and it affects many users to varying degrees. The most recent detailed discussion about this …
Node and Postgres
Replication Poll results
| Q | responses | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | In what waydo you use PostgreSQL? | |||||||||
| Development Only | 72 | |||||||||
| As a hobby (or personaldevelopment) | 106 | |||||||||
| Professionally | 325 | |||||||||
| 2 | What versionof PostgreSQL are you running? | |||||||||
| 8.3 | 117 | |||||||||
| 9.0 | 175 | |||||||||
| 8.2 | 50 | |||||||||
| 8.1 | 36 | |||||||||
| 8.4 | 251 | |||||||||
| 3 | Do you use or plan to use … | |||||||||
The old Berkeley Postgres code
Some days ago, I was reading some patch from the in-progress commitfest, and happened to notice this comment in src/include/tcopprot.h:
* This file was created so that other c files could get the two * function prototypes without having to include tcop.h which single * handedly includes the whole f*cking tree -- mer 5 Nov. 1991
The weird thing about this was that there's no tcop.h file on the …
MySQL: The Elephant in the room (Facebook?), oh and me.
Outside of Rob's points which I found valid (you can see it in the video) the one thing that bugged me is the aggressiveness of Facebook. It …