Rman restore performance for a large number of files takes is very poor (Doc ID 947796.1)

Last updated on OCTOBER 27, 2016

Applies to:

Oracle Server - Enterprise Edition - Version 11.1.0.7 and later
Information in this document applies to any platform.
This problem can occur on any platform.

Symptoms

RMAn restore is VERY slow - taking more than 10 hours before the physical restore even starts. A large number of files (1210) are being restored.  RMAN debug trace shows that for each file we are running the following queries:

DBGMISC: ENTERED krmkgdn [10:03:27.796]
DBGRCV: ENTERED krmklknn
DBGRCV: Looking for file with fno: 1, Translate: 1 (krmklknn)
DBGRCV: No newname found for datafile 1 (krmklknn)
DBGRCV: EXITED krmklknn with address 0
DBGMISC: EXITED krmkgdn with status +ASM_SYSTEM/event2db/01ko8j2p [10:03:27.798] elapsed time [00:00:00:00.001]
DBGRESTORE: ENTERED krmkvdc

DBGSQL: TARGET> select name into :dfname from v$datafile where file# =:dfnumber [10:03:59.979] <=== 32 secs!!!
DBGSQL: sqlcode = 0 [10:03:59.979]
DBGSQL: D :dfname = +ASM_SYSTEM/event2db/01ko8j2p
DBGSQL: B :dfnumber = 1

DBGSQL: TARGET> select decode(controlfile_converted, 'YES', 1 , 0)
from v$database [10:03:59.997]
DBGSQL: sqlcode = 0 [10:03:59.998]
DBGSQL: D :converted_cf = 0
DBGMISC: ENTERED krmkrfh [10:03:59.999]
DBGRCV: ENTERED krmklknn
DBGRCV: Looking for file with fno: 1, Translate: 1 (krmklknn)
DBGRCV: No newname found for datafile 1 (krmklknn)
DBGRCV: EXITED krmklknn with address 0

DBGSQL: TARGET> select fhscn, to_date(fhtim,'MM/DD/RR HH24:MI:SS',
'NLS_CALENDAR=Gregorian'), fhcrs, fhrls, to_date(fhrlc,'MM/DD/RR HH24:MI:SS',
'NLS_CALENDAR=Gregorian'), fhafs, fhrfs, fhrft, hxerr, fhfsz, fhsta, fhdbi,
fhfdbi, fhplus, fhtyp into :ckpscn, :ckptime, :crescn, :rlgscn, :rlgtime, :
afzscn, :rfzscn, :rfztime, :hxerr, :blocks, :fhsta, :fhdbi, :fhfdbi, :fhplus, :
fhtyp from x$kcvfhall where hxfil = :fno [10:04:00.018]
DBGSQL: sqlcode = 0 [10:04:00.019]
DBGSQL: D :ckpscn = 412852985
DBGSQL: D :ckptime = "2009-09-09_09:35:35"
DBGSQL: D :crescn = 7
DBGSQL: D :rlgscn = 208630
DBGSQL: D :rlgtime = "2009-09-02_18:18:32"
DBGSQL: D :afzscn = 0
DBGSQL: D :rfzscn = 0
DBGSQL: D :rfztime = NULL
DBGSQL: D :hxerr = 0
DBGSQL: D :blocks = 26624
DBGSQL: D :fhsta = 8192
DBGSQL: D :fhdbi = 146383169
DBGSQL: D :fhfdbi = 0
DBGSQL: D :fhplus = 0
DBGSQL: D :fhtyp = 3
DBGSQL: B :fno = 1
DBGMISC: krmkrfh: [10:04:00.025]
DBGMISC: INVALID
DBGMISC: EXITED krmkrfh [10:04:00.025] elapsed time [00:00:00:00.026]
DBGMISC: EXITED krmkvdc with status 1 [10:04:00.026] <===  time spent in krmkvdc : 33 secs


This is the problem SQL:

DBGSQL: TARGET> select name into :dfname from v$datafile where file# = :dfnumber
[10:03:59.979]



Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms