I looked into this and I see a number of cases where pg_autovacuum calls
send_query(), but doesn't test for a NULL return from the function.

Matthew, would you look into this and submit a patch?  Thanks.

---------------------------------------------------------------------------

Jeff Boes wrote:
> Recently I installed and started pg_autovacuum against my new Pg 7.4.1 
> installation. We use a fairly large number of temporary tables within an 
> application (that is, several copies of this application may be running, 
> and each creates and drops several temp tables as they cycle through 
> their workload). Here's what I think happened, based on the log 
> (pg_autovacuum's and the postmaster's):
> 
> pg_autovacuum.log:
> [2004-02-15 08:10:01 AM] Performing: ANALYZE "pg_temp_13"."tmp_targs"
> [2004-02-15 08:10:01 AM] Can not refresh statistics information from the 
> database nexcerpt.
> [2004-02-15 08:10:01 AM] The error is [ERROR:  relation 
> "pg_temp_13.tmp_targs" does not exist
> 
> postmaster.log:
> 2004-02-15 08:10:01 [31563] ERROR:  relation "pg_temp_13.tmp_targs" does 
> not exist
> 2004-02-15 08:10:01 [31563] LOG:  unexpected EOF on client connection
> 
> 
> It appears that pg_autovacuum collected the name of a temp table, and 
> later tried to analyze it. The table was gone by then, and this caused 
> the daemon to exit. As this happened on a Sunday morning, my weekend 
> experiment to see how pg_autovacuum would maintain our test database was 
> rather spoiled ... 8-(
> 
> -- 
> Jeff Boes                                      vox 269.226.9550 ext 24
> Database Engineer                                     fax 269.349.9076
> Nexcerpt, Inc.                                 http://www.nexcerpt.com
>            ...Nexcerpt... Extend your Expertise
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
> 

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

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to