sys.dm_db_log_stats :log_truncate_holdup_reason : OLDEST_PAGE

sakuraime 2,351 Reputation points
2020-08-24T11:01:20.317+00:00

for full mode database, I did some transaction , and then backup the transaction log . and then I will see sys.dm_db_log_stats :log_truncate_holdup_reason : OLDEST_PAGE

there is some definition on the following but I am still a bit confused of this reason .
https://www.mssqltips.com/sqlservertip/4666/long-running-transactions-cause-sql-server-transaction-log-to-grow/

19858-oldest-page.jpg

SQL Server | Other
{count} votes

2 answers

Sort by: Most helpful
  1. AmeliaGu-MSFT 14,011 Reputation points Microsoft External Staff
    2020-08-25T02:21:13.657+00:00

    Hi michaelchau,

    If a database is configured to use indirect checkpoints, the oldest page on the database might be older than the checkpoint log sequence number (LSN). In this case, the oldest page can delay log truncation.
    You can create CHECKPOINT manually, then backup transaction log again.
    Please refer to Factors that can delay log truncation and this similar thread which might help.

    Best Regards,
    Amelia

    0 comments No comments

  2. sakuraime 2,351 Reputation points
    2020-08-28T09:10:07.49+00:00

    21212-target-recovery-time.jpg

    so in my example, the database is having 60s target_recovery_time, but wait for about more than many minutes. it's still showing ÖLDEST_PAGE

    so where is the oldest_page ?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.