Logging temp file useage ... a little advice would be appreciated
So I've got this patch (attached, against 8.2)
The goal is to track temp file usage as an aid to server tuning (such as
work_mem)
Most of the patch seems to work just dandy, except I'm getting weird
sizes reported:
2006-12-29 17:46:21 EST [45558]: [575-1] LOG: temp file: size 140737488343776 path base/32861/pgsql_tmp/pgsql_tmp45558.554
Seems a bit odd to have a 140T file on a 130G partition ...
I'm working on a FreeBSD 6.2 amd64 system. The headers show stat.st_size to
be of type off_t, which appears to be a 64-bit int. I figured that %ld
would be the correct format.
Am I hitting something such as file sparseness? Is this entire endeavour
doomed from the start? Or am I just making some sort of dumb mistake?
Any pointers are welcome.
--
Bill Moran
Collaborative Fusion Inc.
Attachments:
trace_log_files.difftext/x-diff; charset=iso-8859-1; name=trace_log_files.diffDownload+28-4
On Fri, 2006-12-29 at 17:53 -0500, Bill Moran wrote:
So I've got this patch (attached, against 8.2)
The goal is to track temp file usage as an aid to server tuning (such as
work_mem)Most of the patch seems to work just dandy, except I'm getting weird
sizes reported:2006-12-29 17:46:21 EST [45558]: [575-1] LOG: temp file: size 140737488343776 path base/32861/pgsql_tmp/pgsql_tmp45558.554
Seems a bit odd to have a 140T file on a 130G partition ...
The fd can be set to VFD_CLOSED just above where you've patched.
Try stat-ing the filename instead, as the unlink does.
Your patches should be diff -c format, submitted to -patches, please.
--
Simon Riggs
EnterpriseDB http://www.enterprisedb.com
Perhaps the file is not open at the time you are doing the fstat().
Also, context diffs (diff -c) are clearer for us.
---------------------------------------------------------------------------
Bill Moran wrote:
So I've got this patch (attached, against 8.2)
The goal is to track temp file usage as an aid to server tuning (such as
work_mem)Most of the patch seems to work just dandy, except I'm getting weird
sizes reported:2006-12-29 17:46:21 EST [45558]: [575-1] LOG: temp file: size 140737488343776 path base/32861/pgsql_tmp/pgsql_tmp45558.554
Seems a bit odd to have a 140T file on a 130G partition ...
I'm working on a FreeBSD 6.2 amd64 system. The headers show stat.st_size to
be of type off_t, which appears to be a 64-bit int. I figured that %ld
would be the correct format.Am I hitting something such as file sparseness? Is this entire endeavour
doomed from the start? Or am I just making some sort of dumb mistake?Any pointers are welcome.
--
Bill Moran
Collaborative Fusion Inc.
[ Attachment, skipping... ]
---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly
--
Bruce Momjian bruce@momjian.us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +