1. 08 Dec, 2003 2 commits
  2. 07 Dec, 2003 1 commit
  3. 01 Dec, 2003 2 commits
    • Bruce Momjian's avatar
      I've run across a pretty serious problem with pg_autovacuum. · ea4b9f14
      Bruce Momjian authored
      pg_autovacuum looses track of any table that's ever been truncated
      (possibly other situations too).   When i truncate a table it gets a
      new relfilenode in pg_class.  This is a problem because pg_autovacuum
      assumes pg_class.relfilenode will join to pg_stats_all_tables.relid.
      pg_stats_all_tables.relid is actallly the oid from pg_class, not the
      relfilenode.   These two values start out equal so pg_autovacuum works
      initially, but it fails later on because of this incorrect assumption.
      
      This patch fixes that problem.  Applied to HEAD and 7.4.X.
      
      Brian Hirt
      ea4b9f14
    • Bruce Momjian's avatar
      I noticed in the 7.4 release that in contrib/pg_autovacuum, args->logfile is · 15b5d6cf
      Bruce Momjian authored
      not initialized if a log file is not specified on the command line.  This
      causes an immediate segfault on systems that fill allocated memory with some
      value other than zero (my FreeBSD machine uses 0xD0).
      
      Several crashes later I discovered that args->user, password, host, and port
      are also used without being initialized.
      
      This doesn't appear to be fixed in CVS and I came up empty on a mailing list
      search -- hope it hasn't been reported already.
      
      Craig Boston
      15b5d6cf
  4. 10 Oct, 2003 1 commit
  5. 13 Sep, 2003 2 commits
    • Bruce Momjian's avatar
      pgindent C file, per patch request. · 2056f8a7
      Bruce Momjian authored
      2056f8a7
    • Bruce Momjian's avatar
      > OK, well as we wait on the fix for the stats system, let me submit my · 3bf080da
      Bruce Momjian authored
      > patch for pg_autovacuum.  This patch assumes that the stats system will
      > be fixed so that all inserts, updates and deletes performed on shared
      > tables reguardless of what database those commands were executed from,
      > will show up in the stats shown in each database.
      
      I had to make a further change to this to take quotes off the 'last
      ANALYZE' in order for it to not overquote the relation name, so
      there's a _little_ work left to get it to play well.
      
      I have deployed it onto several boxes that should be doing some
      vacuuming over the weekend, and it is now certainly hitting pg_
      tables.
      
      I would like to present a CVS-oriented patch; unfortunately, I had to
      change the indentation patterns when editing some of it :-(.  The
      following _may_ be good; not sure...
      
      Matthew T. O'Connor
      Christopher Browne
      3bf080da
  6. 11 Sep, 2003 1 commit
    • Bruce Momjian's avatar
      > It quotes table names for vacuum and analyze, and uppercases the · 3d48045a
      Bruce Momjian authored
      > keywords for clarity.
      
      Yeah, this is basically what I meant, sorry I didn't get to it quicker.
      
      However, I tested it out a little and the patch you made doesn't work
      because it produces commands like:
      
      VACUUM ANALYZE "public.FooBar"
      
      Which doesn't work, so I made my own patch that creates commands like:
      
      VACUUM ANALYZE "public"."FooBar"
      
      This allows for mixed case schema names as well as tables.
      
      Adam, can you please give this a test as you are the person who caught
      the bug in the first place.
      
      Thanks,
      
      Matthew T. O'Connor
      3d48045a
  7. 10 Sep, 2003 1 commit
  8. 04 Aug, 2003 1 commit
  9. 12 Jun, 2003 1 commit
    • Bruce Momjian's avatar
      This patch updates pg_autovacuum in several ways: · 9243664d
      Bruce Momjian authored
      * A few bug fixes
      * fixes solaris compile and crash issue
      * decouple vacuum analyze and analyze thresholds
      * detach from tty (dameonize)
      * improved logging layout
      * more conservative default configuration
      * improved, expanded and updated README
      
      please apply and 1st convenience, or before code freeze which ever comes
      first :-)
      
      At this point I think I have brought pg_autovacuum and its client side
      design as far as I think it should go.  It works, keeping file sizes in
      check, helps performance and give the administrator a fair amount
      flexibility in configuring it.
      
      Next up is to do the FSM based design that is integrated into the back
      end.
      
      p.s. Thanks to Christopher Browne for his help.
      
      Matthew T. O'Connor
      9243664d
  10. 20 Mar, 2003 1 commit
    • Bruce Momjian's avatar
      I have updated my pg_autovacuum program (formerly pg_avd, the name · bd18c50b
      Bruce Momjian authored
      changed as per discussion on the patches list).
      
      This version should be a good bit better.  It addresses all the issues
      pointed out by Neil Conway. Vacuum and Analyze are now handled
      separately.  It now monitors for xid wraparound.  The number of database
      connections and queries has been significantly reduced compared the
      previous version.  I have moved it from bin to contrib.  More detail on
      the changes are in the TODO file.
      
      I have not tested the xid wraparound code as I have to let my AthlonXP
      1600 run select 1 in a tight loop for approx. two days in order to
      perform the required 500,000,000 xacts.
      
      Matthew T. O'Connor
      bd18c50b