I have a near-real-time system writing into a Postgres 7.4.2 database on the order of 340 million rows per day in about 300 million transactions. So we quickly bump up against the XID wrap-around issue. To address this, we divide the tables into 24-hour periods. Once we roll over to a new period, the old tables are read-mostly. We then run vacuum every 24 hours. The problem is that we are writing rows every 1/15 second, 24x7. There is no down time. I'm wondering if there is any way to avoid vacuuming the old tables over and over. The documentation seems to indicate that a full vacuum is needed to avoid XID wrap-around. Can vacuum freeze help me? Thanks, --Ian