[Из песочницы] Как избавиться от ORA-01410, вычленив неповрежденные данные
Одно время серьезно набил руку вот на какой задаче — по ряду таблиц в результате компрессии и ораклового бага побились несколько строк. В результате чего пользователи при фулскане по таким таблиц получали ORA-01410.Рассмотрим самый тяжелый случай — когда нет ни бэкапов, ни индексов (в этом случае проиндексированные колонки можно получить при сканировании по индексу). В данном случае единственный вариант — найти проблемный ROWID и «обогнуть» его с двух сторон, вычленив неповрежденные данные.
Читать дальше →