diff options
Diffstat (limited to 'src/backend/postmaster/bgwriter.c')
-rw-r--r-- | src/backend/postmaster/bgwriter.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/backend/postmaster/bgwriter.c b/src/backend/postmaster/bgwriter.c index 10586b8fad2..5dce3fa6989 100644 --- a/src/backend/postmaster/bgwriter.c +++ b/src/backend/postmaster/bgwriter.c @@ -37,7 +37,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/postmaster/bgwriter.c,v 1.48 2008/01/01 19:45:51 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/postmaster/bgwriter.c,v 1.49 2008/02/17 02:09:27 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -163,12 +163,12 @@ static bool am_bg_writer = false; static bool ckpt_active = false; /* these values are valid when ckpt_active is true: */ -static time_t ckpt_start_time; +static pg_time_t ckpt_start_time; static XLogRecPtr ckpt_start_recptr; static double ckpt_cached_elapsed; -static time_t last_checkpoint_time; -static time_t last_xlog_switch_time; +static pg_time_t last_checkpoint_time; +static pg_time_t last_xlog_switch_time; /* Prototypes for private functions */ @@ -250,7 +250,7 @@ BackgroundWriterMain(void) /* * Initialize so that first time-driven event happens at the correct time. */ - last_checkpoint_time = last_xlog_switch_time = time(NULL); + last_checkpoint_time = last_xlog_switch_time = (pg_time_t) time(NULL); /* * Create a resource owner to keep track of our resources (currently only @@ -361,7 +361,7 @@ BackgroundWriterMain(void) { bool do_checkpoint = false; int flags = 0; - time_t now; + pg_time_t now; int elapsed_secs; /* @@ -407,7 +407,7 @@ BackgroundWriterMain(void) * occurs without an external request, but we set the CAUSE_TIME flag * bit even if there is also an external request. */ - now = time(NULL); + now = (pg_time_t) time(NULL); elapsed_secs = now - last_checkpoint_time; if (elapsed_secs >= CheckPointTimeout) { @@ -504,13 +504,13 @@ BackgroundWriterMain(void) static void CheckArchiveTimeout(void) { - time_t now; - time_t last_time; + pg_time_t now; + pg_time_t last_time; if (XLogArchiveTimeout <= 0) return; - now = time(NULL); + now = (pg_time_t) time(NULL); /* First we do a quick check using possibly-stale local state. */ if ((int) (now - last_xlog_switch_time) < XLogArchiveTimeout) @@ -730,7 +730,7 @@ IsCheckpointOnSchedule(double progress) * Check progress against time elapsed and checkpoint_timeout. */ gettimeofday(&now, NULL); - elapsed_time = ((double) (now.tv_sec - ckpt_start_time) + + elapsed_time = ((double) ((pg_time_t) now.tv_sec - ckpt_start_time) + now.tv_usec / 1000000.0) / CheckPointTimeout; if (progress < elapsed_time) |