Имеется следующая ошибка:
сообщение: "
ORA-01578: разрушен блок данных ORACLE (файл # 6, блок # 26033)
ORA-01110: файл данных 6: 'E:\ORACLE\ORADATA\PRIVOZVS\INDX+1.DBF'
ORA-26040: Блок данных был загружен с использованием режима NOLOGGING
"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 1578
источник: Microsoft OLE DB Provider for Oracle
----- Причина исключения, уровень вложения 1 -----
сообщение: "SELECT --+ FIRST_ROWS
DH.ID as ID, DH.CreatedAt, CL.Name as ClientName, DH.LocationTo, DH.OpCode as Operation, DH.UserOp, DH.TotalSum, To_Char(DH.Debt)||' '||0 as Payment, DH.BaseDocTypeAndID, DH.DocState, (select (select nvl(Sum(SPECV.TotalPrice), 0) from Supermag.SVSpecWI SPECV where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID) - (select nvl(Sum(SVAT.TaxSum), 0) from Supermag.SVSpecVatWI SVAT where SVAT.DocType = DH.DocType and SVAT.DocID = DH.ID and SVAT.TaxRate > 0) from Dual) as TotalSumNoVat, (select nvl(Sum(SVAT10.TaxSum), 0) from Supermag.SVSpecVatWI SVAT10 where SVAT10.DocType = DH.DocType and SVAT10.DocID = DH.ID and SVAT10.TaxRate = 10) as TotalSumVat10, (select nvl(Sum(SVAT20.TaxSum), 0) from Supermag.SVSpecVatWI SVAT20 where SVAT20.DocType = DH.DocType and SVAT20.DocID = DH.ID and SVAT20.TaxRate = 20) as TotalSumVat20, (select 'занят' from Supermag.SSLocks P where P.ID = DH.ID and P.ObjType = DH.DocType) as Occupy , DH.SupplierDoc, DH.SupplierInvoice, DH.PayCash, DH.GoodsOwner, (Select max(decode(ParamName,'System.Correction',1,0)) as Correction from Supermag.SMDocProps L where L.DocType=DH.DocType and L.DocID=DH.ID and L.ParamName = 'System.Correction') as Correction, DH.OurselfClientName, DH.ChildDocTypeAndID, decode(DH.isRoubles,1,0,DH.CurrencyType) as isRoubles, DH.TotalSumCur as TotalSumCur, (select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = DH.CurrencyType) as CurrencyType, case when DH.CurrencyType > 0 then (to_char(DH.CurrencyRate) || ' ' ||(select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = 0) ||' за ' || to_char(power(10, DH.CurrencyMultOrder)) || ' ' ||(select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = DH.CurrencyType)) else NULL end as CurrencyRate, (select FileName||' '||to_char(Amount) from Supermag.SVInsertedDocsWI DI where DI.DocType = DH.DocType and DI.ID = DH.ID and rownum = 1 ) as InsertedDocs, DH.SupplDocSum, DH.FinBaseDocTypeAndID, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=10) as TotalSumNoVat10, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=20) as TotalSumNoVat20, DH.GrossWeight, (select nvl(Sum(SVAT18.TaxSum), 0) from Supermag.SVSpecVatWI SVAT18 where SVAT18.DocType = DH.DocType and SVAT18.DocID = DH.ID and SVAT18.TaxRate = 18) as TotalSumVat18, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=18) as TotalSumNoVat18, DH.SupplInvoiceCreate, DH.FinDate, DH.TotalSumVat, DH.TotalSumVat+DH.TotalSumSpec as TotalSumWithVat,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Артикул') as Label__0,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Вниманию аналитика!') as Label__1,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Вниманию оператора:') as Label__2,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Комментарий') as Label__3,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Sys.RefuseWI') as Label__4,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Проверка') as Label__5 FROM SuperMag.SVDocumentsWI DH , SuperMag.SMClientInfo CL WHERE DH.DocType = 'WI' AND DH.CreatedAt = TO_DATE('20130622','YYYYMMDD') AND (CL.ID(+)= DH.ClientIndex) "
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmLibaryBase trace
Выполнил запрос:
Цитата: select * from v$database_block_corruption;
Результат:
Цитата: 15759 rows selected.
Выполнил запрос:
Цитата: SELECT SEGMENT_TYPE,OWNER||'.'||SEGMENT_NAME FROM DBA_EXTENTS where 6=file_id and 26033 BETWEEN BLOCK_ID AND BLOCK_ID+BLOCKS-1;
Результат :
Цитата: INDEX
SUPERMAG.SMCWAYBILLSIN_PK
Выполнил
Цитата: alter index SUPERMAG.SMCWAYBILLSIN_PK unusable;
alter index SUPERMAG.SMCWAYBILLSIN_PK rebuild;
Появилась новая ошибка, связанная с другим поврежденным блоком! Как быть дальше?
Выполнил скрипт на проверку поврежденных сегментов:
Цитата: SELECT distinct d.SEGMENT_TYPE||':'||d.OWNER||'.'||d.SEGMENT_NAME
FROM DBA_EXTENTS d, v$database_block_corruption b
where b.file#=d.file_id and b.block# between d.block_id and d.block_id+d.blocks-1
Результат:
Цитата: D.SEGMENT_TYPE||':'||D.OWNER||'.'||D.SEGMENT_NAME
--------------------------------------------------------------------------------
INDEX:SUPERMAG.SMCCALCERGRAPHS_PK
INDEX:SUPERMAG.SACANALYTICSGROUP_PK
INDEX:SUPERMAG.SACANALYTICSFIELDS_PK
INDEX:SUPERMAG.SPCORETHEADERLOC_PK
INDEX:SUPERMAG.SACPAYORDERSNO_PK
INDEX:SUPERMAG.SMCROLLS_ORDERUNIQUE
INDEX:SUPERMAG.SMCPROCESSHEADERINVT_GUID
INDEX:SUPERMAG.SMCROUTEDESCRIPTION_PK
INDEX:SUPERMAG.SMCROUTEDETAIL_PK
INDEX:SUPERMAG.SMCCARDMATRIX_PK
INDEX:SUPERMAG.SMPLANOGRAMMAZONE_CLASS
D.SEGMENT_TYPE||':'||D.OWNER||'.'||D.SEGMENT_NAME
--------------------------------------------------------------------------------
INDEX:SUPERMAG.SMBONUSACT_CLIENT
INDEX:SUPERMAG.SMCSPECBA_BASEDOC
INDEX:SUPERMAG.FSCLASTOR_PK
INDEX:SUPERMAG.SMPROCESSLOGORCV_PK
INDEX:SUPERMAG.SPCALCOHEADER_U
INDEX:SUPERMAG.SACCARDMATRIXCLASS_PK
INDEX:SUPERMAG.SMCSPECPRODUCERS_PK
INDEX SUBPARTITION:SUPERMAG.FFMAPREP_LOCFROM
1031 rows selected.
Подскажите план действии в данной ситуации!