Yesterday afternoon, logical standby suddenly failed to apply. The database reported the following error:
Warning: Apply error Received: ORA-26714: user error encountered while applying. clearing.
* ** 2010-03-16 20:04:48. 484
Knahcapplymain: encountered error = 12801
* ** 2010-03-16 20:04:48. 515
Ksedmp: internal or fatal error
ORA-12801: Error signaled in parallel query server P004
ORA-01403: No data found
Check the database and find that the following SQL statement cannot be applied:
Update mes. board_barcode
Set
Current_sequence = 23
Where
Barcode_no = 'a3p0046010 'and
Current_sequence = 22 and
Rowid = 'aaaaabpaabniiaa0'
This is a standby SQL statement. The original SQL statement of the master database should be:
Update mes. board_barcode
Set
Current_sequence = current_sequence + 1
Where
Barcode_no = 'a3p0046010'
No answer was found for Google/Baidu/Metalink. To restore the application as soon as possible, back up the broken standby for future research and try again for standby.
If anyone has experience in this area, please do not hesitate to provide a solution!
The database version is 10.2.0.3. Windows.
Supplement:
This problem has been solved. It turns out that my colleague skipped an SQL statement and did not execute it, resulting in data inconsistency. Several tables are associated with primary foreign keys.