Re: Flashback log file sync

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: Sun, 13 May 2012 07:49:47 +0100
Message-ID: <q9-dnXHo2dcWxDLSnZ2dnUVZ7rmdnZ2d_at_bt.com>


"Mladen Gogala" <gogala.mladen_at_gmail.com> wrote in message news:pan.2012.05.12.19.46.20_at_gmail.com...
| On Sat, 12 May 2012 19:49:36 +0100, Jonathan Lewis wrote:
|
|
| The plot thickens. I re-created the LOB as cache and flashback waits went
| away:
|
| EVENT TIME_WAITED AVERAGE_WAIT
| ------------------------------ ----------- ------------
| Disk file operations I/O 0 .02
| log buffer space 0 0
| log file sync 1 .77
| SQL*Net message to client 1 0
| log file switch completion 23 5.77
| SQL*Net message from client 523 1.02
| SQL*Net more data from client 1323 .01
| db file sequential read 33915 .14
|

I'm not entirely surprised. The algorithm for when a block should be written to the flashback log relates to when it was last changed, when it last went into the flashback, and when it was last written. If your LOBs are direct path reads and writes all the time it's possible that the default action is to write the block into the flashback log because the information that is needed to minimise flashback logging doesn't get created on direct path actions.

When you can get LOBs over-written, though (i.e. LOB space re-used rather than constantly "newing" previously unused block), I think you may start to see flashback log writes re-appearing

Sorry about the empty previous post - finger trouble.

-- 
Regards

Jonathan Lewis
http://jonathanlewis.wordpress.com
Oracle Core (Apress 2011)
http://www.apress.com/9781430239543
Received on Sun May 13 2012 - 01:49:47 CDT

Original text of this message